@firestone-hs/simulate-bgs-battle 1.1.697 → 1.1.698
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 -0
- package/dist/bgs-battle-options.js.map +1 -0
- package/dist/bgs-board-info.js.map +1 -0
- package/dist/bgs-player-entity.js.map +1 -0
- package/dist/board-entity.js.map +1 -0
- package/dist/board-secret.js.map +1 -0
- package/dist/cards/card.interface.js.map +1 -0
- package/dist/cards/cards-data.js.map +1 -0
- package/dist/cards/impl/_card-mappings.js.map +1 -0
- package/dist/cards/impl/anomaly/anomalous-twin.js.map +1 -0
- package/dist/cards/impl/anomaly/blessed-or-blighted.js.map +1 -0
- package/dist/cards/impl/bg-spell/arcane-absorption-bg352.js.map +1 -0
- package/dist/cards/impl/bg-spell/azerite-empowerment.js.map +1 -0
- package/dist/cards/impl/bg-spell/back-to-back.js.map +1 -0
- package/dist/cards/impl/bg-spell/blood-gem-barrage.js.map +1 -0
- package/dist/cards/impl/bg-spell/blood-gem-quilboar-divine-shield.js.map +1 -0
- package/dist/cards/impl/bg-spell/blood-gem-quilboar-reborn.js.map +1 -0
- package/dist/cards/impl/bg-spell/blood-gem-quilboar-taunt.js.map +1 -0
- package/dist/cards/impl/bg-spell/boon-of-beetles.js.map +1 -0
- package/dist/cards/impl/bg-spell/brood-of-nozdormu.js.map +1 -0
- package/dist/cards/impl/bg-spell/butchering.js.map +1 -0
- package/dist/cards/impl/bg-spell/chefs-choice.js.map +1 -0
- package/dist/cards/impl/bg-spell/conflagration-bg352.js.map +1 -0
- package/dist/cards/impl/bg-spell/deepwater-clan.js.map +1 -0
- package/dist/cards/impl/bg-spell/eyes-of-the-earth-mother.js.map +1 -0
- package/dist/cards/impl/bg-spell/friendly-bounty.js.map +1 -0
- package/dist/cards/impl/bg-spell/hand-of-deios.js.map +1 -0
- package/dist/cards/impl/bg-spell/healthy-bounty.js.map +1 -0
- package/dist/cards/impl/bg-spell/hostile-bounty.js.map +1 -0
- package/dist/cards/impl/bg-spell/jailer-sticker-306.js.map +1 -0
- package/dist/cards/impl/bg-spell/jailer-sticker-733.js.map +1 -0
- package/dist/cards/impl/bg-spell/menagerie-tableware.js.map +1 -0
- package/dist/cards/impl/bg-spell/might-of-stormwind.js.map +1 -0
- package/dist/cards/impl/bg-spell/murkys-fish.js.map +1 -0
- package/dist/cards/impl/bg-spell/natural-blessing.js.map +1 -0
- package/dist/cards/impl/bg-spell/ophidian-staff.js.map +1 -0
- package/dist/cards/impl/bg-spell/queens-command.js.map +1 -0
- package/dist/cards/impl/bg-spell/selfish-bounty.js.map +1 -0
- package/dist/cards/impl/bg-spell/sharing-is-caring.js.map +1 -0
- package/dist/cards/impl/bg-spell/shifting-tide.js.map +1 -0
- package/dist/cards/impl/bg-spell/shiny-ring.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-bananas.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-chefs-choice.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-cloning-device.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-conch.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-corpse.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-evolution.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-goldenizer.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-master-thief.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-on-the-house.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-rat-in-the-cage.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-ritual.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-special.js.map +1 -0
- package/dist/cards/impl/bg-spell/timewarped-thief.js.map +1 -0
- package/dist/cards/impl/bg-spell/tomb-turning.js.map +1 -0
- package/dist/cards/impl/bg-spell/toxic-tumbleweed.js.map +1 -0
- package/dist/cards/impl/bg-spell/upper-hand.js.map +1 -0
- package/dist/cards/impl/bg-spell/wave-of-gold.js.map +1 -0
- package/dist/cards/impl/hero-power/aim-high.js.map +1 -0
- package/dist/cards/impl/hero-power/aim-left.js.map +1 -0
- package/dist/cards/impl/hero-power/aim-low.js.map +1 -0
- package/dist/cards/impl/hero-power/aim-right.js.map +1 -0
- package/dist/cards/impl/hero-power/all-will-burn.js.map +1 -0
- package/dist/cards/impl/hero-power/earth-invocation.js.map +1 -0
- package/dist/cards/impl/hero-power/embrace-your-rage.js.map +1 -0
- package/dist/cards/impl/hero-power/fire-invocation.js.map +1 -0
- package/dist/cards/impl/hero-power/fragrant-phylactery-enchantment.js.map +1 -0
- package/dist/cards/impl/hero-power/fragrant-phylactery.js.map +1 -0
- package/dist/cards/impl/hero-power/frostwolf-fervor.js.map +1 -0
- package/dist/cards/impl/hero-power/glorious-gloop.js.map +1 -0
- package/dist/cards/impl/hero-power/lightning-invocation.js.map +1 -0
- package/dist/cards/impl/hero-power/lock-and-load.js.map +1 -0
- package/dist/cards/impl/hero-power/rapid-reanimation.js.map +1 -0
- package/dist/cards/impl/hero-power/reborn-rites.js.map +1 -0
- package/dist/cards/impl/hero-power/stormpike.js.map +1 -0
- package/dist/cards/impl/hero-power/swatting-insects.js.map +1 -0
- package/dist/cards/impl/hero-power/tentacular.js.map +1 -0
- package/dist/cards/impl/hero-power/water-invocation.js.map +1 -0
- package/dist/cards/impl/hero-power/wax-warband.js.map +1 -0
- package/dist/cards/impl/minion/abyssal-bruiser.js.map +1 -0
- package/dist/cards/impl/minion/admiral-eliza-goreblade.js.map +1 -0
- package/dist/cards/impl/minion/alert-alarmist.js.map +1 -0
- package/dist/cards/impl/minion/all-seeing-elder.js.map +1 -0
- package/dist/cards/impl/minion/alleycat.js.map +1 -0
- package/dist/cards/impl/minion/amber-guardian.js.map +1 -0
- package/dist/cards/impl/minion/amplifying-lightspawn.js.map +1 -0
- package/dist/cards/impl/minion/ancestral-automaton.js.map +1 -0
- package/dist/cards/impl/minion/anubarak-nerubian-king.js.map +1 -0
- package/dist/cards/impl/minion/apexis-guardian.js.map +1 -0
- package/dist/cards/impl/minion/apprentice-of-sefin.js.map +1 -0
- package/dist/cards/impl/minion/arcane-cannoneer.js.map +1 -0
- package/dist/cards/impl/minion/archaedas.js.map +1 -0
- package/dist/cards/impl/minion/archimonde.js.map +1 -0
- package/dist/cards/impl/minion/arid-atrocity.js.map +1 -0
- package/dist/cards/impl/minion/ashen-corruptor.js.map +1 -0
- package/dist/cards/impl/minion/assistant-guard.js.map +1 -0
- package/dist/cards/impl/minion/audacious-anchor.js.map +1 -0
- package/dist/cards/impl/minion/auto-accelerator.js.map +1 -0
- package/dist/cards/impl/minion/auto-assembler-enchantment.js.map +1 -0
- package/dist/cards/impl/minion/auto-assembler.js.map +1 -0
- package/dist/cards/impl/minion/avalanche-caller.js.map +1 -0
- package/dist/cards/impl/minion/azsharan-cutlassier.js.map +1 -0
- package/dist/cards/impl/minion/baby-yshaarj.js.map +1 -0
- package/dist/cards/impl/minion/balinda-stonehearth.js.map +1 -0
- package/dist/cards/impl/minion/banana-slamma.js.map +1 -0
- package/dist/cards/impl/minion/baneling.js.map +1 -0
- package/dist/cards/impl/minion/bannerboar.js.map +1 -0
- package/dist/cards/impl/minion/bassgill.js.map +1 -0
- package/dist/cards/impl/minion/battlecruiser.js.map +1 -0
- package/dist/cards/impl/minion/beetle.js.map +1 -0
- package/dist/cards/impl/minion/bellowing-tyrant.js.map +1 -0
- package/dist/cards/impl/minion/bg352-chromadrake-pool.js.map +1 -0
- package/dist/cards/impl/minion/bigwig-bandit.js.map +1 -0
- package/dist/cards/impl/minion/bile-spitter.js.map +1 -0
- package/dist/cards/impl/minion/bird-buddy.js.map +1 -0
- package/dist/cards/impl/minion/black-chromadrake.js.map +1 -0
- package/dist/cards/impl/minion/blazing-skyfin.js.map +1 -0
- package/dist/cards/impl/minion/bloodsnout-warlord.js.map +1 -0
- package/dist/cards/impl/minion/blue-chromadrake.js.map +1 -0
- package/dist/cards/impl/minion/blue-volumizer.js.map +1 -0
- package/dist/cards/impl/minion/blue-whelp.js.map +1 -0
- package/dist/cards/impl/minion/bluesy-siren.js.map +1 -0
- package/dist/cards/impl/minion/boar-gamer.js.map +1 -0
- package/dist/cards/impl/minion/bongo-bopper.js.map +1 -0
- package/dist/cards/impl/minion/bonker.js.map +1 -0
- package/dist/cards/impl/minion/brazen-buccaneer.js.map +1 -0
- package/dist/cards/impl/minion/briarback-bookie.js.map +1 -0
- package/dist/cards/impl/minion/briarback-drummer.js.map +1 -0
- package/dist/cards/impl/minion/briny-bootlegger.js.map +1 -0
- package/dist/cards/impl/minion/bristlebach.js.map +1 -0
- package/dist/cards/impl/minion/bristleback-bully.js.map +1 -0
- package/dist/cards/impl/minion/bristlemane-scrapsmith.js.map +1 -0
- package/dist/cards/impl/minion/bronze-chromadrake.js.map +1 -0
- package/dist/cards/impl/minion/bronze-steward.js.map +1 -0
- package/dist/cards/impl/minion/bubble-gunner.js.map +1 -0
- package/dist/cards/impl/minion/budding-greenthumb.js.map +1 -0
- package/dist/cards/impl/minion/burgeoning-whelp.js.map +1 -0
- package/dist/cards/impl/minion/buzzing-vermin.js.map +1 -0
- package/dist/cards/impl/minion/cadaver-caretaker.js.map +1 -0
- package/dist/cards/impl/minion/campfire-shadow.js.map +1 -0
- package/dist/cards/impl/minion/canopy-swinger.js.map +1 -0
- package/dist/cards/impl/minion/captain-bonerender.js.map +1 -0
- package/dist/cards/impl/minion/carapace-raiser.js.map +1 -0
- package/dist/cards/impl/minion/carbonic-copy.js.map +1 -0
- package/dist/cards/impl/minion/carrier.js.map +1 -0
- package/dist/cards/impl/minion/cataclysmic-harbinger.js.map +1 -0
- package/dist/cards/impl/minion/champion-of-the-primus.js.map +1 -0
- package/dist/cards/impl/minion/charging-czarina.js.map +1 -0
- package/dist/cards/impl/minion/charlga.js.map +1 -0
- package/dist/cards/impl/minion/charmwing.js.map +1 -0
- package/dist/cards/impl/minion/choral-mrrrglr.js.map +1 -0
- package/dist/cards/impl/minion/clunker-junker.js.map +1 -0
- package/dist/cards/impl/minion/coilskar-sapper.js.map +1 -0
- package/dist/cards/impl/minion/coldlight-diver.js.map +1 -0
- package/dist/cards/impl/minion/colossus.js.map +1 -0
- package/dist/cards/impl/minion/consummate-conqueror.js.map +1 -0
- package/dist/cards/impl/minion/conveyor-construct.js.map +1 -0
- package/dist/cards/impl/minion/corrupted-bristler.js.map +1 -0
- package/dist/cards/impl/minion/corrupted-myrmidon.js.map +1 -0
- package/dist/cards/impl/minion/costume-enthusiast.js.map +1 -0
- package/dist/cards/impl/minion/cousin-errgl.js.map +1 -0
- package/dist/cards/impl/minion/cruise-controller.js.map +1 -0
- package/dist/cards/impl/minion/crystal-infuser-enchantment.js.map +1 -0
- package/dist/cards/impl/minion/cupcake-peddler.js.map +1 -0
- package/dist/cards/impl/minion/dastardly-drust.js.map +1 -0
- package/dist/cards/impl/minion/deadstomper.js.map +1 -0
- package/dist/cards/impl/minion/deathly-striker.js.map +1 -0
- package/dist/cards/impl/minion/deepwater-chieftain.js.map +1 -0
- package/dist/cards/impl/minion/defiant-shipwright.js.map +1 -0
- package/dist/cards/impl/minion/deflecto-bot.js.map +1 -0
- package/dist/cards/impl/minion/demon-fodder.js.map +1 -0
- package/dist/cards/impl/minion/determined-defender.js.map +1 -0
- package/dist/cards/impl/minion/devout-hellcaller.js.map +1 -0
- package/dist/cards/impl/minion/diremuck-forager.js.map +1 -0
- package/dist/cards/impl/minion/disguised-graverobber.js.map +1 -0
- package/dist/cards/impl/minion/divine-sparkbot.js.map +1 -0
- package/dist/cards/impl/minion/draconic-warden.js.map +1 -0
- package/dist/cards/impl/minion/drakkari-embalmer.js.map +1 -0
- package/dist/cards/impl/minion/dramaloc.js.map +1 -0
- package/dist/cards/impl/minion/dreaming-thornweaver.js.map +1 -0
- package/dist/cards/impl/minion/drustfallen-butcher.js.map +1 -0
- package/dist/cards/impl/minion/dustbone-devastator.js.map +1 -0
- package/dist/cards/impl/minion/earthsong-shaman.js.map +1 -0
- package/dist/cards/impl/minion/echoing-roar.js.map +1 -0
- package/dist/cards/impl/minion/efficient-engineer.js.map +1 -0
- package/dist/cards/impl/minion/egg-of-the-endtimes.js.map +1 -0
- package/dist/cards/impl/minion/elder-taggawag.js.map +1 -0
- package/dist/cards/impl/minion/electric-synthesizer.js.map +1 -0
- package/dist/cards/impl/minion/elite-navigator.js.map +1 -0
- package/dist/cards/impl/minion/enchanted-sentinel.js.map +1 -0
- package/dist/cards/impl/minion/eternal-tycoon.js.map +1 -0
- package/dist/cards/impl/minion/exceptionnal-caretaker.js.map +1 -0
- package/dist/cards/impl/minion/expert-aviator.js.map +1 -0
- package/dist/cards/impl/minion/expert-technician.js.map +1 -0
- package/dist/cards/impl/minion/fairy-gillmother.js.map +1 -0
- package/dist/cards/impl/minion/falling-sky-golem.js.map +1 -0
- package/dist/cards/impl/minion/fauna-whisperer.js.map +1 -0
- package/dist/cards/impl/minion/felfire-conjurer.js.map +1 -0
- package/dist/cards/impl/minion/felhorn.js.map +1 -0
- package/dist/cards/impl/minion/festergut.js.map +1 -0
- package/dist/cards/impl/minion/fire-forged-evoker.js.map +1 -0
- package/dist/cards/impl/minion/firelands-fugitive.js.map +1 -0
- package/dist/cards/impl/minion/firescale-hoarder.js.map +1 -0
- package/dist/cards/impl/minion/fireworks-fanatic.js.map +1 -0
- package/dist/cards/impl/minion/flighty-scout.js.map +1 -0
- package/dist/cards/impl/minion/floating-watcher.js.map +1 -0
- package/dist/cards/impl/minion/flotsam-flinger.js.map +1 -0
- package/dist/cards/impl/minion/forest-rover.js.map +1 -0
- package/dist/cards/impl/minion/forsaken-weaver.js.map +1 -0
- package/dist/cards/impl/minion/fountain-chiller.js.map +1 -0
- package/dist/cards/impl/minion/friendly-bouncer.js.map +1 -0
- package/dist/cards/impl/minion/friendly-geist.js.map +1 -0
- package/dist/cards/impl/minion/frostwolf-lieutenant.js.map +1 -0
- package/dist/cards/impl/minion/futurefin.js.map +1 -0
- package/dist/cards/impl/minion/geared-guard.js.map +1 -0
- package/dist/cards/impl/minion/gem-rat.js.map +1 -0
- package/dist/cards/impl/minion/gem-smuggler.js.map +1 -0
- package/dist/cards/impl/minion/gemsplitter.js.map +1 -0
- package/dist/cards/impl/minion/general-drakkisath.js.map +1 -0
- package/dist/cards/impl/minion/gentle-djinni.js.map +1 -0
- package/dist/cards/impl/minion/gentle-stag.js.map +1 -0
- package/dist/cards/impl/minion/ghoul-of-the-feast.js.map +1 -0
- package/dist/cards/impl/minion/gilded-gargoyle.js.map +1 -0
- package/dist/cards/impl/minion/gleaming-trader.js.map +1 -0
- package/dist/cards/impl/minion/glowgullet-warlord.js.map +1 -0
- package/dist/cards/impl/minion/glowing-cinder.js.map +1 -0
- package/dist/cards/impl/minion/gluttonous-trogg.js.map +1 -0
- package/dist/cards/impl/minion/goldgrubber.js.map +1 -0
- package/dist/cards/impl/minion/goldrinn-the-great-wolf.js.map +1 -0
- package/dist/cards/impl/minion/gormling-gourmet.js.map +1 -0
- package/dist/cards/impl/minion/grease-bot.js.map +1 -0
- package/dist/cards/impl/minion/greedy-snaketongue.js.map +1 -0
- package/dist/cards/impl/minion/green-chromadrake.js.map +1 -0
- package/dist/cards/impl/minion/green-volumizer.js.map +1 -0
- package/dist/cards/impl/minion/greenskeeper.js.map +1 -0
- package/dist/cards/impl/minion/grimscale-elegist.js.map +1 -0
- package/dist/cards/impl/minion/gritty-headhunter.js.map +1 -0
- package/dist/cards/impl/minion/hackerfin.js.map +1 -0
- package/dist/cards/impl/minion/handless-forsaken.js.map +1 -0
- package/dist/cards/impl/minion/hardy-orca.js.map +1 -0
- package/dist/cards/impl/minion/harmless-bonehead.js.map +1 -0
- package/dist/cards/impl/minion/hawkstrider-herald.js.map +1 -0
- package/dist/cards/impl/minion/heroic-underdog.js.map +1 -0
- package/dist/cards/impl/minion/highkeeper-ra.js.map +1 -0
- package/dist/cards/impl/minion/hired-ritualist.js.map +1 -0
- package/dist/cards/impl/minion/hoarding-hatespawn.js.map +1 -0
- package/dist/cards/impl/minion/hog-watcher.js.map +1 -0
- package/dist/cards/impl/minion/holo-rover.js.map +1 -0
- package/dist/cards/impl/minion/hot-springer.js.map +1 -0
- package/dist/cards/impl/minion/humming-bird.js.map +1 -0
- package/dist/cards/impl/minion/humongozz.js.map +1 -0
- package/dist/cards/impl/minion/hungry-snapjaw.js.map +1 -0
- package/dist/cards/impl/minion/hunter-of-gatherers.js.map +1 -0
- package/dist/cards/impl/minion/hunting-tiger-shark.js.map +1 -0
- package/dist/cards/impl/minion/hydralisk.js.map +1 -0
- package/dist/cards/impl/minion/icesnarl-the-mighty.js.map +1 -0
- package/dist/cards/impl/minion/ignition-specialist.js.map +1 -0
- package/dist/cards/impl/minion/immortal.js.map +1 -0
- package/dist/cards/impl/minion/implant-subject.js.map +1 -0
- package/dist/cards/impl/minion/imposing-percussionist.js.map +1 -0
- package/dist/cards/impl/minion/impulsive-trickster.js.map +1 -0
- package/dist/cards/impl/minion/incubation-researcher.js.map +1 -0
- package/dist/cards/impl/minion/indomitable-mount.js.map +1 -0
- package/dist/cards/impl/minion/inspiring-underdog.js.map +1 -0
- package/dist/cards/impl/minion/interrogator-whitemane.js.map +1 -0
- package/dist/cards/impl/minion/irate-rooster.js.map +1 -0
- package/dist/cards/impl/minion/jelly-belly.js.map +1 -0
- package/dist/cards/impl/minion/junk-jouster.js.map +1 -0
- package/dist/cards/impl/minion/kalecgos-arcane-aspect.js.map +1 -0
- package/dist/cards/impl/minion/kangors-apprentice.js.map +1 -0
- package/dist/cards/impl/minion/karmic-chameleon.js.map +1 -0
- package/dist/cards/impl/minion/king-bagurgle.js.map +1 -0
- package/dist/cards/impl/minion/laboratory-assistant.js.map +1 -0
- package/dist/cards/impl/minion/leeroy-the-reckless.js.map +1 -0
- package/dist/cards/impl/minion/leyline-surfacer.js.map +1 -0
- package/dist/cards/impl/minion/lightfang-enforcer.js.map +1 -0
- package/dist/cards/impl/minion/lightfeather-screecher.js.map +1 -0
- package/dist/cards/impl/minion/living-azerite.js.map +1 -0
- package/dist/cards/impl/minion/lokholar-frostforger.js.map +1 -0
- package/dist/cards/impl/minion/lord-of-the-ruins.js.map +1 -0
- package/dist/cards/impl/minion/lost-city-looter.js.map +1 -0
- package/dist/cards/impl/minion/lovesick-balladist.js.map +1 -0
- package/dist/cards/impl/minion/low-flier.js.map +1 -0
- package/dist/cards/impl/minion/lurker.js.map +1 -0
- package/dist/cards/impl/minion/lurking-leviathan.js.map +1 -0
- package/dist/cards/impl/minion/maelstrom-emergent.js.map +1 -0
- package/dist/cards/impl/minion/magicfin-apprentice.js.map +1 -0
- package/dist/cards/impl/minion/malorne.js.map +1 -0
- package/dist/cards/impl/minion/mama-mrrglton.js.map +1 -0
- package/dist/cards/impl/minion/manasaber.js.map +1 -0
- package/dist/cards/impl/minion/mantid-queen.js.map +1 -0
- package/dist/cards/impl/minion/marquee-ticker.js.map +1 -0
- package/dist/cards/impl/minion/master-gadrin.js.map +1 -0
- package/dist/cards/impl/minion/maw-caster.js.map +1 -0
- package/dist/cards/impl/minion/mecha-jaraxxus.js.map +1 -0
- package/dist/cards/impl/minion/mechagnome-interpreter.js.map +1 -0
- package/dist/cards/impl/minion/mechanized-gift-horse.js.map +1 -0
- package/dist/cards/impl/minion/mechorse.js.map +1 -0
- package/dist/cards/impl/minion/menagerie-jug.js.map +1 -0
- package/dist/cards/impl/minion/metal-dispenser.js.map +1 -0
- package/dist/cards/impl/minion/metallic-hunter.js.map +1 -0
- package/dist/cards/impl/minion/misfit-dragonling.js.map +1 -0
- package/dist/cards/impl/minion/monstrosity.js.map +1 -0
- package/dist/cards/impl/minion/monstrous-macaw.js.map +1 -0
- package/dist/cards/impl/minion/moon-bacon-jazzer.js.map +1 -0
- package/dist/cards/impl/minion/moonsteel-juggernaut.js.map +1 -0
- package/dist/cards/impl/minion/mothership.js.map +1 -0
- package/dist/cards/impl/minion/mummifier.js.map +1 -0
- package/dist/cards/impl/minion/murcules.js.map +1 -0
- package/dist/cards/impl/minion/murkbrine-expeditioner.js.map +1 -0
- package/dist/cards/impl/minion/murky-spash-fisher.js.map +1 -0
- package/dist/cards/impl/minion/murky.js.map +1 -0
- package/dist/cards/impl/minion/mutalisk.js.map +1 -0
- package/dist/cards/impl/minion/mutated-lasher.js.map +1 -0
- package/dist/cards/impl/minion/mythrax.js.map +1 -0
- package/dist/cards/impl/minion/nalaa-the-redeemer.js.map +1 -0
- package/dist/cards/impl/minion/neon-agent.js.map +1 -0
- package/dist/cards/impl/minion/nerubian-deathswarmer.js.map +1 -0
- package/dist/cards/impl/minion/nest-swarmer.js.map +1 -0
- package/dist/cards/impl/minion/nether-drake.js.map +1 -0
- package/dist/cards/impl/minion/nightbane-ignited.js.map +1 -0
- package/dist/cards/impl/minion/nightmare-par-tea-guest.js.map +1 -0
- package/dist/cards/impl/minion/nimble-hatchling.js.map +1 -0
- package/dist/cards/impl/minion/niuzao.js.map +1 -0
- package/dist/cards/impl/minion/noisul-of-the-many-faces.js.map +1 -0
- package/dist/cards/impl/minion/obisidian-ravager.js.map +1 -0
- package/dist/cards/impl/minion/old-soul.js.map +1 -0
- package/dist/cards/impl/minion/oozeling-gladiator.js.map +1 -0
- package/dist/cards/impl/minion/operatic-belcher.js.map +1 -0
- package/dist/cards/impl/minion/oranomonos-the-wilted.js.map +1 -0
- package/dist/cards/impl/minion/outback-smolderer.js.map +1 -0
- package/dist/cards/impl/minion/paint-smudger.js.map +1 -0
- package/dist/cards/impl/minion/papa-mrrglton.js.map +1 -0
- package/dist/cards/impl/minion/parched-wanderer.js.map +1 -0
- package/dist/cards/impl/minion/pashmar-the-vengeful.js.map +1 -0
- package/dist/cards/impl/minion/peggy-sturdybone.js.map +1 -0
- package/dist/cards/impl/minion/photobomber.js.map +1 -0
- package/dist/cards/impl/minion/pilot-the-shredder.js.map +1 -0
- package/dist/cards/impl/minion/piloted-whirl-o-tron.js.map +1 -0
- package/dist/cards/impl/minion/plaguerunner.js.map +1 -0
- package/dist/cards/impl/minion/plankwalker.js.map +1 -0
- package/dist/cards/impl/minion/polarizing-beatboxer.js.map +1 -0
- package/dist/cards/impl/minion/poultron.js.map +1 -0
- package/dist/cards/impl/minion/primalfin-lookout.js.map +1 -0
- package/dist/cards/impl/minion/primeval-monstrosity.js.map +1 -0
- package/dist/cards/impl/minion/prized-promo-drake.js.map +1 -0
- package/dist/cards/impl/minion/prodigious-tusker.js.map +1 -0
- package/dist/cards/impl/minion/profound-thinker.js.map +1 -0
- package/dist/cards/impl/minion/proud-privateer.js.map +1 -0
- package/dist/cards/impl/minion/psychus.js.map +1 -0
- package/dist/cards/impl/minion/pufferquil.js.map +1 -0
- package/dist/cards/impl/minion/radio-star.js.map +1 -0
- package/dist/cards/impl/minion/rampager.js.map +1 -0
- package/dist/cards/impl/minion/rapscallion-recruiter.js.map +1 -0
- package/dist/cards/impl/minion/raptor-elder.js.map +1 -0
- package/dist/cards/impl/minion/razorfen-flapper.js.map +1 -0
- package/dist/cards/impl/minion/razorfen-geomancer.js.map +1 -0
- package/dist/cards/impl/minion/razorfen-vineweaver.js.map +1 -0
- package/dist/cards/impl/minion/razorgore-the-untamed.js.map +1 -0
- package/dist/cards/impl/minion/reckless-cliffdiver.js.map +1 -0
- package/dist/cards/impl/minion/red-chromadrake.js.map +1 -0
- package/dist/cards/impl/minion/red-volumizer.js.map +1 -0
- package/dist/cards/impl/minion/red-whelp.js.map +1 -0
- package/dist/cards/impl/minion/redtusk-thornraiser.js.map +1 -0
- package/dist/cards/impl/minion/relentless-deflector.js.map +1 -0
- package/dist/cards/impl/minion/rickety-repairbot.js.map +1 -0
- package/dist/cards/impl/minion/ride-or-die.js.map +1 -0
- package/dist/cards/impl/minion/ring-bearer.js.map +1 -0
- package/dist/cards/impl/minion/ripsnarl-captain.js.map +1 -0
- package/dist/cards/impl/minion/roach.js.map +1 -0
- package/dist/cards/impl/minion/roadboar.js.map +1 -0
- package/dist/cards/impl/minion/roaring-rallier.js.map +1 -0
- package/dist/cards/impl/minion/rodeo-performer.js.map +1 -0
- package/dist/cards/impl/minion/roving-sailor.js.map +1 -0
- package/dist/cards/impl/minion/ruins-renovator.js.map +1 -0
- package/dist/cards/impl/minion/runed-progenitor.js.map +1 -0
- package/dist/cards/impl/minion/ruthless-queensguard.js.map +1 -0
- package/dist/cards/impl/minion/rylak-metalhead.js.map +1 -0
- package/dist/cards/impl/minion/salty-hog.js.map +1 -0
- package/dist/cards/impl/minion/sanctum-rester.js.map +1 -0
- package/dist/cards/impl/minion/sand-swirler.js.map +1 -0
- package/dist/cards/impl/minion/sandy.js.map +1 -0
- package/dist/cards/impl/minion/sanguine-refiner.js.map +1 -0
- package/dist/cards/impl/minion/sanlayn-scribe.js.map +1 -0
- package/dist/cards/impl/minion/scallywag.js.map +1 -0
- package/dist/cards/impl/minion/scarlet-skull.js.map +1 -0
- package/dist/cards/impl/minion/scarlet-survivor.js.map +1 -0
- package/dist/cards/impl/minion/scourfin.js.map +1 -0
- package/dist/cards/impl/minion/scourge-harvester.js.map +1 -0
- package/dist/cards/impl/minion/scrap-scraper.js.map +1 -0
- package/dist/cards/impl/minion/seafloor-recruiter.js.map +1 -0
- package/dist/cards/impl/minion/selfless-hero.js.map +1 -0
- package/dist/cards/impl/minion/sewer-lord.js.map +1 -0
- package/dist/cards/impl/minion/sewer-rat.js.map +1 -0
- package/dist/cards/impl/minion/shadowdancer.js.map +1 -0
- package/dist/cards/impl/minion/shadowy-construct.js.map +1 -0
- package/dist/cards/impl/minion/sharp-eyed-sabretooth.js.map +1 -0
- package/dist/cards/impl/minion/sharptooth-snapper.js.map +1 -0
- package/dist/cards/impl/minion/shell-collector.js.map +1 -0
- package/dist/cards/impl/minion/ship-jumper.js.map +1 -0
- package/dist/cards/impl/minion/ship-master-eudora.js.map +1 -0
- package/dist/cards/impl/minion/shipwrecked-rascal.js.map +1 -0
- package/dist/cards/impl/minion/shore-marauder.js.map +1 -0
- package/dist/cards/impl/minion/showy-cyclist.js.map +1 -0
- package/dist/cards/impl/minion/silent-enforcer.js.map +1 -0
- package/dist/cards/impl/minion/silithid-burrower.js.map +1 -0
- package/dist/cards/impl/minion/silky-shimmermoth.js.map +1 -0
- package/dist/cards/impl/minion/silver-handed-recruit.js.map +1 -0
- package/dist/cards/impl/minion/sinodorei-straight-shot.js.map +1 -0
- package/dist/cards/impl/minion/sinrunner-blanchy.js.map +1 -0
- package/dist/cards/impl/minion/skeletal-strafer.js.map +1 -0
- package/dist/cards/impl/minion/skulking-bristlemane.js.map +1 -0
- package/dist/cards/impl/minion/sky-pirate-flagbearer-enchantment.js.map +1 -0
- package/dist/cards/impl/minion/sky-pirate-flagbearer.js.map +1 -0
- package/dist/cards/impl/minion/sleepy-supporter.js.map +1 -0
- package/dist/cards/impl/minion/slumber-sorcerer.js.map +1 -0
- package/dist/cards/impl/minion/sly-raptor.js.map +1 -0
- package/dist/cards/impl/minion/smolderwing.js.map +1 -0
- package/dist/cards/impl/minion/snack-vendor.js.map +1 -0
- package/dist/cards/impl/minion/soul-rewinder.js.map +1 -0
- package/dist/cards/impl/minion/soulsplitter.js.map +1 -0
- package/dist/cards/impl/minion/spacefarer.js.map +1 -0
- package/dist/cards/impl/minion/spellbound-soul.js.map +1 -0
- package/dist/cards/impl/minion/spirit-drake.js.map +1 -0
- package/dist/cards/impl/minion/spirit-of-air.js.map +1 -0
- package/dist/cards/impl/minion/spirited-whimsydrake.js.map +1 -0
- package/dist/cards/impl/minion/springy-spriggan.js.map +1 -0
- package/dist/cards/impl/minion/stalwart-kodo.js.map +1 -0
- package/dist/cards/impl/minion/stellar-freebooter.js.map +1 -0
- package/dist/cards/impl/minion/stitched-salvager.js.map +1 -0
- package/dist/cards/impl/minion/stomping-stegodon-enchantment.js.map +1 -0
- package/dist/cards/impl/minion/stomping-stegodon.js.map +1 -0
- package/dist/cards/impl/minion/stoneshell-guardian.js.map +1 -0
- package/dist/cards/impl/minion/stormpike-lieutenant.js.map +1 -0
- package/dist/cards/impl/minion/stray-satyr.js.map +1 -0
- package/dist/cards/impl/minion/stuntdrake.js.map +1 -0
- package/dist/cards/impl/minion/sun-screener.js.map +1 -0
- package/dist/cards/impl/minion/sundered-matriarch.js.map +1 -0
- package/dist/cards/impl/minion/sunken-advocate.js.map +1 -0
- package/dist/cards/impl/minion/super-constructor.js.map +1 -0
- package/dist/cards/impl/minion/surf-n-surf-crab-riding.js.map +1 -0
- package/dist/cards/impl/minion/surfing-slyvar.js.map +1 -0
- package/dist/cards/impl/minion/swampstriker.js.map +1 -0
- package/dist/cards/impl/minion/tamuzo.js.map +1 -0
- package/dist/cards/impl/minion/the-glad-iator.js.map +1 -0
- package/dist/cards/impl/minion/the-last-one-standing.js.map +1 -0
- package/dist/cards/impl/minion/the-uninvited-guest.js.map +1 -0
- package/dist/cards/impl/minion/thorncaller.js.map +1 -0
- package/dist/cards/impl/minion/thousandth-paper-drake.js.map +1 -0
- package/dist/cards/impl/minion/three-lil-quilboar.js.map +1 -0
- package/dist/cards/impl/minion/thundering-abomination.js.map +1 -0
- package/dist/cards/impl/minion/tichondrius.js.map +1 -0
- package/dist/cards/impl/minion/tide-raiser.js.map +1 -0
- package/dist/cards/impl/minion/tidemistress-athissa.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-alleycat.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-archimonde.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-arm.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-bassgill.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-bloodbinder.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-bonker.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-botani.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-bristler.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-calligrapher.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-caretaker.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-centurion.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-chameleon.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-chimera.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-clefthoof.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-collector.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-copter.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-deadstomper.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-deathswarmer.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-dragonling.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-duskmaw.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-electron.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-elegist.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-embalmer.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-expeditioner.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-festergut.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-geist.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-gemsplitter.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-geomancer.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-ghoul-acabra.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-goldrinn.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-grease-bot.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-greenskeeper.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-guard.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-hag.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-hawkstrider.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-hooktail.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-hunter.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-hyena.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-icky-imp.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-immortal.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-interpreter.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-jazzer.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-jelly-belly.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-jungle-king.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-karathress.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-kilrek.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-lab-rat.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-lil-quilboar.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-low-flier.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-magnanimoose.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-mothership.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-mrrrglr.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-murcules.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-murk-eye.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-murky.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-mythraw.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-nalaa.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-nellies-ship.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-nest-swarmer.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-painter.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-paleofin.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-pashmar.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-peggy.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-pillager.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-piper.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-primscale.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-probius.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-promo-drake.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-radio-star.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-ragnaros.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-recycler.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-red-whelp.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-rewinder.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-riplash.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-sapper.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-saurolisk.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-scourfin.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-sea-glass.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-sellemental.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-sensei.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-shadowdancer.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-spirit-of-air.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-sporebat.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-steamer.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-stone-drake.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-stoneshell.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-stormcloud.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-substrate.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-swirler.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-sylvar.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-tamuzo.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-tender.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-thorncaller.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-tide-razor.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-tony.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-traveler.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-trickster.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-twirler.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-ultralisk.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-vaelastrasz.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-wargear.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-warghoul.js.map +1 -0
- package/dist/cards/impl/minion/timewarped-whelp-smuggler.js.map +1 -0
- package/dist/cards/impl/minion/tomb-pillager.js.map +1 -0
- package/dist/cards/impl/minion/transmuted-bramblewitch.js.map +1 -0
- package/dist/cards/impl/minion/trench-fighter.js.map +1 -0
- package/dist/cards/impl/minion/tunnel-blaster.js.map +1 -0
- package/dist/cards/impl/minion/turquoise-skitterer.js.map +1 -0
- package/dist/cards/impl/minion/tusked-camper.js.map +1 -0
- package/dist/cards/impl/minion/twilight-broodmother.js.map +1 -0
- package/dist/cards/impl/minion/twilight-hatchling.js.map +1 -0
- package/dist/cards/impl/minion/twilight-primordium.js.map +1 -0
- package/dist/cards/impl/minion/twilight-watcher.js.map +1 -0
- package/dist/cards/impl/minion/twisted-wrathguard.js.map +1 -0
- package/dist/cards/impl/minion/ultralisk.js.map +1 -0
- package/dist/cards/impl/minion/ultraviolet-ascendant.js.map +1 -0
- package/dist/cards/impl/minion/unforgiving-treant.js.map +1 -0
- package/dist/cards/impl/minion/utility-drone.js.map +1 -0
- package/dist/cards/impl/minion/vaelastrasz.js.map +1 -0
- package/dist/cards/impl/minion/valiant-tiger.js.map +1 -0
- package/dist/cards/impl/minion/vengeful-protector.js.map +1 -0
- package/dist/cards/impl/minion/very-hungry-winterfinner.js.map +1 -0
- package/dist/cards/impl/minion/vinespeaker.js.map +1 -0
- package/dist/cards/impl/minion/void-earl.js.map +1 -0
- package/dist/cards/impl/minion/void-pup-trainer.js.map +1 -0
- package/dist/cards/impl/minion/void-ray.js.map +1 -0
- package/dist/cards/impl/minion/vorkai-guardian.js.map +1 -0
- package/dist/cards/impl/minion/wandering-wight.js.map +1 -0
- package/dist/cards/impl/minion/weebomination.js.map +1 -0
- package/dist/cards/impl/minion/whelp-smuggler.js.map +1 -0
- package/dist/cards/impl/minion/whelp-watcher.js.map +1 -0
- package/dist/cards/impl/minion/whirling-lass-o-matic.js.map +1 -0
- package/dist/cards/impl/minion/whirring-protector-enchantment.js.map +1 -0
- package/dist/cards/impl/minion/whirring-protector.js.map +1 -0
- package/dist/cards/impl/minion/wildfire-elemental.js.map +1 -0
- package/dist/cards/impl/minion/wisp-in-the-shell.js.map +1 -0
- package/dist/cards/impl/minion/witchwing-nestmatron.js.map +1 -0
- package/dist/cards/impl/minion/woodland-defiler.js.map +1 -0
- package/dist/cards/impl/minion/wrathscale-rogue.js.map +1 -0
- package/dist/cards/impl/minion/wyvern-outrider.js.map +1 -0
- package/dist/cards/impl/minion/yorik-smite.js.map +1 -0
- package/dist/cards/impl/minion/young-murk-eye.js.map +1 -0
- package/dist/cards/impl/minion/yrel.js.map +1 -0
- package/dist/cards/impl/minion/yulon-fortune-granter.js.map +1 -0
- package/dist/cards/impl/minion/zergling.js.map +1 -0
- package/dist/cards/impl/minion/zippers.js.map +1 -0
- package/dist/cards/impl/quest-reward/evil-twin.js.map +1 -0
- package/dist/cards/impl/quest-reward/righteous-charge.js.map +1 -0
- package/dist/cards/impl/quest-reward/staff-of-origination.js.map +1 -0
- package/dist/cards/impl/quest-reward/stolen-gold.js.map +1 -0
- package/dist/cards/impl/spell/fleeting-vigor.js.map +1 -0
- package/dist/cards/impl/spellcraft/anglers-lure.js.map +1 -0
- package/dist/cards/impl/spellcraft/azsharas-hatchery.js.map +1 -0
- package/dist/cards/impl/spellcraft/crab-mount.js.map +1 -0
- package/dist/cards/impl/spellcraft/deep-blues.js.map +1 -0
- package/dist/cards/impl/spellcraft/escape-eruption.js.map +1 -0
- package/dist/cards/impl/spellcraft/evolving-strategy.js.map +1 -0
- package/dist/cards/impl/spellcraft/glowing-crown.js.map +1 -0
- package/dist/cards/impl/spellcraft/gold-gun.js.map +1 -0
- package/dist/cards/impl/spellcraft/harvested-pearl.js.map +1 -0
- package/dist/cards/impl/spellcraft/just-keep-swimming.js.map +1 -0
- package/dist/cards/impl/spellcraft/meditation.js.map +1 -0
- package/dist/cards/impl/spellcraft/mini-trident.js.map +1 -0
- package/dist/cards/impl/spellcraft/reinvigoration.js.map +1 -0
- package/dist/cards/impl/spellcraft/rime-or-reason.js.map +1 -0
- package/dist/cards/impl/spellcraft/rushing-winds.js.map +1 -0
- package/dist/cards/impl/spellcraft/sick-riffs.js.map +1 -0
- package/dist/cards/impl/spellcraft/sunken-spells.js.map +1 -0
- package/dist/cards/impl/spellcraft/surging-scales.js.map +1 -0
- package/dist/cards/impl/spellcraft/thaumaturgy.js.map +1 -0
- package/dist/cards/impl/spellcraft/the-golden-hammer.js.map +1 -0
- package/dist/cards/impl/spellcraft/timewarped-crown.js.map +1 -0
- package/dist/cards/impl/spellcraft/timewarped-eelectrify.js.map +1 -0
- package/dist/cards/impl/spellcraft/timewarped-shoal.js.map +1 -0
- package/dist/cards/impl/spellcraft/undersea-mount.js.map +1 -0
- package/dist/cards/impl/spellcraft/veterans-tactics.js.map +1 -0
- package/dist/cards/impl/trinket/all-purpose-kibble.js.map +1 -0
- package/dist/cards/impl/trinket/archaic-scroll.js.map +1 -0
- package/dist/cards/impl/trinket/arm-of-the-empire.js.map +1 -0
- package/dist/cards/impl/trinket/artisanal-urn.js.map +1 -0
- package/dist/cards/impl/trinket/automaton-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/baleful-incense.js.map +1 -0
- package/dist/cards/impl/trinket/bassgill-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/battle-horn.js.map +1 -0
- package/dist/cards/impl/trinket/beetle-band.js.map +1 -0
- package/dist/cards/impl/trinket/bewitched-ribbon.js.map +1 -0
- package/dist/cards/impl/trinket/bird-feeder.js.map +1 -0
- package/dist/cards/impl/trinket/blood-amulet.js.map +1 -0
- package/dist/cards/impl/trinket/bloodbound-earrings.js.map +1 -0
- package/dist/cards/impl/trinket/bluegill-flippers.js.map +1 -0
- package/dist/cards/impl/trinket/bronze-timepiece.js.map +1 -0
- package/dist/cards/impl/trinket/bubble-crown.js.map +1 -0
- package/dist/cards/impl/trinket/cloud-serpent-horn.js.map +1 -0
- package/dist/cards/impl/trinket/comfy-coffin.js.map +1 -0
- package/dist/cards/impl/trinket/copper-coil.js.map +1 -0
- package/dist/cards/impl/trinket/coral-spear.js.map +1 -0
- package/dist/cards/impl/trinket/crocheted-sungill.js.map +1 -0
- package/dist/cards/impl/trinket/daggerspine-thrasher.js.map +1 -0
- package/dist/cards/impl/trinket/divine-signet.js.map +1 -0
- package/dist/cards/impl/trinket/dramaloc-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/eclectic-shrine.js.map +1 -0
- package/dist/cards/impl/trinket/emerald-dreamcatcher.js.map +1 -0
- package/dist/cards/impl/trinket/eternal-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/faerie-dragon-scale.js.map +1 -0
- package/dist/cards/impl/trinket/fang-anklet.js.map +1 -0
- package/dist/cards/impl/trinket/felburned-ledger.js.map +1 -0
- package/dist/cards/impl/trinket/fishy-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/fridge-magnet.js.map +1 -0
- package/dist/cards/impl/trinket/ghostly-ymirjar.js.map +1 -0
- package/dist/cards/impl/trinket/gilnean-thorned-rose.js.map +1 -0
- package/dist/cards/impl/trinket/glowscale-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/heart-of-the-forest.js +9 -0
- package/dist/cards/impl/trinket/heart-of-the-forest.js.map +1 -0
- package/dist/cards/impl/trinket/herald-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/hoggy-bank.js.map +1 -0
- package/dist/cards/impl/trinket/hogwash-basin.js.map +1 -0
- package/dist/cards/impl/trinket/holly-mallet.js.map +1 -0
- package/dist/cards/impl/trinket/ironforge-anvil.js.map +1 -0
- package/dist/cards/impl/trinket/jar-o-gems.js.map +1 -0
- package/dist/cards/impl/trinket/jarred-frostling.js.map +1 -0
- package/dist/cards/impl/trinket/karazhan-chess-set.js.map +1 -0
- package/dist/cards/impl/trinket/lorewalker-scroll.js.map +1 -0
- package/dist/cards/impl/trinket/miniature-ship.js.map +1 -0
- package/dist/cards/impl/trinket/powder-keg-enchantment.js.map +1 -0
- package/dist/cards/impl/trinket/powder-keg.js.map +1 -0
- package/dist/cards/impl/trinket/protective-ring.js.map +1 -0
- package/dist/cards/impl/trinket/quilligraphy-set.js.map +1 -0
- package/dist/cards/impl/trinket/reinforced-shield.js.map +1 -0
- package/dist/cards/impl/trinket/rivendare-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/rusty-trident.js.map +1 -0
- package/dist/cards/impl/trinket/saltscale-honcho.js.map +1 -0
- package/dist/cards/impl/trinket/sepulchral-sergent.js.map +1 -0
- package/dist/cards/impl/trinket/ship-in-a-bottle.js.map +1 -0
- package/dist/cards/impl/trinket/slamma-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/stegodon-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/sthara-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/summoning-sphere.js.map +1 -0
- package/dist/cards/impl/trinket/tarecgosa-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/thornspike-pauldron.js.map +1 -0
- package/dist/cards/impl/trinket/tide-raiser-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/tiger-carving-token.js.map +1 -0
- package/dist/cards/impl/trinket/tinyfin-onesie.js.map +1 -0
- package/dist/cards/impl/trinket/training-certificate.js.map +1 -0
- package/dist/cards/impl/trinket/trusty-crowbar.js.map +1 -0
- package/dist/cards/impl/trinket/unholy-sanctum.js.map +1 -0
- package/dist/cards/impl/trinket/valorous-medaillion.js.map +1 -0
- package/dist/cards/impl/trinket/vashjir-anemone.js.map +1 -0
- package/dist/cards/impl/trinket/wicked-tome.js.map +1 -0
- package/dist/cards/impl/trinket/wildfeather-duster.js.map +1 -0
- package/dist/cards/impl/trinket/wintergrasp-ghoul.js.map +1 -0
- package/dist/cards/impl/trinket/yulon-sticker.js.map +1 -0
- package/dist/debug-state.js.map +1 -0
- package/dist/input-clone.js.map +1 -0
- package/dist/input-sanitation.js.map +1 -0
- package/dist/keywords/divine-shield.js.map +1 -0
- package/dist/keywords/reborn.js.map +1 -0
- package/dist/keywords/stealth.js.map +1 -0
- package/dist/keywords/taunt.js.map +1 -0
- package/dist/keywords/venomous.js.map +1 -0
- package/dist/keywords/windfury.js.map +1 -0
- package/dist/mechanics/cast-tavern-spell.js.map +1 -0
- package/dist/mechanics/player-global-effects.js.map +1 -0
- package/dist/mechanics/rally.js.map +1 -0
- package/dist/mechanics/tavern-spell-repeat.js.map +1 -0
- package/dist/services/card-ids.js.map +1 -0
- package/dist/services/hand-minion-priority.js.map +1 -0
- package/dist/services/utils.js.map +1 -0
- package/dist/simulate-bgs-battle.js.map +1 -0
- package/dist/simulation/add-minion-to-board.js.map +1 -0
- package/dist/simulation/after-attack.js.map +1 -0
- package/dist/simulation/attack.js.map +1 -0
- package/dist/simulation/auras.js.map +1 -0
- package/dist/simulation/avenge.js.map +1 -0
- package/dist/simulation/battlecries.js.map +1 -0
- package/dist/simulation/blood-gems.js.map +1 -0
- package/dist/simulation/cards-in-hand.js.map +1 -0
- package/dist/simulation/damage-effects.js.map +1 -0
- package/dist/simulation/damage-to-hero.js.map +1 -0
- package/dist/simulation/death-effects.js.map +1 -0
- package/dist/simulation/deathrattle-effects.js.map +1 -0
- package/dist/simulation/deathrattle-on-trigger.js.map +1 -0
- package/dist/simulation/deathrattle-orchestration.js.map +1 -0
- package/dist/simulation/deathrattle-spawns.js.map +1 -0
- package/dist/simulation/deathrattle-utils.js.map +1 -0
- package/dist/simulation/discover.js.map +1 -0
- package/dist/simulation/enchantments.js.map +1 -0
- package/dist/simulation/frenzy.js.map +1 -0
- package/dist/simulation/global-info-helpers.js.map +1 -0
- package/dist/simulation/internal-game-state.js.map +1 -0
- package/dist/simulation/magnetize.js.map +1 -0
- package/dist/simulation/minion-death.js.map +1 -0
- package/dist/simulation/minion-kill.js.map +1 -0
- package/dist/simulation/on-attack.js.map +1 -0
- package/dist/simulation/on-being-attacked.js.map +1 -0
- package/dist/simulation/quest.js.map +1 -0
- package/dist/simulation/reborn.js.map +1 -0
- package/dist/simulation/remembered-deathrattle.js.map +1 -0
- package/dist/simulation/remove-minion-from-board.js.map +1 -0
- package/dist/simulation/secrets.js.map +1 -0
- package/dist/simulation/shared-state.js.map +1 -0
- package/dist/simulation/simulator.js.map +1 -0
- package/dist/simulation/spawn-fail.js.map +1 -0
- package/dist/simulation/spawns.js.map +1 -0
- package/dist/simulation/spectator/game-action.js.map +1 -0
- package/dist/simulation/spectator/game-sample.js.map +1 -0
- package/dist/simulation/spectator/spectator.js.map +1 -0
- package/dist/simulation/start-of-combat/phases.js.map +1 -0
- package/dist/simulation/start-of-combat/soc-action-processor.js.map +1 -0
- package/dist/simulation/start-of-combat/soc-anomalies.js.map +1 -0
- package/dist/simulation/start-of-combat/soc-hero-power.js.map +1 -0
- package/dist/simulation/start-of-combat/soc-illidan-hero-power.js.map +1 -0
- package/dist/simulation/start-of-combat/soc-minion.js.map +1 -0
- package/dist/simulation/start-of-combat/soc-pre-combat-hero-power.js.map +1 -0
- package/dist/simulation/start-of-combat/soc-quest-reward.js.map +1 -0
- package/dist/simulation/start-of-combat/soc-secret.js.map +1 -0
- package/dist/simulation/start-of-combat/soc-trinket.js.map +1 -0
- package/dist/simulation/start-of-combat/start-of-combat-input.js.map +1 -0
- package/dist/simulation/start-of-combat/start-of-combat.js.map +1 -0
- package/dist/simulation/stats.js.map +1 -0
- package/dist/simulation/summon-when-space.js.map +1 -0
- package/dist/simulation/utils/entity-utils.js.map +1 -0
- package/dist/simulation/utils/golden.js.map +1 -0
- package/dist/simulation-result.js.map +1 -0
- package/dist/single-simulation-result.js.map +1 -0
- package/dist/temp-card-ids.js.map +1 -0
- package/dist/utils.js.map +1 -0
- package/package.json +2 -2
- package/dist/src/bgs-battle-info.js.map +0 -1
- package/dist/src/bgs-battle-options.js.map +0 -1
- package/dist/src/bgs-board-info.js.map +0 -1
- package/dist/src/bgs-player-entity.js.map +0 -1
- package/dist/src/board-entity.js.map +0 -1
- package/dist/src/board-secret.js.map +0 -1
- package/dist/src/cards/card.interface.js.map +0 -1
- package/dist/src/cards/cards-data.js.map +0 -1
- package/dist/src/cards/impl/_card-mappings.js.map +0 -1
- package/dist/src/cards/impl/anomaly/anomalous-twin.js.map +0 -1
- package/dist/src/cards/impl/anomaly/blessed-or-blighted.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/arcane-absorption-bg352.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/azerite-empowerment.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/back-to-back.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/blood-gem-barrage.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/blood-gem-quilboar-divine-shield.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/blood-gem-quilboar-reborn.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/blood-gem-quilboar-taunt.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/boon-of-beetles.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/brood-of-nozdormu.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/butchering.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/chefs-choice.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/conflagration-bg352.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/deepwater-clan.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/eyes-of-the-earth-mother.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/friendly-bounty.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/hand-of-deios.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/healthy-bounty.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/hostile-bounty.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/jailer-sticker-306.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/jailer-sticker-733.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/menagerie-tableware.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/might-of-stormwind.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/murkys-fish.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/natural-blessing.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/ophidian-staff.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/queens-command.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/selfish-bounty.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/sharing-is-caring.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/shifting-tide.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/shiny-ring.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-bananas.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-chefs-choice.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-cloning-device.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-conch.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-corpse.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-evolution.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-goldenizer.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-master-thief.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-on-the-house.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-rat-in-the-cage.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-ritual.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-special.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/timewarped-thief.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/tomb-turning.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/toxic-tumbleweed.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/upper-hand.js.map +0 -1
- package/dist/src/cards/impl/bg-spell/wave-of-gold.js.map +0 -1
- package/dist/src/cards/impl/hero-power/aim-high.js.map +0 -1
- package/dist/src/cards/impl/hero-power/aim-left.js.map +0 -1
- package/dist/src/cards/impl/hero-power/aim-low.js.map +0 -1
- package/dist/src/cards/impl/hero-power/aim-right.js.map +0 -1
- package/dist/src/cards/impl/hero-power/all-will-burn.js.map +0 -1
- package/dist/src/cards/impl/hero-power/earth-invocation.js.map +0 -1
- package/dist/src/cards/impl/hero-power/embrace-your-rage.js.map +0 -1
- package/dist/src/cards/impl/hero-power/fire-invocation.js.map +0 -1
- package/dist/src/cards/impl/hero-power/fragrant-phylactery-enchantment.js.map +0 -1
- package/dist/src/cards/impl/hero-power/fragrant-phylactery.js.map +0 -1
- package/dist/src/cards/impl/hero-power/frostwolf-fervor.js.map +0 -1
- package/dist/src/cards/impl/hero-power/glorious-gloop.js.map +0 -1
- package/dist/src/cards/impl/hero-power/lightning-invocation.js.map +0 -1
- package/dist/src/cards/impl/hero-power/lock-and-load.js.map +0 -1
- package/dist/src/cards/impl/hero-power/rapid-reanimation.js.map +0 -1
- package/dist/src/cards/impl/hero-power/reborn-rites.js.map +0 -1
- package/dist/src/cards/impl/hero-power/stormpike.js.map +0 -1
- package/dist/src/cards/impl/hero-power/swatting-insects.js.map +0 -1
- package/dist/src/cards/impl/hero-power/tentacular.js.map +0 -1
- package/dist/src/cards/impl/hero-power/water-invocation.js.map +0 -1
- package/dist/src/cards/impl/hero-power/wax-warband.js.map +0 -1
- package/dist/src/cards/impl/minion/abyssal-bruiser.js.map +0 -1
- package/dist/src/cards/impl/minion/admiral-eliza-goreblade.js.map +0 -1
- package/dist/src/cards/impl/minion/alert-alarmist.js.map +0 -1
- package/dist/src/cards/impl/minion/all-seeing-elder.js.map +0 -1
- package/dist/src/cards/impl/minion/alleycat.js.map +0 -1
- package/dist/src/cards/impl/minion/amber-guardian.js.map +0 -1
- package/dist/src/cards/impl/minion/amplifying-lightspawn.js.map +0 -1
- package/dist/src/cards/impl/minion/ancestral-automaton.js.map +0 -1
- package/dist/src/cards/impl/minion/anubarak-nerubian-king.js.map +0 -1
- package/dist/src/cards/impl/minion/apexis-guardian.js.map +0 -1
- package/dist/src/cards/impl/minion/apprentice-of-sefin.js.map +0 -1
- package/dist/src/cards/impl/minion/arcane-cannoneer.js.map +0 -1
- package/dist/src/cards/impl/minion/archaedas.js.map +0 -1
- package/dist/src/cards/impl/minion/archimonde.js.map +0 -1
- package/dist/src/cards/impl/minion/arid-atrocity.js.map +0 -1
- package/dist/src/cards/impl/minion/ashen-corruptor.js.map +0 -1
- package/dist/src/cards/impl/minion/assistant-guard.js.map +0 -1
- package/dist/src/cards/impl/minion/audacious-anchor.js.map +0 -1
- package/dist/src/cards/impl/minion/auto-accelerator.js.map +0 -1
- package/dist/src/cards/impl/minion/auto-assembler-enchantment.js.map +0 -1
- package/dist/src/cards/impl/minion/auto-assembler.js.map +0 -1
- package/dist/src/cards/impl/minion/avalanche-caller.js.map +0 -1
- package/dist/src/cards/impl/minion/azsharan-cutlassier.js.map +0 -1
- package/dist/src/cards/impl/minion/baby-yshaarj.js.map +0 -1
- package/dist/src/cards/impl/minion/balinda-stonehearth.js.map +0 -1
- package/dist/src/cards/impl/minion/banana-slamma.js.map +0 -1
- package/dist/src/cards/impl/minion/baneling.js.map +0 -1
- package/dist/src/cards/impl/minion/bannerboar.js.map +0 -1
- package/dist/src/cards/impl/minion/bassgill.js.map +0 -1
- package/dist/src/cards/impl/minion/battlecruiser.js.map +0 -1
- package/dist/src/cards/impl/minion/beetle.js.map +0 -1
- package/dist/src/cards/impl/minion/bellowing-tyrant.js.map +0 -1
- package/dist/src/cards/impl/minion/bg352-chromadrake-pool.js.map +0 -1
- package/dist/src/cards/impl/minion/bigwig-bandit.js.map +0 -1
- package/dist/src/cards/impl/minion/bile-spitter.js.map +0 -1
- package/dist/src/cards/impl/minion/bird-buddy.js.map +0 -1
- package/dist/src/cards/impl/minion/black-chromadrake.js.map +0 -1
- package/dist/src/cards/impl/minion/blazing-skyfin.js.map +0 -1
- package/dist/src/cards/impl/minion/bloodsnout-warlord.js.map +0 -1
- package/dist/src/cards/impl/minion/blue-chromadrake.js.map +0 -1
- package/dist/src/cards/impl/minion/blue-volumizer.js.map +0 -1
- package/dist/src/cards/impl/minion/blue-whelp.js.map +0 -1
- package/dist/src/cards/impl/minion/bluesy-siren.js.map +0 -1
- package/dist/src/cards/impl/minion/boar-gamer.js.map +0 -1
- package/dist/src/cards/impl/minion/bongo-bopper.js.map +0 -1
- package/dist/src/cards/impl/minion/bonker.js.map +0 -1
- package/dist/src/cards/impl/minion/brazen-buccaneer.js.map +0 -1
- package/dist/src/cards/impl/minion/briarback-bookie.js.map +0 -1
- package/dist/src/cards/impl/minion/briarback-drummer.js.map +0 -1
- package/dist/src/cards/impl/minion/briny-bootlegger.js.map +0 -1
- package/dist/src/cards/impl/minion/bristlebach.js.map +0 -1
- package/dist/src/cards/impl/minion/bristleback-bully.js.map +0 -1
- package/dist/src/cards/impl/minion/bristlemane-scrapsmith.js.map +0 -1
- package/dist/src/cards/impl/minion/bronze-chromadrake.js.map +0 -1
- package/dist/src/cards/impl/minion/bronze-steward.js.map +0 -1
- package/dist/src/cards/impl/minion/bubble-gunner.js.map +0 -1
- package/dist/src/cards/impl/minion/budding-greenthumb.js.map +0 -1
- package/dist/src/cards/impl/minion/burgeoning-whelp.js.map +0 -1
- package/dist/src/cards/impl/minion/buzzing-vermin.js.map +0 -1
- package/dist/src/cards/impl/minion/cadaver-caretaker.js.map +0 -1
- package/dist/src/cards/impl/minion/campfire-shadow.js.map +0 -1
- package/dist/src/cards/impl/minion/canopy-swinger.js.map +0 -1
- package/dist/src/cards/impl/minion/captain-bonerender.js.map +0 -1
- package/dist/src/cards/impl/minion/carapace-raiser.js.map +0 -1
- package/dist/src/cards/impl/minion/carbonic-copy.js.map +0 -1
- package/dist/src/cards/impl/minion/carrier.js.map +0 -1
- package/dist/src/cards/impl/minion/cataclysmic-harbinger.js.map +0 -1
- package/dist/src/cards/impl/minion/champion-of-the-primus.js.map +0 -1
- package/dist/src/cards/impl/minion/charging-czarina.js.map +0 -1
- package/dist/src/cards/impl/minion/charlga.js.map +0 -1
- package/dist/src/cards/impl/minion/charmwing.js.map +0 -1
- package/dist/src/cards/impl/minion/choral-mrrrglr.js.map +0 -1
- package/dist/src/cards/impl/minion/clunker-junker.js.map +0 -1
- package/dist/src/cards/impl/minion/coilskar-sapper.js.map +0 -1
- package/dist/src/cards/impl/minion/coldlight-diver.js.map +0 -1
- package/dist/src/cards/impl/minion/colossus.js.map +0 -1
- package/dist/src/cards/impl/minion/consummate-conqueror.js.map +0 -1
- package/dist/src/cards/impl/minion/conveyor-construct.js.map +0 -1
- package/dist/src/cards/impl/minion/corrupted-bristler.js.map +0 -1
- package/dist/src/cards/impl/minion/corrupted-myrmidon.js.map +0 -1
- package/dist/src/cards/impl/minion/costume-enthusiast.js.map +0 -1
- package/dist/src/cards/impl/minion/cousin-errgl.js.map +0 -1
- package/dist/src/cards/impl/minion/cruise-controller.js.map +0 -1
- package/dist/src/cards/impl/minion/crystal-infuser-enchantment.js.map +0 -1
- package/dist/src/cards/impl/minion/cupcake-peddler.js.map +0 -1
- package/dist/src/cards/impl/minion/dastardly-drust.js.map +0 -1
- package/dist/src/cards/impl/minion/deadstomper.js.map +0 -1
- package/dist/src/cards/impl/minion/deathly-striker.js.map +0 -1
- package/dist/src/cards/impl/minion/deepwater-chieftain.js.map +0 -1
- package/dist/src/cards/impl/minion/defiant-shipwright.js.map +0 -1
- package/dist/src/cards/impl/minion/deflecto-bot.js.map +0 -1
- package/dist/src/cards/impl/minion/demon-fodder.js.map +0 -1
- package/dist/src/cards/impl/minion/determined-defender.js.map +0 -1
- package/dist/src/cards/impl/minion/devout-hellcaller.js.map +0 -1
- package/dist/src/cards/impl/minion/diremuck-forager.js.map +0 -1
- package/dist/src/cards/impl/minion/disguised-graverobber.js.map +0 -1
- package/dist/src/cards/impl/minion/divine-sparkbot.js.map +0 -1
- package/dist/src/cards/impl/minion/draconic-warden.js.map +0 -1
- package/dist/src/cards/impl/minion/drakkari-embalmer.js.map +0 -1
- package/dist/src/cards/impl/minion/dramaloc.js.map +0 -1
- package/dist/src/cards/impl/minion/dreaming-thornweaver.js.map +0 -1
- package/dist/src/cards/impl/minion/drustfallen-butcher.js.map +0 -1
- package/dist/src/cards/impl/minion/dustbone-devastator.js.map +0 -1
- package/dist/src/cards/impl/minion/earthsong-shaman.js.map +0 -1
- package/dist/src/cards/impl/minion/echoing-roar.js.map +0 -1
- package/dist/src/cards/impl/minion/efficient-engineer.js.map +0 -1
- package/dist/src/cards/impl/minion/egg-of-the-endtimes.js.map +0 -1
- package/dist/src/cards/impl/minion/elder-taggawag.js.map +0 -1
- package/dist/src/cards/impl/minion/electric-synthesizer.js.map +0 -1
- package/dist/src/cards/impl/minion/elite-navigator.js.map +0 -1
- package/dist/src/cards/impl/minion/enchanted-sentinel.js.map +0 -1
- package/dist/src/cards/impl/minion/eternal-tycoon.js.map +0 -1
- package/dist/src/cards/impl/minion/exceptionnal-caretaker.js.map +0 -1
- package/dist/src/cards/impl/minion/expert-aviator.js.map +0 -1
- package/dist/src/cards/impl/minion/expert-technician.js.map +0 -1
- package/dist/src/cards/impl/minion/fairy-gillmother.js.map +0 -1
- package/dist/src/cards/impl/minion/falling-sky-golem.js.map +0 -1
- package/dist/src/cards/impl/minion/fauna-whisperer.js.map +0 -1
- package/dist/src/cards/impl/minion/felfire-conjurer.js.map +0 -1
- package/dist/src/cards/impl/minion/felhorn.js.map +0 -1
- package/dist/src/cards/impl/minion/festergut.js.map +0 -1
- package/dist/src/cards/impl/minion/fire-forged-evoker.js.map +0 -1
- package/dist/src/cards/impl/minion/firelands-fugitive.js.map +0 -1
- package/dist/src/cards/impl/minion/firescale-hoarder.js.map +0 -1
- package/dist/src/cards/impl/minion/fireworks-fanatic.js.map +0 -1
- package/dist/src/cards/impl/minion/flighty-scout.js.map +0 -1
- package/dist/src/cards/impl/minion/floating-watcher.js.map +0 -1
- package/dist/src/cards/impl/minion/flotsam-flinger.js.map +0 -1
- package/dist/src/cards/impl/minion/forest-rover.js.map +0 -1
- package/dist/src/cards/impl/minion/forsaken-weaver.js.map +0 -1
- package/dist/src/cards/impl/minion/fountain-chiller.js.map +0 -1
- package/dist/src/cards/impl/minion/friendly-bouncer.js.map +0 -1
- package/dist/src/cards/impl/minion/friendly-geist.js.map +0 -1
- package/dist/src/cards/impl/minion/frostwolf-lieutenant.js.map +0 -1
- package/dist/src/cards/impl/minion/futurefin.js.map +0 -1
- package/dist/src/cards/impl/minion/geared-guard.js.map +0 -1
- package/dist/src/cards/impl/minion/gem-rat.js.map +0 -1
- package/dist/src/cards/impl/minion/gem-smuggler.js.map +0 -1
- package/dist/src/cards/impl/minion/gemsplitter.js.map +0 -1
- package/dist/src/cards/impl/minion/general-drakkisath.js.map +0 -1
- package/dist/src/cards/impl/minion/gentle-djinni.js.map +0 -1
- package/dist/src/cards/impl/minion/gentle-stag.js.map +0 -1
- package/dist/src/cards/impl/minion/ghoul-of-the-feast.js.map +0 -1
- package/dist/src/cards/impl/minion/gilded-gargoyle.js.map +0 -1
- package/dist/src/cards/impl/minion/gleaming-trader.js.map +0 -1
- package/dist/src/cards/impl/minion/glowgullet-warlord.js.map +0 -1
- package/dist/src/cards/impl/minion/glowing-cinder.js.map +0 -1
- package/dist/src/cards/impl/minion/gluttonous-trogg.js.map +0 -1
- package/dist/src/cards/impl/minion/goldgrubber.js.map +0 -1
- package/dist/src/cards/impl/minion/goldrinn-the-great-wolf.js.map +0 -1
- package/dist/src/cards/impl/minion/gormling-gourmet.js.map +0 -1
- package/dist/src/cards/impl/minion/grease-bot.js.map +0 -1
- package/dist/src/cards/impl/minion/greedy-snaketongue.js.map +0 -1
- package/dist/src/cards/impl/minion/green-chromadrake.js.map +0 -1
- package/dist/src/cards/impl/minion/green-volumizer.js.map +0 -1
- package/dist/src/cards/impl/minion/greenskeeper.js.map +0 -1
- package/dist/src/cards/impl/minion/grimscale-elegist.js.map +0 -1
- package/dist/src/cards/impl/minion/gritty-headhunter.js.map +0 -1
- package/dist/src/cards/impl/minion/hackerfin.js.map +0 -1
- package/dist/src/cards/impl/minion/handless-forsaken.js.map +0 -1
- package/dist/src/cards/impl/minion/hardy-orca.js.map +0 -1
- package/dist/src/cards/impl/minion/harmless-bonehead.js.map +0 -1
- package/dist/src/cards/impl/minion/hawkstrider-herald.js.map +0 -1
- package/dist/src/cards/impl/minion/heroic-underdog.js.map +0 -1
- package/dist/src/cards/impl/minion/highkeeper-ra.js.map +0 -1
- package/dist/src/cards/impl/minion/hired-ritualist.js.map +0 -1
- package/dist/src/cards/impl/minion/hoarding-hatespawn.js.map +0 -1
- package/dist/src/cards/impl/minion/hog-watcher.js.map +0 -1
- package/dist/src/cards/impl/minion/holo-rover.js.map +0 -1
- package/dist/src/cards/impl/minion/hot-springer.js.map +0 -1
- package/dist/src/cards/impl/minion/humming-bird.js.map +0 -1
- package/dist/src/cards/impl/minion/humongozz.js.map +0 -1
- package/dist/src/cards/impl/minion/hungry-snapjaw.js.map +0 -1
- package/dist/src/cards/impl/minion/hunter-of-gatherers.js.map +0 -1
- package/dist/src/cards/impl/minion/hunting-tiger-shark.js.map +0 -1
- package/dist/src/cards/impl/minion/hydralisk.js.map +0 -1
- package/dist/src/cards/impl/minion/icesnarl-the-mighty.js.map +0 -1
- package/dist/src/cards/impl/minion/ignition-specialist.js.map +0 -1
- package/dist/src/cards/impl/minion/immortal.js.map +0 -1
- package/dist/src/cards/impl/minion/implant-subject.js.map +0 -1
- package/dist/src/cards/impl/minion/imposing-percussionist.js.map +0 -1
- package/dist/src/cards/impl/minion/impulsive-trickster.js.map +0 -1
- package/dist/src/cards/impl/minion/incubation-researcher.js.map +0 -1
- package/dist/src/cards/impl/minion/indomitable-mount.js.map +0 -1
- package/dist/src/cards/impl/minion/inspiring-underdog.js.map +0 -1
- package/dist/src/cards/impl/minion/interrogator-whitemane.js.map +0 -1
- package/dist/src/cards/impl/minion/irate-rooster.js.map +0 -1
- package/dist/src/cards/impl/minion/jelly-belly.js.map +0 -1
- package/dist/src/cards/impl/minion/junk-jouster.js.map +0 -1
- package/dist/src/cards/impl/minion/kalecgos-arcane-aspect.js.map +0 -1
- package/dist/src/cards/impl/minion/kangors-apprentice.js.map +0 -1
- package/dist/src/cards/impl/minion/karmic-chameleon.js.map +0 -1
- package/dist/src/cards/impl/minion/king-bagurgle.js.map +0 -1
- package/dist/src/cards/impl/minion/laboratory-assistant.js.map +0 -1
- package/dist/src/cards/impl/minion/leeroy-the-reckless.js.map +0 -1
- package/dist/src/cards/impl/minion/leyline-surfacer.js.map +0 -1
- package/dist/src/cards/impl/minion/lightfang-enforcer.js.map +0 -1
- package/dist/src/cards/impl/minion/lightfeather-screecher.js.map +0 -1
- package/dist/src/cards/impl/minion/living-azerite.js.map +0 -1
- package/dist/src/cards/impl/minion/lokholar-frostforger.js.map +0 -1
- package/dist/src/cards/impl/minion/lord-of-the-ruins.js.map +0 -1
- package/dist/src/cards/impl/minion/lost-city-looter.js.map +0 -1
- package/dist/src/cards/impl/minion/lovesick-balladist.js.map +0 -1
- package/dist/src/cards/impl/minion/low-flier.js.map +0 -1
- package/dist/src/cards/impl/minion/lurker.js.map +0 -1
- package/dist/src/cards/impl/minion/lurking-leviathan.js.map +0 -1
- package/dist/src/cards/impl/minion/maelstrom-emergent.js.map +0 -1
- package/dist/src/cards/impl/minion/magicfin-apprentice.js.map +0 -1
- package/dist/src/cards/impl/minion/malorne.js.map +0 -1
- package/dist/src/cards/impl/minion/mama-mrrglton.js.map +0 -1
- package/dist/src/cards/impl/minion/manasaber.js.map +0 -1
- package/dist/src/cards/impl/minion/mantid-queen.js.map +0 -1
- package/dist/src/cards/impl/minion/marquee-ticker.js.map +0 -1
- package/dist/src/cards/impl/minion/master-gadrin.js.map +0 -1
- package/dist/src/cards/impl/minion/maw-caster.js.map +0 -1
- package/dist/src/cards/impl/minion/mecha-jaraxxus.js.map +0 -1
- package/dist/src/cards/impl/minion/mechagnome-interpreter.js.map +0 -1
- package/dist/src/cards/impl/minion/mechanized-gift-horse.js.map +0 -1
- package/dist/src/cards/impl/minion/mechorse.js.map +0 -1
- package/dist/src/cards/impl/minion/menagerie-jug.js.map +0 -1
- package/dist/src/cards/impl/minion/metal-dispenser.js.map +0 -1
- package/dist/src/cards/impl/minion/metallic-hunter.js.map +0 -1
- package/dist/src/cards/impl/minion/misfit-dragonling.js.map +0 -1
- package/dist/src/cards/impl/minion/monstrosity.js.map +0 -1
- package/dist/src/cards/impl/minion/monstrous-macaw.js.map +0 -1
- package/dist/src/cards/impl/minion/moon-bacon-jazzer.js.map +0 -1
- package/dist/src/cards/impl/minion/moonsteel-juggernaut.js.map +0 -1
- package/dist/src/cards/impl/minion/mothership.js.map +0 -1
- package/dist/src/cards/impl/minion/mummifier.js.map +0 -1
- package/dist/src/cards/impl/minion/murcules.js.map +0 -1
- package/dist/src/cards/impl/minion/murkbrine-expeditioner.js.map +0 -1
- package/dist/src/cards/impl/minion/murky-spash-fisher.js.map +0 -1
- package/dist/src/cards/impl/minion/murky.js.map +0 -1
- package/dist/src/cards/impl/minion/mutalisk.js.map +0 -1
- package/dist/src/cards/impl/minion/mutated-lasher.js.map +0 -1
- package/dist/src/cards/impl/minion/mythrax.js.map +0 -1
- package/dist/src/cards/impl/minion/nalaa-the-redeemer.js.map +0 -1
- package/dist/src/cards/impl/minion/neon-agent.js.map +0 -1
- package/dist/src/cards/impl/minion/nerubian-deathswarmer.js.map +0 -1
- package/dist/src/cards/impl/minion/nest-swarmer.js.map +0 -1
- package/dist/src/cards/impl/minion/nether-drake.js.map +0 -1
- package/dist/src/cards/impl/minion/nightbane-ignited.js.map +0 -1
- package/dist/src/cards/impl/minion/nightmare-par-tea-guest.js.map +0 -1
- package/dist/src/cards/impl/minion/nimble-hatchling.js.map +0 -1
- package/dist/src/cards/impl/minion/niuzao.js.map +0 -1
- package/dist/src/cards/impl/minion/noisul-of-the-many-faces.js.map +0 -1
- package/dist/src/cards/impl/minion/obisidian-ravager.js.map +0 -1
- package/dist/src/cards/impl/minion/old-soul.js.map +0 -1
- package/dist/src/cards/impl/minion/oozeling-gladiator.js.map +0 -1
- package/dist/src/cards/impl/minion/operatic-belcher.js.map +0 -1
- package/dist/src/cards/impl/minion/oranomonos-the-wilted.js.map +0 -1
- package/dist/src/cards/impl/minion/outback-smolderer.js.map +0 -1
- package/dist/src/cards/impl/minion/paint-smudger.js.map +0 -1
- package/dist/src/cards/impl/minion/papa-mrrglton.js.map +0 -1
- package/dist/src/cards/impl/minion/parched-wanderer.js.map +0 -1
- package/dist/src/cards/impl/minion/pashmar-the-vengeful.js.map +0 -1
- package/dist/src/cards/impl/minion/peggy-sturdybone.js.map +0 -1
- package/dist/src/cards/impl/minion/photobomber.js.map +0 -1
- package/dist/src/cards/impl/minion/pilot-the-shredder.js.map +0 -1
- package/dist/src/cards/impl/minion/piloted-whirl-o-tron.js.map +0 -1
- package/dist/src/cards/impl/minion/plaguerunner.js.map +0 -1
- package/dist/src/cards/impl/minion/plankwalker.js.map +0 -1
- package/dist/src/cards/impl/minion/polarizing-beatboxer.js.map +0 -1
- package/dist/src/cards/impl/minion/poultron.js.map +0 -1
- package/dist/src/cards/impl/minion/primalfin-lookout.js.map +0 -1
- package/dist/src/cards/impl/minion/primeval-monstrosity.js.map +0 -1
- package/dist/src/cards/impl/minion/prized-promo-drake.js.map +0 -1
- package/dist/src/cards/impl/minion/prodigious-tusker.js.map +0 -1
- package/dist/src/cards/impl/minion/profound-thinker.js.map +0 -1
- package/dist/src/cards/impl/minion/proud-privateer.js.map +0 -1
- package/dist/src/cards/impl/minion/psychus.js.map +0 -1
- package/dist/src/cards/impl/minion/pufferquil.js.map +0 -1
- package/dist/src/cards/impl/minion/radio-star.js.map +0 -1
- package/dist/src/cards/impl/minion/rampager.js.map +0 -1
- package/dist/src/cards/impl/minion/rapscallion-recruiter.js.map +0 -1
- package/dist/src/cards/impl/minion/raptor-elder.js.map +0 -1
- package/dist/src/cards/impl/minion/razorfen-flapper.js.map +0 -1
- package/dist/src/cards/impl/minion/razorfen-geomancer.js.map +0 -1
- package/dist/src/cards/impl/minion/razorfen-vineweaver.js.map +0 -1
- package/dist/src/cards/impl/minion/razorgore-the-untamed.js.map +0 -1
- package/dist/src/cards/impl/minion/reckless-cliffdiver.js.map +0 -1
- package/dist/src/cards/impl/minion/red-chromadrake.js.map +0 -1
- package/dist/src/cards/impl/minion/red-volumizer.js.map +0 -1
- package/dist/src/cards/impl/minion/red-whelp.js.map +0 -1
- package/dist/src/cards/impl/minion/redtusk-thornraiser.js.map +0 -1
- package/dist/src/cards/impl/minion/relentless-deflector.js.map +0 -1
- package/dist/src/cards/impl/minion/rickety-repairbot.js.map +0 -1
- package/dist/src/cards/impl/minion/ride-or-die.js.map +0 -1
- package/dist/src/cards/impl/minion/ring-bearer.js.map +0 -1
- package/dist/src/cards/impl/minion/ripsnarl-captain.js.map +0 -1
- package/dist/src/cards/impl/minion/roach.js.map +0 -1
- package/dist/src/cards/impl/minion/roadboar.js.map +0 -1
- package/dist/src/cards/impl/minion/roaring-rallier.js.map +0 -1
- package/dist/src/cards/impl/minion/rodeo-performer.js.map +0 -1
- package/dist/src/cards/impl/minion/roving-sailor.js.map +0 -1
- package/dist/src/cards/impl/minion/ruins-renovator.js.map +0 -1
- package/dist/src/cards/impl/minion/runed-progenitor.js.map +0 -1
- package/dist/src/cards/impl/minion/ruthless-queensguard.js.map +0 -1
- package/dist/src/cards/impl/minion/rylak-metalhead.js.map +0 -1
- package/dist/src/cards/impl/minion/salty-hog.js.map +0 -1
- package/dist/src/cards/impl/minion/sanctum-rester.js.map +0 -1
- package/dist/src/cards/impl/minion/sand-swirler.js.map +0 -1
- package/dist/src/cards/impl/minion/sandy.js.map +0 -1
- package/dist/src/cards/impl/minion/sanguine-refiner.js.map +0 -1
- package/dist/src/cards/impl/minion/sanlayn-scribe.js.map +0 -1
- package/dist/src/cards/impl/minion/scallywag.js.map +0 -1
- package/dist/src/cards/impl/minion/scarlet-skull.js.map +0 -1
- package/dist/src/cards/impl/minion/scarlet-survivor.js.map +0 -1
- package/dist/src/cards/impl/minion/scourfin.js.map +0 -1
- package/dist/src/cards/impl/minion/scourge-harvester.js.map +0 -1
- package/dist/src/cards/impl/minion/scrap-scraper.js.map +0 -1
- package/dist/src/cards/impl/minion/seafloor-recruiter.js.map +0 -1
- package/dist/src/cards/impl/minion/selfless-hero.js.map +0 -1
- package/dist/src/cards/impl/minion/sewer-lord.js.map +0 -1
- package/dist/src/cards/impl/minion/sewer-rat.js.map +0 -1
- package/dist/src/cards/impl/minion/shadowdancer.js.map +0 -1
- package/dist/src/cards/impl/minion/shadowy-construct.js.map +0 -1
- package/dist/src/cards/impl/minion/sharp-eyed-sabretooth.js.map +0 -1
- package/dist/src/cards/impl/minion/sharptooth-snapper.js.map +0 -1
- package/dist/src/cards/impl/minion/shell-collector.js.map +0 -1
- package/dist/src/cards/impl/minion/ship-jumper.js.map +0 -1
- package/dist/src/cards/impl/minion/ship-master-eudora.js.map +0 -1
- package/dist/src/cards/impl/minion/shipwrecked-rascal.js.map +0 -1
- package/dist/src/cards/impl/minion/shore-marauder.js.map +0 -1
- package/dist/src/cards/impl/minion/showy-cyclist.js.map +0 -1
- package/dist/src/cards/impl/minion/silent-enforcer.js.map +0 -1
- package/dist/src/cards/impl/minion/silithid-burrower.js.map +0 -1
- package/dist/src/cards/impl/minion/silky-shimmermoth.js.map +0 -1
- package/dist/src/cards/impl/minion/silver-handed-recruit.js.map +0 -1
- package/dist/src/cards/impl/minion/sinodorei-straight-shot.js.map +0 -1
- package/dist/src/cards/impl/minion/sinrunner-blanchy.js.map +0 -1
- package/dist/src/cards/impl/minion/skeletal-strafer.js.map +0 -1
- package/dist/src/cards/impl/minion/skulking-bristlemane.js.map +0 -1
- package/dist/src/cards/impl/minion/sky-pirate-flagbearer-enchantment.js.map +0 -1
- package/dist/src/cards/impl/minion/sky-pirate-flagbearer.js.map +0 -1
- package/dist/src/cards/impl/minion/sleepy-supporter.js.map +0 -1
- package/dist/src/cards/impl/minion/slumber-sorcerer.js.map +0 -1
- package/dist/src/cards/impl/minion/sly-raptor.js.map +0 -1
- package/dist/src/cards/impl/minion/smolderwing.js.map +0 -1
- package/dist/src/cards/impl/minion/snack-vendor.js.map +0 -1
- package/dist/src/cards/impl/minion/soul-rewinder.js.map +0 -1
- package/dist/src/cards/impl/minion/soulsplitter.js.map +0 -1
- package/dist/src/cards/impl/minion/spacefarer.js.map +0 -1
- package/dist/src/cards/impl/minion/spellbound-soul.js.map +0 -1
- package/dist/src/cards/impl/minion/spirit-drake.js.map +0 -1
- package/dist/src/cards/impl/minion/spirit-of-air.js.map +0 -1
- package/dist/src/cards/impl/minion/spirited-whimsydrake.js.map +0 -1
- package/dist/src/cards/impl/minion/springy-spriggan.js.map +0 -1
- package/dist/src/cards/impl/minion/stalwart-kodo.js.map +0 -1
- package/dist/src/cards/impl/minion/stellar-freebooter.js.map +0 -1
- package/dist/src/cards/impl/minion/stitched-salvager.js.map +0 -1
- package/dist/src/cards/impl/minion/stomping-stegodon-enchantment.js.map +0 -1
- package/dist/src/cards/impl/minion/stomping-stegodon.js.map +0 -1
- package/dist/src/cards/impl/minion/stoneshell-guardian.js.map +0 -1
- package/dist/src/cards/impl/minion/stormpike-lieutenant.js.map +0 -1
- package/dist/src/cards/impl/minion/stray-satyr.js.map +0 -1
- package/dist/src/cards/impl/minion/stuntdrake.js.map +0 -1
- package/dist/src/cards/impl/minion/sun-screener.js.map +0 -1
- package/dist/src/cards/impl/minion/sundered-matriarch.js.map +0 -1
- package/dist/src/cards/impl/minion/sunken-advocate.js.map +0 -1
- package/dist/src/cards/impl/minion/super-constructor.js.map +0 -1
- package/dist/src/cards/impl/minion/surf-n-surf-crab-riding.js.map +0 -1
- package/dist/src/cards/impl/minion/surfing-slyvar.js.map +0 -1
- package/dist/src/cards/impl/minion/swampstriker.js.map +0 -1
- package/dist/src/cards/impl/minion/tamuzo.js.map +0 -1
- package/dist/src/cards/impl/minion/the-glad-iator.js.map +0 -1
- package/dist/src/cards/impl/minion/the-last-one-standing.js.map +0 -1
- package/dist/src/cards/impl/minion/the-uninvited-guest.js.map +0 -1
- package/dist/src/cards/impl/minion/thorncaller.js.map +0 -1
- package/dist/src/cards/impl/minion/thousandth-paper-drake.js.map +0 -1
- package/dist/src/cards/impl/minion/three-lil-quilboar.js.map +0 -1
- package/dist/src/cards/impl/minion/thundering-abomination.js.map +0 -1
- package/dist/src/cards/impl/minion/tichondrius.js.map +0 -1
- package/dist/src/cards/impl/minion/tide-raiser.js.map +0 -1
- package/dist/src/cards/impl/minion/tidemistress-athissa.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-alleycat.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-archimonde.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-arm.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-bassgill.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-bloodbinder.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-bonker.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-botani.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-bristler.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-calligrapher.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-caretaker.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-centurion.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-chameleon.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-chimera.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-clefthoof.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-collector.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-copter.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-deadstomper.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-deathswarmer.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-dragonling.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-duskmaw.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-electron.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-elegist.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-embalmer.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-expeditioner.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-festergut.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-geist.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-gemsplitter.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-geomancer.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-ghoul-acabra.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-goldrinn.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-grease-bot.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-greenskeeper.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-guard.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-hag.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-hawkstrider.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-hooktail.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-hunter.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-hyena.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-icky-imp.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-immortal.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-interpreter.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-jazzer.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-jelly-belly.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-jungle-king.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-karathress.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-kilrek.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-lab-rat.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-lil-quilboar.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-low-flier.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-magnanimoose.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-mothership.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-mrrrglr.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-murcules.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-murk-eye.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-murky.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-mythraw.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-nalaa.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-nellies-ship.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-nest-swarmer.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-painter.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-paleofin.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-pashmar.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-peggy.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-pillager.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-piper.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-primscale.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-probius.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-promo-drake.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-radio-star.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-ragnaros.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-recycler.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-red-whelp.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-rewinder.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-riplash.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-sapper.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-saurolisk.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-scourfin.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-sea-glass.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-sellemental.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-sensei.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-shadowdancer.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-spirit-of-air.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-sporebat.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-steamer.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-stone-drake.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-stoneshell.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-stormcloud.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-substrate.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-swirler.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-sylvar.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-tamuzo.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-tender.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-thorncaller.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-tide-razor.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-tony.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-traveler.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-trickster.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-twirler.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-ultralisk.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-vaelastrasz.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-wargear.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-warghoul.js.map +0 -1
- package/dist/src/cards/impl/minion/timewarped-whelp-smuggler.js.map +0 -1
- package/dist/src/cards/impl/minion/tomb-pillager.js.map +0 -1
- package/dist/src/cards/impl/minion/transmuted-bramblewitch.js.map +0 -1
- package/dist/src/cards/impl/minion/trench-fighter.js.map +0 -1
- package/dist/src/cards/impl/minion/tunnel-blaster.js.map +0 -1
- package/dist/src/cards/impl/minion/turquoise-skitterer.js.map +0 -1
- package/dist/src/cards/impl/minion/tusked-camper.js.map +0 -1
- package/dist/src/cards/impl/minion/twilight-broodmother.js.map +0 -1
- package/dist/src/cards/impl/minion/twilight-hatchling.js.map +0 -1
- package/dist/src/cards/impl/minion/twilight-primordium.js.map +0 -1
- package/dist/src/cards/impl/minion/twilight-watcher.js.map +0 -1
- package/dist/src/cards/impl/minion/twisted-wrathguard.js.map +0 -1
- package/dist/src/cards/impl/minion/ultralisk.js.map +0 -1
- package/dist/src/cards/impl/minion/ultraviolet-ascendant.js.map +0 -1
- package/dist/src/cards/impl/minion/unforgiving-treant.js.map +0 -1
- package/dist/src/cards/impl/minion/utility-drone.js.map +0 -1
- package/dist/src/cards/impl/minion/vaelastrasz.js.map +0 -1
- package/dist/src/cards/impl/minion/valiant-tiger.js.map +0 -1
- package/dist/src/cards/impl/minion/vengeful-protector.js.map +0 -1
- package/dist/src/cards/impl/minion/very-hungry-winterfinner.js.map +0 -1
- package/dist/src/cards/impl/minion/vinespeaker.js.map +0 -1
- package/dist/src/cards/impl/minion/void-earl.js.map +0 -1
- package/dist/src/cards/impl/minion/void-pup-trainer.js.map +0 -1
- package/dist/src/cards/impl/minion/void-ray.js.map +0 -1
- package/dist/src/cards/impl/minion/vorkai-guardian.js.map +0 -1
- package/dist/src/cards/impl/minion/wandering-wight.js.map +0 -1
- package/dist/src/cards/impl/minion/weebomination.js.map +0 -1
- package/dist/src/cards/impl/minion/whelp-smuggler.js.map +0 -1
- package/dist/src/cards/impl/minion/whelp-watcher.js.map +0 -1
- package/dist/src/cards/impl/minion/whirling-lass-o-matic.js.map +0 -1
- package/dist/src/cards/impl/minion/whirring-protector-enchantment.js.map +0 -1
- package/dist/src/cards/impl/minion/whirring-protector.js.map +0 -1
- package/dist/src/cards/impl/minion/wildfire-elemental.js.map +0 -1
- package/dist/src/cards/impl/minion/wisp-in-the-shell.js.map +0 -1
- package/dist/src/cards/impl/minion/witchwing-nestmatron.js.map +0 -1
- package/dist/src/cards/impl/minion/woodland-defiler.js.map +0 -1
- package/dist/src/cards/impl/minion/wrathscale-rogue.js.map +0 -1
- package/dist/src/cards/impl/minion/wyvern-outrider.js.map +0 -1
- package/dist/src/cards/impl/minion/yorik-smite.js.map +0 -1
- package/dist/src/cards/impl/minion/young-murk-eye.js.map +0 -1
- package/dist/src/cards/impl/minion/yrel.js.map +0 -1
- package/dist/src/cards/impl/minion/yulon-fortune-granter.js.map +0 -1
- package/dist/src/cards/impl/minion/zergling.js.map +0 -1
- package/dist/src/cards/impl/minion/zippers.js.map +0 -1
- package/dist/src/cards/impl/quest-reward/evil-twin.js.map +0 -1
- package/dist/src/cards/impl/quest-reward/righteous-charge.js.map +0 -1
- package/dist/src/cards/impl/quest-reward/staff-of-origination.js.map +0 -1
- package/dist/src/cards/impl/quest-reward/stolen-gold.js.map +0 -1
- package/dist/src/cards/impl/spell/fleeting-vigor.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/anglers-lure.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/azsharas-hatchery.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/crab-mount.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/deep-blues.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/escape-eruption.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/evolving-strategy.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/glowing-crown.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/gold-gun.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/harvested-pearl.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/just-keep-swimming.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/meditation.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/mini-trident.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/reinvigoration.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/rime-or-reason.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/rushing-winds.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/sick-riffs.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/sunken-spells.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/surging-scales.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/thaumaturgy.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/the-golden-hammer.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/timewarped-crown.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/timewarped-eelectrify.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/timewarped-shoal.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/undersea-mount.js.map +0 -1
- package/dist/src/cards/impl/spellcraft/veterans-tactics.js.map +0 -1
- package/dist/src/cards/impl/trinket/all-purpose-kibble.js.map +0 -1
- package/dist/src/cards/impl/trinket/archaic-scroll.js.map +0 -1
- package/dist/src/cards/impl/trinket/arm-of-the-empire.js.map +0 -1
- package/dist/src/cards/impl/trinket/artisanal-urn.js.map +0 -1
- package/dist/src/cards/impl/trinket/automaton-portrait.js.map +0 -1
- package/dist/src/cards/impl/trinket/baleful-incense.js.map +0 -1
- package/dist/src/cards/impl/trinket/bassgill-portrait.js.map +0 -1
- package/dist/src/cards/impl/trinket/battle-horn.js.map +0 -1
- package/dist/src/cards/impl/trinket/beetle-band.js.map +0 -1
- package/dist/src/cards/impl/trinket/bewitched-ribbon.js.map +0 -1
- package/dist/src/cards/impl/trinket/bird-feeder.js.map +0 -1
- package/dist/src/cards/impl/trinket/blood-amulet.js.map +0 -1
- package/dist/src/cards/impl/trinket/bloodbound-earrings.js.map +0 -1
- package/dist/src/cards/impl/trinket/bluegill-flippers.js.map +0 -1
- package/dist/src/cards/impl/trinket/bronze-timepiece.js.map +0 -1
- package/dist/src/cards/impl/trinket/bubble-crown.js.map +0 -1
- package/dist/src/cards/impl/trinket/cloud-serpent-horn.js.map +0 -1
- package/dist/src/cards/impl/trinket/comfy-coffin.js.map +0 -1
- package/dist/src/cards/impl/trinket/copper-coil.js.map +0 -1
- package/dist/src/cards/impl/trinket/coral-spear.js.map +0 -1
- package/dist/src/cards/impl/trinket/crocheted-sungill.js.map +0 -1
- package/dist/src/cards/impl/trinket/daggerspine-thrasher.js.map +0 -1
- package/dist/src/cards/impl/trinket/divine-signet.js.map +0 -1
- package/dist/src/cards/impl/trinket/dramaloc-sticker.js.map +0 -1
- package/dist/src/cards/impl/trinket/eclectic-shrine.js.map +0 -1
- package/dist/src/cards/impl/trinket/emerald-dreamcatcher.js.map +0 -1
- package/dist/src/cards/impl/trinket/eternal-portrait.js.map +0 -1
- package/dist/src/cards/impl/trinket/faerie-dragon-scale.js.map +0 -1
- package/dist/src/cards/impl/trinket/fang-anklet.js.map +0 -1
- package/dist/src/cards/impl/trinket/felburned-ledger.js.map +0 -1
- package/dist/src/cards/impl/trinket/fishy-sticker.js.map +0 -1
- package/dist/src/cards/impl/trinket/fridge-magnet.js.map +0 -1
- package/dist/src/cards/impl/trinket/ghostly-ymirjar.js.map +0 -1
- package/dist/src/cards/impl/trinket/gilnean-thorned-rose.js.map +0 -1
- package/dist/src/cards/impl/trinket/glowscale-portrait.js.map +0 -1
- package/dist/src/cards/impl/trinket/heart-of-the-forest.js +0 -17
- package/dist/src/cards/impl/trinket/heart-of-the-forest.js.map +0 -1
- package/dist/src/cards/impl/trinket/herald-sticker.js.map +0 -1
- package/dist/src/cards/impl/trinket/hoggy-bank.js.map +0 -1
- package/dist/src/cards/impl/trinket/hogwash-basin.js.map +0 -1
- package/dist/src/cards/impl/trinket/holly-mallet.js.map +0 -1
- package/dist/src/cards/impl/trinket/ironforge-anvil.js.map +0 -1
- package/dist/src/cards/impl/trinket/jar-o-gems.js.map +0 -1
- package/dist/src/cards/impl/trinket/jarred-frostling.js.map +0 -1
- package/dist/src/cards/impl/trinket/karazhan-chess-set.js.map +0 -1
- package/dist/src/cards/impl/trinket/lorewalker-scroll.js.map +0 -1
- package/dist/src/cards/impl/trinket/miniature-ship.js.map +0 -1
- package/dist/src/cards/impl/trinket/powder-keg-enchantment.js.map +0 -1
- package/dist/src/cards/impl/trinket/powder-keg.js.map +0 -1
- package/dist/src/cards/impl/trinket/protective-ring.js.map +0 -1
- package/dist/src/cards/impl/trinket/quilligraphy-set.js.map +0 -1
- package/dist/src/cards/impl/trinket/reinforced-shield.js.map +0 -1
- package/dist/src/cards/impl/trinket/rivendare-portrait.js.map +0 -1
- package/dist/src/cards/impl/trinket/rusty-trident.js.map +0 -1
- package/dist/src/cards/impl/trinket/saltscale-honcho.js.map +0 -1
- package/dist/src/cards/impl/trinket/sepulchral-sergent.js.map +0 -1
- package/dist/src/cards/impl/trinket/ship-in-a-bottle.js.map +0 -1
- package/dist/src/cards/impl/trinket/slamma-sticker.js.map +0 -1
- package/dist/src/cards/impl/trinket/stegodon-portrait.js.map +0 -1
- package/dist/src/cards/impl/trinket/sthara-sticker.js.map +0 -1
- package/dist/src/cards/impl/trinket/summoning-sphere.js.map +0 -1
- package/dist/src/cards/impl/trinket/tarecgosa-sticker.js.map +0 -1
- package/dist/src/cards/impl/trinket/thornspike-pauldron.js.map +0 -1
- package/dist/src/cards/impl/trinket/tide-raiser-portrait.js.map +0 -1
- package/dist/src/cards/impl/trinket/tiger-carving-token.js.map +0 -1
- package/dist/src/cards/impl/trinket/tinyfin-onesie.js.map +0 -1
- package/dist/src/cards/impl/trinket/training-certificate.js.map +0 -1
- package/dist/src/cards/impl/trinket/trusty-crowbar.js.map +0 -1
- package/dist/src/cards/impl/trinket/unholy-sanctum.js.map +0 -1
- package/dist/src/cards/impl/trinket/valorous-medaillion.js.map +0 -1
- package/dist/src/cards/impl/trinket/vashjir-anemone.js.map +0 -1
- package/dist/src/cards/impl/trinket/wicked-tome.js.map +0 -1
- package/dist/src/cards/impl/trinket/wildfeather-duster.js.map +0 -1
- package/dist/src/cards/impl/trinket/wintergrasp-ghoul.js.map +0 -1
- package/dist/src/cards/impl/trinket/yulon-sticker.js.map +0 -1
- package/dist/src/debug-state.js.map +0 -1
- package/dist/src/input-clone.js.map +0 -1
- package/dist/src/input-sanitation.js.map +0 -1
- package/dist/src/keywords/divine-shield.js.map +0 -1
- package/dist/src/keywords/reborn.js.map +0 -1
- package/dist/src/keywords/stealth.js.map +0 -1
- package/dist/src/keywords/taunt.js.map +0 -1
- package/dist/src/keywords/venomous.js.map +0 -1
- package/dist/src/keywords/windfury.js.map +0 -1
- package/dist/src/mechanics/cast-tavern-spell.js.map +0 -1
- package/dist/src/mechanics/player-global-effects.js.map +0 -1
- package/dist/src/mechanics/rally.js.map +0 -1
- package/dist/src/mechanics/tavern-spell-repeat.js.map +0 -1
- package/dist/src/services/card-ids.js.map +0 -1
- package/dist/src/services/hand-minion-priority.js.map +0 -1
- package/dist/src/services/utils.js.map +0 -1
- package/dist/src/simulate-bgs-battle.js.map +0 -1
- package/dist/src/simulation/add-minion-to-board.js.map +0 -1
- package/dist/src/simulation/after-attack.js.map +0 -1
- package/dist/src/simulation/attack.js.map +0 -1
- package/dist/src/simulation/auras.js.map +0 -1
- package/dist/src/simulation/avenge.js.map +0 -1
- package/dist/src/simulation/battlecries.js.map +0 -1
- package/dist/src/simulation/blood-gems.js.map +0 -1
- package/dist/src/simulation/cards-in-hand.js.map +0 -1
- package/dist/src/simulation/damage-effects.js.map +0 -1
- package/dist/src/simulation/damage-to-hero.js.map +0 -1
- package/dist/src/simulation/death-effects.js.map +0 -1
- package/dist/src/simulation/deathrattle-effects.js.map +0 -1
- package/dist/src/simulation/deathrattle-on-trigger.js.map +0 -1
- package/dist/src/simulation/deathrattle-orchestration.js.map +0 -1
- package/dist/src/simulation/deathrattle-spawns.js.map +0 -1
- package/dist/src/simulation/deathrattle-utils.js.map +0 -1
- package/dist/src/simulation/discover.js.map +0 -1
- package/dist/src/simulation/enchantments.js.map +0 -1
- package/dist/src/simulation/frenzy.js.map +0 -1
- package/dist/src/simulation/global-info-helpers.js.map +0 -1
- package/dist/src/simulation/internal-game-state.js.map +0 -1
- package/dist/src/simulation/magnetize.js.map +0 -1
- package/dist/src/simulation/minion-death.js.map +0 -1
- package/dist/src/simulation/minion-kill.js.map +0 -1
- package/dist/src/simulation/on-attack.js.map +0 -1
- package/dist/src/simulation/on-being-attacked.js.map +0 -1
- package/dist/src/simulation/quest.js.map +0 -1
- package/dist/src/simulation/reborn.js.map +0 -1
- package/dist/src/simulation/remembered-deathrattle.js.map +0 -1
- package/dist/src/simulation/remove-minion-from-board.js.map +0 -1
- package/dist/src/simulation/secrets.js.map +0 -1
- package/dist/src/simulation/shared-state.js.map +0 -1
- package/dist/src/simulation/simulator.js.map +0 -1
- package/dist/src/simulation/spawn-fail.js.map +0 -1
- package/dist/src/simulation/spawns.js.map +0 -1
- package/dist/src/simulation/spectator/game-action.js.map +0 -1
- package/dist/src/simulation/spectator/game-sample.js.map +0 -1
- package/dist/src/simulation/spectator/spectator.js.map +0 -1
- package/dist/src/simulation/start-of-combat/phases.js.map +0 -1
- package/dist/src/simulation/start-of-combat/soc-action-processor.js.map +0 -1
- package/dist/src/simulation/start-of-combat/soc-anomalies.js.map +0 -1
- package/dist/src/simulation/start-of-combat/soc-hero-power.js.map +0 -1
- package/dist/src/simulation/start-of-combat/soc-illidan-hero-power.js.map +0 -1
- package/dist/src/simulation/start-of-combat/soc-minion.js.map +0 -1
- package/dist/src/simulation/start-of-combat/soc-pre-combat-hero-power.js.map +0 -1
- package/dist/src/simulation/start-of-combat/soc-quest-reward.js.map +0 -1
- package/dist/src/simulation/start-of-combat/soc-secret.js.map +0 -1
- package/dist/src/simulation/start-of-combat/soc-trinket.js.map +0 -1
- package/dist/src/simulation/start-of-combat/start-of-combat-input.js.map +0 -1
- package/dist/src/simulation/start-of-combat/start-of-combat.js.map +0 -1
- package/dist/src/simulation/stats.js.map +0 -1
- package/dist/src/simulation/summon-when-space.js.map +0 -1
- package/dist/src/simulation/utils/entity-utils.js.map +0 -1
- package/dist/src/simulation/utils/golden.js.map +0 -1
- package/dist/src/simulation-result.js.map +0 -1
- package/dist/src/single-simulation-result.js.map +0 -1
- package/dist/src/temp-card-ids.js.map +0 -1
- package/dist/src/utils.js.map +0 -1
- package/dist/test/unit/hand-minion-priority.test.d.ts +0 -1
- package/dist/test/unit/hand-minion-priority.test.js +0 -33
- package/dist/test/unit/hand-minion-priority.test.js.map +0 -1
- /package/dist/{src/bgs-battle-info.d.ts → bgs-battle-info.d.ts} +0 -0
- /package/dist/{src/bgs-battle-info.js → bgs-battle-info.js} +0 -0
- /package/dist/{src/bgs-battle-options.d.ts → bgs-battle-options.d.ts} +0 -0
- /package/dist/{src/bgs-battle-options.js → bgs-battle-options.js} +0 -0
- /package/dist/{src/bgs-board-info.d.ts → bgs-board-info.d.ts} +0 -0
- /package/dist/{src/bgs-board-info.js → bgs-board-info.js} +0 -0
- /package/dist/{src/bgs-player-entity.d.ts → bgs-player-entity.d.ts} +0 -0
- /package/dist/{src/bgs-player-entity.js → bgs-player-entity.js} +0 -0
- /package/dist/{src/board-entity.d.ts → board-entity.d.ts} +0 -0
- /package/dist/{src/board-entity.js → board-entity.js} +0 -0
- /package/dist/{src/board-secret.d.ts → board-secret.d.ts} +0 -0
- /package/dist/{src/board-secret.js → board-secret.js} +0 -0
- /package/dist/{src/cards → cards}/card.interface.d.ts +0 -0
- /package/dist/{src/cards → cards}/card.interface.js +0 -0
- /package/dist/{src/cards → cards}/cards-data.d.ts +0 -0
- /package/dist/{src/cards → cards}/cards-data.js +0 -0
- /package/dist/{src/cards → cards}/impl/_card-mappings.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/_card-mappings.js +0 -0
- /package/dist/{src/cards → cards}/impl/anomaly/anomalous-twin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/anomaly/anomalous-twin.js +0 -0
- /package/dist/{src/cards → cards}/impl/anomaly/blessed-or-blighted.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/anomaly/blessed-or-blighted.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/arcane-absorption-bg352.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/arcane-absorption-bg352.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/azerite-empowerment.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/azerite-empowerment.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/back-to-back.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/back-to-back.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/blood-gem-barrage.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/blood-gem-barrage.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/blood-gem-quilboar-divine-shield.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/blood-gem-quilboar-divine-shield.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/blood-gem-quilboar-reborn.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/blood-gem-quilboar-reborn.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/blood-gem-quilboar-taunt.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/blood-gem-quilboar-taunt.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/boon-of-beetles.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/boon-of-beetles.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/brood-of-nozdormu.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/brood-of-nozdormu.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/butchering.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/butchering.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/chefs-choice.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/chefs-choice.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/conflagration-bg352.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/conflagration-bg352.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/deepwater-clan.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/deepwater-clan.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/eyes-of-the-earth-mother.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/eyes-of-the-earth-mother.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/friendly-bounty.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/friendly-bounty.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/hand-of-deios.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/hand-of-deios.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/healthy-bounty.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/healthy-bounty.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/hostile-bounty.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/hostile-bounty.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/jailer-sticker-306.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/jailer-sticker-306.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/jailer-sticker-733.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/jailer-sticker-733.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/menagerie-tableware.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/menagerie-tableware.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/might-of-stormwind.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/might-of-stormwind.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/murkys-fish.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/murkys-fish.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/natural-blessing.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/natural-blessing.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/ophidian-staff.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/ophidian-staff.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/queens-command.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/queens-command.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/selfish-bounty.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/selfish-bounty.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/sharing-is-caring.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/sharing-is-caring.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/shifting-tide.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/shifting-tide.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/shiny-ring.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/shiny-ring.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-bananas.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-bananas.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-chefs-choice.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-chefs-choice.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-cloning-device.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-cloning-device.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-conch.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-conch.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-corpse.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-corpse.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-evolution.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-evolution.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-goldenizer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-goldenizer.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-master-thief.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-master-thief.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-on-the-house.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-on-the-house.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-rat-in-the-cage.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-rat-in-the-cage.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-ritual.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-ritual.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-special.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-special.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-thief.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/timewarped-thief.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/tomb-turning.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/tomb-turning.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/toxic-tumbleweed.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/toxic-tumbleweed.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/upper-hand.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/upper-hand.js +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/wave-of-gold.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/bg-spell/wave-of-gold.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/aim-high.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/aim-high.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/aim-left.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/aim-left.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/aim-low.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/aim-low.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/aim-right.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/aim-right.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/all-will-burn.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/all-will-burn.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/earth-invocation.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/earth-invocation.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/embrace-your-rage.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/embrace-your-rage.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/fire-invocation.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/fire-invocation.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/fragrant-phylactery-enchantment.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/fragrant-phylactery-enchantment.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/fragrant-phylactery.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/fragrant-phylactery.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/frostwolf-fervor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/frostwolf-fervor.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/glorious-gloop.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/glorious-gloop.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/lightning-invocation.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/lightning-invocation.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/lock-and-load.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/lock-and-load.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/rapid-reanimation.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/rapid-reanimation.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/reborn-rites.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/reborn-rites.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/stormpike.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/stormpike.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/swatting-insects.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/swatting-insects.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/tentacular.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/tentacular.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/water-invocation.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/water-invocation.js +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/wax-warband.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/hero-power/wax-warband.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/abyssal-bruiser.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/abyssal-bruiser.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/admiral-eliza-goreblade.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/admiral-eliza-goreblade.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/alert-alarmist.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/alert-alarmist.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/all-seeing-elder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/all-seeing-elder.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/alleycat.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/alleycat.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/amber-guardian.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/amber-guardian.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/amplifying-lightspawn.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/amplifying-lightspawn.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ancestral-automaton.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ancestral-automaton.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/anubarak-nerubian-king.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/anubarak-nerubian-king.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/apexis-guardian.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/apexis-guardian.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/apprentice-of-sefin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/apprentice-of-sefin.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/arcane-cannoneer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/arcane-cannoneer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/archaedas.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/archaedas.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/archimonde.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/archimonde.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/arid-atrocity.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/arid-atrocity.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ashen-corruptor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ashen-corruptor.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/assistant-guard.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/assistant-guard.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/audacious-anchor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/audacious-anchor.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/auto-accelerator.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/auto-accelerator.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/auto-assembler-enchantment.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/auto-assembler-enchantment.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/auto-assembler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/auto-assembler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/avalanche-caller.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/avalanche-caller.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/azsharan-cutlassier.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/azsharan-cutlassier.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/baby-yshaarj.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/baby-yshaarj.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/balinda-stonehearth.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/balinda-stonehearth.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/banana-slamma.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/banana-slamma.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/baneling.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/baneling.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bannerboar.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bannerboar.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bassgill.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bassgill.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/battlecruiser.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/battlecruiser.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/beetle.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/beetle.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bellowing-tyrant.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bellowing-tyrant.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bg352-chromadrake-pool.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bg352-chromadrake-pool.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bigwig-bandit.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bigwig-bandit.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bile-spitter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bile-spitter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bird-buddy.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bird-buddy.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/black-chromadrake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/black-chromadrake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/blazing-skyfin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/blazing-skyfin.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bloodsnout-warlord.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bloodsnout-warlord.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/blue-chromadrake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/blue-chromadrake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/blue-volumizer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/blue-volumizer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/blue-whelp.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/blue-whelp.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bluesy-siren.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bluesy-siren.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/boar-gamer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/boar-gamer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bongo-bopper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bongo-bopper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bonker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bonker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/brazen-buccaneer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/brazen-buccaneer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/briarback-bookie.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/briarback-bookie.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/briarback-drummer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/briarback-drummer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/briny-bootlegger.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/briny-bootlegger.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bristlebach.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bristlebach.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bristleback-bully.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bristleback-bully.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bristlemane-scrapsmith.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bristlemane-scrapsmith.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bronze-chromadrake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bronze-chromadrake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bronze-steward.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bronze-steward.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bubble-gunner.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/bubble-gunner.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/budding-greenthumb.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/budding-greenthumb.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/burgeoning-whelp.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/burgeoning-whelp.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/buzzing-vermin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/buzzing-vermin.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/cadaver-caretaker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/cadaver-caretaker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/campfire-shadow.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/campfire-shadow.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/canopy-swinger.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/canopy-swinger.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/captain-bonerender.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/captain-bonerender.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/carapace-raiser.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/carapace-raiser.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/carbonic-copy.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/carbonic-copy.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/carrier.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/carrier.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/cataclysmic-harbinger.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/cataclysmic-harbinger.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/champion-of-the-primus.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/champion-of-the-primus.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/charging-czarina.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/charging-czarina.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/charlga.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/charlga.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/charmwing.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/charmwing.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/choral-mrrrglr.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/choral-mrrrglr.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/clunker-junker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/clunker-junker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/coilskar-sapper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/coilskar-sapper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/coldlight-diver.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/coldlight-diver.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/colossus.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/colossus.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/consummate-conqueror.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/consummate-conqueror.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/conveyor-construct.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/conveyor-construct.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/corrupted-bristler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/corrupted-bristler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/corrupted-myrmidon.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/corrupted-myrmidon.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/costume-enthusiast.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/costume-enthusiast.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/cousin-errgl.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/cousin-errgl.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/cruise-controller.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/cruise-controller.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/crystal-infuser-enchantment.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/crystal-infuser-enchantment.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/cupcake-peddler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/cupcake-peddler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/dastardly-drust.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/dastardly-drust.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/deadstomper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/deadstomper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/deathly-striker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/deathly-striker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/deepwater-chieftain.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/deepwater-chieftain.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/defiant-shipwright.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/defiant-shipwright.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/deflecto-bot.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/deflecto-bot.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/demon-fodder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/demon-fodder.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/determined-defender.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/determined-defender.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/devout-hellcaller.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/devout-hellcaller.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/diremuck-forager.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/diremuck-forager.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/disguised-graverobber.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/disguised-graverobber.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/divine-sparkbot.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/divine-sparkbot.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/draconic-warden.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/draconic-warden.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/drakkari-embalmer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/drakkari-embalmer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/dramaloc.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/dramaloc.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/dreaming-thornweaver.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/dreaming-thornweaver.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/drustfallen-butcher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/drustfallen-butcher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/dustbone-devastator.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/dustbone-devastator.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/earthsong-shaman.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/earthsong-shaman.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/echoing-roar.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/echoing-roar.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/efficient-engineer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/efficient-engineer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/egg-of-the-endtimes.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/egg-of-the-endtimes.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/elder-taggawag.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/elder-taggawag.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/electric-synthesizer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/electric-synthesizer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/elite-navigator.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/elite-navigator.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/enchanted-sentinel.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/enchanted-sentinel.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/eternal-tycoon.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/eternal-tycoon.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/exceptionnal-caretaker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/exceptionnal-caretaker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/expert-aviator.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/expert-aviator.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/expert-technician.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/expert-technician.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/fairy-gillmother.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/fairy-gillmother.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/falling-sky-golem.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/falling-sky-golem.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/fauna-whisperer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/fauna-whisperer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/felfire-conjurer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/felfire-conjurer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/felhorn.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/felhorn.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/festergut.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/festergut.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/fire-forged-evoker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/fire-forged-evoker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/firelands-fugitive.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/firelands-fugitive.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/firescale-hoarder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/firescale-hoarder.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/fireworks-fanatic.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/fireworks-fanatic.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/flighty-scout.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/flighty-scout.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/floating-watcher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/floating-watcher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/flotsam-flinger.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/flotsam-flinger.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/forest-rover.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/forest-rover.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/forsaken-weaver.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/forsaken-weaver.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/fountain-chiller.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/fountain-chiller.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/friendly-bouncer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/friendly-bouncer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/friendly-geist.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/friendly-geist.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/frostwolf-lieutenant.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/frostwolf-lieutenant.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/futurefin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/futurefin.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/geared-guard.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/geared-guard.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gem-rat.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gem-rat.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gem-smuggler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gem-smuggler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gemsplitter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gemsplitter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/general-drakkisath.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/general-drakkisath.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gentle-djinni.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gentle-djinni.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gentle-stag.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gentle-stag.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ghoul-of-the-feast.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ghoul-of-the-feast.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gilded-gargoyle.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gilded-gargoyle.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gleaming-trader.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gleaming-trader.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/glowgullet-warlord.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/glowgullet-warlord.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/glowing-cinder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/glowing-cinder.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gluttonous-trogg.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gluttonous-trogg.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/goldgrubber.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/goldgrubber.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/goldrinn-the-great-wolf.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/goldrinn-the-great-wolf.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gormling-gourmet.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gormling-gourmet.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/grease-bot.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/grease-bot.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/greedy-snaketongue.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/greedy-snaketongue.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/green-chromadrake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/green-chromadrake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/green-volumizer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/green-volumizer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/greenskeeper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/greenskeeper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/grimscale-elegist.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/grimscale-elegist.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gritty-headhunter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/gritty-headhunter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hackerfin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hackerfin.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/handless-forsaken.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/handless-forsaken.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hardy-orca.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hardy-orca.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/harmless-bonehead.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/harmless-bonehead.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hawkstrider-herald.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hawkstrider-herald.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/heroic-underdog.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/heroic-underdog.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/highkeeper-ra.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/highkeeper-ra.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hired-ritualist.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hired-ritualist.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hoarding-hatespawn.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hoarding-hatespawn.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hog-watcher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hog-watcher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/holo-rover.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/holo-rover.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hot-springer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hot-springer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/humming-bird.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/humming-bird.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/humongozz.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/humongozz.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hungry-snapjaw.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hungry-snapjaw.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hunter-of-gatherers.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hunter-of-gatherers.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hunting-tiger-shark.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hunting-tiger-shark.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hydralisk.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/hydralisk.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/icesnarl-the-mighty.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/icesnarl-the-mighty.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ignition-specialist.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ignition-specialist.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/immortal.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/immortal.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/implant-subject.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/implant-subject.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/imposing-percussionist.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/imposing-percussionist.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/impulsive-trickster.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/impulsive-trickster.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/incubation-researcher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/incubation-researcher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/indomitable-mount.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/indomitable-mount.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/inspiring-underdog.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/inspiring-underdog.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/interrogator-whitemane.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/interrogator-whitemane.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/irate-rooster.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/irate-rooster.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/jelly-belly.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/jelly-belly.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/junk-jouster.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/junk-jouster.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/kalecgos-arcane-aspect.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/kalecgos-arcane-aspect.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/kangors-apprentice.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/kangors-apprentice.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/karmic-chameleon.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/karmic-chameleon.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/king-bagurgle.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/king-bagurgle.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/laboratory-assistant.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/laboratory-assistant.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/leeroy-the-reckless.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/leeroy-the-reckless.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/leyline-surfacer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/leyline-surfacer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lightfang-enforcer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lightfang-enforcer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lightfeather-screecher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lightfeather-screecher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/living-azerite.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/living-azerite.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lokholar-frostforger.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lokholar-frostforger.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lord-of-the-ruins.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lord-of-the-ruins.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lost-city-looter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lost-city-looter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lovesick-balladist.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lovesick-balladist.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/low-flier.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/low-flier.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lurker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lurker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lurking-leviathan.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/lurking-leviathan.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/maelstrom-emergent.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/maelstrom-emergent.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/magicfin-apprentice.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/magicfin-apprentice.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/malorne.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/malorne.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mama-mrrglton.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mama-mrrglton.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/manasaber.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/manasaber.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mantid-queen.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mantid-queen.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/marquee-ticker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/marquee-ticker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/master-gadrin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/master-gadrin.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/maw-caster.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/maw-caster.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mecha-jaraxxus.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mecha-jaraxxus.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mechagnome-interpreter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mechagnome-interpreter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mechanized-gift-horse.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mechanized-gift-horse.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mechorse.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mechorse.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/menagerie-jug.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/menagerie-jug.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/metal-dispenser.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/metal-dispenser.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/metallic-hunter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/metallic-hunter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/misfit-dragonling.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/misfit-dragonling.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/monstrosity.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/monstrosity.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/monstrous-macaw.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/monstrous-macaw.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/moon-bacon-jazzer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/moon-bacon-jazzer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/moonsteel-juggernaut.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/moonsteel-juggernaut.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mothership.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mothership.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mummifier.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mummifier.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/murcules.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/murcules.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/murkbrine-expeditioner.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/murkbrine-expeditioner.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/murky-spash-fisher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/murky-spash-fisher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/murky.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/murky.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mutalisk.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mutalisk.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mutated-lasher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mutated-lasher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mythrax.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/mythrax.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nalaa-the-redeemer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nalaa-the-redeemer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/neon-agent.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/neon-agent.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nerubian-deathswarmer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nerubian-deathswarmer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nest-swarmer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nest-swarmer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nether-drake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nether-drake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nightbane-ignited.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nightbane-ignited.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nightmare-par-tea-guest.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nightmare-par-tea-guest.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nimble-hatchling.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/nimble-hatchling.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/niuzao.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/niuzao.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/noisul-of-the-many-faces.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/noisul-of-the-many-faces.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/obisidian-ravager.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/obisidian-ravager.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/old-soul.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/old-soul.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/oozeling-gladiator.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/oozeling-gladiator.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/operatic-belcher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/operatic-belcher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/oranomonos-the-wilted.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/oranomonos-the-wilted.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/outback-smolderer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/outback-smolderer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/paint-smudger.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/paint-smudger.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/papa-mrrglton.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/papa-mrrglton.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/parched-wanderer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/parched-wanderer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/pashmar-the-vengeful.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/pashmar-the-vengeful.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/peggy-sturdybone.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/peggy-sturdybone.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/photobomber.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/photobomber.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/pilot-the-shredder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/pilot-the-shredder.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/piloted-whirl-o-tron.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/piloted-whirl-o-tron.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/plaguerunner.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/plaguerunner.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/plankwalker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/plankwalker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/polarizing-beatboxer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/polarizing-beatboxer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/poultron.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/poultron.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/primalfin-lookout.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/primalfin-lookout.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/primeval-monstrosity.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/primeval-monstrosity.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/prized-promo-drake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/prized-promo-drake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/prodigious-tusker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/prodigious-tusker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/profound-thinker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/profound-thinker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/proud-privateer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/proud-privateer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/psychus.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/psychus.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/pufferquil.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/pufferquil.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/radio-star.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/radio-star.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/rampager.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/rampager.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/rapscallion-recruiter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/rapscallion-recruiter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/raptor-elder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/raptor-elder.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/razorfen-flapper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/razorfen-flapper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/razorfen-geomancer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/razorfen-geomancer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/razorfen-vineweaver.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/razorfen-vineweaver.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/razorgore-the-untamed.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/razorgore-the-untamed.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/reckless-cliffdiver.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/reckless-cliffdiver.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/red-chromadrake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/red-chromadrake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/red-volumizer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/red-volumizer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/red-whelp.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/red-whelp.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/redtusk-thornraiser.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/redtusk-thornraiser.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/relentless-deflector.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/relentless-deflector.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/rickety-repairbot.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/rickety-repairbot.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ride-or-die.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ride-or-die.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ring-bearer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ring-bearer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ripsnarl-captain.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ripsnarl-captain.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/roach.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/roach.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/roadboar.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/roadboar.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/roaring-rallier.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/roaring-rallier.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/rodeo-performer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/rodeo-performer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/roving-sailor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/roving-sailor.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ruins-renovator.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ruins-renovator.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/runed-progenitor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/runed-progenitor.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ruthless-queensguard.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ruthless-queensguard.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/rylak-metalhead.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/rylak-metalhead.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/salty-hog.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/salty-hog.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sanctum-rester.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sanctum-rester.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sand-swirler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sand-swirler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sandy.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sandy.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sanguine-refiner.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sanguine-refiner.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sanlayn-scribe.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sanlayn-scribe.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scallywag.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scallywag.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scarlet-skull.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scarlet-skull.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scarlet-survivor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scarlet-survivor.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scourfin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scourfin.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scourge-harvester.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scourge-harvester.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scrap-scraper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/scrap-scraper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/seafloor-recruiter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/seafloor-recruiter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/selfless-hero.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/selfless-hero.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sewer-lord.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sewer-lord.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sewer-rat.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sewer-rat.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/shadowdancer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/shadowdancer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/shadowy-construct.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/shadowy-construct.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sharp-eyed-sabretooth.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sharp-eyed-sabretooth.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sharptooth-snapper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sharptooth-snapper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/shell-collector.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/shell-collector.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ship-jumper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ship-jumper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ship-master-eudora.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ship-master-eudora.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/shipwrecked-rascal.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/shipwrecked-rascal.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/shore-marauder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/shore-marauder.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/showy-cyclist.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/showy-cyclist.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/silent-enforcer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/silent-enforcer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/silithid-burrower.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/silithid-burrower.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/silky-shimmermoth.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/silky-shimmermoth.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/silver-handed-recruit.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/silver-handed-recruit.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sinodorei-straight-shot.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sinodorei-straight-shot.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sinrunner-blanchy.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sinrunner-blanchy.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/skeletal-strafer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/skeletal-strafer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/skulking-bristlemane.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/skulking-bristlemane.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sky-pirate-flagbearer-enchantment.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sky-pirate-flagbearer-enchantment.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sky-pirate-flagbearer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sky-pirate-flagbearer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sleepy-supporter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sleepy-supporter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/slumber-sorcerer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/slumber-sorcerer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sly-raptor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sly-raptor.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/smolderwing.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/smolderwing.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/snack-vendor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/snack-vendor.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/soul-rewinder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/soul-rewinder.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/soulsplitter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/soulsplitter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/spacefarer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/spacefarer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/spellbound-soul.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/spellbound-soul.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/spirit-drake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/spirit-drake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/spirit-of-air.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/spirit-of-air.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/spirited-whimsydrake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/spirited-whimsydrake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/springy-spriggan.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/springy-spriggan.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stalwart-kodo.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stalwart-kodo.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stellar-freebooter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stellar-freebooter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stitched-salvager.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stitched-salvager.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stomping-stegodon-enchantment.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stomping-stegodon-enchantment.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stomping-stegodon.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stomping-stegodon.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stoneshell-guardian.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stoneshell-guardian.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stormpike-lieutenant.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stormpike-lieutenant.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stray-satyr.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stray-satyr.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stuntdrake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/stuntdrake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sun-screener.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sun-screener.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sundered-matriarch.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sundered-matriarch.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sunken-advocate.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/sunken-advocate.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/super-constructor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/super-constructor.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/surf-n-surf-crab-riding.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/surf-n-surf-crab-riding.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/surfing-slyvar.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/surfing-slyvar.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/swampstriker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/swampstriker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tamuzo.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tamuzo.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/the-glad-iator.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/the-glad-iator.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/the-last-one-standing.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/the-last-one-standing.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/the-uninvited-guest.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/the-uninvited-guest.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/thorncaller.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/thorncaller.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/thousandth-paper-drake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/thousandth-paper-drake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/three-lil-quilboar.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/three-lil-quilboar.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/thundering-abomination.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/thundering-abomination.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tichondrius.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tichondrius.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tide-raiser.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tide-raiser.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tidemistress-athissa.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tidemistress-athissa.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-alleycat.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-alleycat.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-archimonde.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-archimonde.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-arm.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-arm.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-bassgill.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-bassgill.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-bloodbinder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-bloodbinder.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-bonker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-bonker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-botani.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-botani.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-bristler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-bristler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-calligrapher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-calligrapher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-caretaker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-caretaker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-centurion.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-centurion.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-chameleon.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-chameleon.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-chimera.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-chimera.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-clefthoof.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-clefthoof.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-collector.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-collector.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-copter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-copter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-deadstomper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-deadstomper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-deathswarmer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-deathswarmer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-dragonling.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-dragonling.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-duskmaw.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-duskmaw.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-electron.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-electron.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-elegist.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-elegist.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-embalmer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-embalmer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-expeditioner.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-expeditioner.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-festergut.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-festergut.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-geist.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-geist.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-gemsplitter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-gemsplitter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-geomancer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-geomancer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-ghoul-acabra.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-ghoul-acabra.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-goldrinn.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-goldrinn.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-grease-bot.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-grease-bot.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-greenskeeper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-greenskeeper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-guard.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-guard.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-hag.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-hag.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-hawkstrider.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-hawkstrider.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-hooktail.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-hooktail.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-hunter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-hunter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-hyena.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-hyena.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-icky-imp.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-icky-imp.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-immortal.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-immortal.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-interpreter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-interpreter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-jazzer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-jazzer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-jelly-belly.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-jelly-belly.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-jungle-king.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-jungle-king.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-karathress.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-karathress.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-kilrek.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-kilrek.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-lab-rat.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-lab-rat.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-lil-quilboar.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-lil-quilboar.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-low-flier.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-low-flier.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-magnanimoose.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-magnanimoose.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-mothership.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-mothership.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-mrrrglr.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-mrrrglr.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-murcules.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-murcules.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-murk-eye.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-murk-eye.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-murky.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-murky.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-mythraw.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-mythraw.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-nalaa.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-nalaa.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-nellies-ship.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-nellies-ship.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-nest-swarmer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-nest-swarmer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-painter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-painter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-paleofin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-paleofin.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-pashmar.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-pashmar.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-peggy.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-peggy.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-pillager.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-pillager.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-piper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-piper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-primscale.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-primscale.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-probius.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-probius.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-promo-drake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-promo-drake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-radio-star.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-radio-star.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-ragnaros.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-ragnaros.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-recycler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-recycler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-red-whelp.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-red-whelp.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-rewinder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-rewinder.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-riplash.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-riplash.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sapper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sapper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-saurolisk.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-saurolisk.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-scourfin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-scourfin.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sea-glass.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sea-glass.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sellemental.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sellemental.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sensei.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sensei.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-shadowdancer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-shadowdancer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-spirit-of-air.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-spirit-of-air.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sporebat.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sporebat.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-steamer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-steamer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-stone-drake.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-stone-drake.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-stoneshell.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-stoneshell.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-stormcloud.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-stormcloud.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-substrate.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-substrate.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-swirler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-swirler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sylvar.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-sylvar.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-tamuzo.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-tamuzo.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-tender.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-tender.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-thorncaller.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-thorncaller.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-tide-razor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-tide-razor.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-tony.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-tony.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-traveler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-traveler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-trickster.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-trickster.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-twirler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-twirler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-ultralisk.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-ultralisk.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-vaelastrasz.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-vaelastrasz.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-wargear.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-wargear.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-warghoul.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-warghoul.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-whelp-smuggler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/timewarped-whelp-smuggler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tomb-pillager.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tomb-pillager.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/transmuted-bramblewitch.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/transmuted-bramblewitch.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/trench-fighter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/trench-fighter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tunnel-blaster.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tunnel-blaster.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/turquoise-skitterer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/turquoise-skitterer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tusked-camper.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/tusked-camper.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/twilight-broodmother.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/twilight-broodmother.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/twilight-hatchling.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/twilight-hatchling.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/twilight-primordium.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/twilight-primordium.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/twilight-watcher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/twilight-watcher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/twisted-wrathguard.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/twisted-wrathguard.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ultralisk.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ultralisk.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ultraviolet-ascendant.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/ultraviolet-ascendant.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/unforgiving-treant.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/unforgiving-treant.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/utility-drone.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/utility-drone.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/vaelastrasz.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/vaelastrasz.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/valiant-tiger.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/valiant-tiger.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/vengeful-protector.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/vengeful-protector.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/very-hungry-winterfinner.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/very-hungry-winterfinner.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/vinespeaker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/vinespeaker.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/void-earl.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/void-earl.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/void-pup-trainer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/void-pup-trainer.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/void-ray.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/void-ray.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/vorkai-guardian.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/vorkai-guardian.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/wandering-wight.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/wandering-wight.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/weebomination.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/weebomination.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/whelp-smuggler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/whelp-smuggler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/whelp-watcher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/whelp-watcher.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/whirling-lass-o-matic.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/whirling-lass-o-matic.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/whirring-protector-enchantment.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/whirring-protector-enchantment.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/whirring-protector.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/whirring-protector.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/wildfire-elemental.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/wildfire-elemental.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/wisp-in-the-shell.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/wisp-in-the-shell.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/witchwing-nestmatron.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/witchwing-nestmatron.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/woodland-defiler.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/woodland-defiler.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/wrathscale-rogue.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/wrathscale-rogue.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/wyvern-outrider.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/wyvern-outrider.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/yorik-smite.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/yorik-smite.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/young-murk-eye.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/young-murk-eye.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/yrel.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/yrel.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/yulon-fortune-granter.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/yulon-fortune-granter.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/zergling.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/zergling.js +0 -0
- /package/dist/{src/cards → cards}/impl/minion/zippers.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/minion/zippers.js +0 -0
- /package/dist/{src/cards → cards}/impl/quest-reward/evil-twin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/quest-reward/evil-twin.js +0 -0
- /package/dist/{src/cards → cards}/impl/quest-reward/righteous-charge.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/quest-reward/righteous-charge.js +0 -0
- /package/dist/{src/cards → cards}/impl/quest-reward/staff-of-origination.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/quest-reward/staff-of-origination.js +0 -0
- /package/dist/{src/cards → cards}/impl/quest-reward/stolen-gold.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/quest-reward/stolen-gold.js +0 -0
- /package/dist/{src/cards → cards}/impl/spell/fleeting-vigor.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spell/fleeting-vigor.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/anglers-lure.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/anglers-lure.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/azsharas-hatchery.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/azsharas-hatchery.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/crab-mount.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/crab-mount.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/deep-blues.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/deep-blues.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/escape-eruption.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/escape-eruption.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/evolving-strategy.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/evolving-strategy.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/glowing-crown.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/glowing-crown.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/gold-gun.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/gold-gun.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/harvested-pearl.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/harvested-pearl.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/just-keep-swimming.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/just-keep-swimming.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/meditation.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/meditation.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/mini-trident.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/mini-trident.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/reinvigoration.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/reinvigoration.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/rime-or-reason.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/rime-or-reason.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/rushing-winds.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/rushing-winds.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/sick-riffs.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/sick-riffs.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/sunken-spells.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/sunken-spells.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/surging-scales.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/surging-scales.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/thaumaturgy.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/thaumaturgy.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/the-golden-hammer.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/the-golden-hammer.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/timewarped-crown.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/timewarped-crown.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/timewarped-eelectrify.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/timewarped-eelectrify.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/timewarped-shoal.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/timewarped-shoal.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/undersea-mount.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/undersea-mount.js +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/veterans-tactics.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/spellcraft/veterans-tactics.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/all-purpose-kibble.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/all-purpose-kibble.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/archaic-scroll.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/archaic-scroll.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/arm-of-the-empire.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/arm-of-the-empire.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/artisanal-urn.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/artisanal-urn.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/automaton-portrait.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/automaton-portrait.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/baleful-incense.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/baleful-incense.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bassgill-portrait.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bassgill-portrait.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/battle-horn.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/battle-horn.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/beetle-band.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/beetle-band.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bewitched-ribbon.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bewitched-ribbon.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bird-feeder.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bird-feeder.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/blood-amulet.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/blood-amulet.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bloodbound-earrings.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bloodbound-earrings.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bluegill-flippers.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bluegill-flippers.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bronze-timepiece.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bronze-timepiece.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bubble-crown.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/bubble-crown.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/cloud-serpent-horn.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/cloud-serpent-horn.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/comfy-coffin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/comfy-coffin.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/copper-coil.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/copper-coil.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/coral-spear.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/coral-spear.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/crocheted-sungill.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/crocheted-sungill.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/daggerspine-thrasher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/daggerspine-thrasher.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/divine-signet.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/divine-signet.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/dramaloc-sticker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/dramaloc-sticker.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/eclectic-shrine.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/eclectic-shrine.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/emerald-dreamcatcher.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/emerald-dreamcatcher.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/eternal-portrait.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/eternal-portrait.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/faerie-dragon-scale.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/faerie-dragon-scale.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/fang-anklet.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/fang-anklet.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/felburned-ledger.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/felburned-ledger.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/fishy-sticker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/fishy-sticker.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/fridge-magnet.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/fridge-magnet.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/ghostly-ymirjar.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/ghostly-ymirjar.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/gilnean-thorned-rose.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/gilnean-thorned-rose.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/glowscale-portrait.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/glowscale-portrait.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/heart-of-the-forest.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/herald-sticker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/herald-sticker.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/hoggy-bank.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/hoggy-bank.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/hogwash-basin.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/hogwash-basin.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/holly-mallet.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/holly-mallet.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/ironforge-anvil.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/ironforge-anvil.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/jar-o-gems.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/jar-o-gems.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/jarred-frostling.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/jarred-frostling.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/karazhan-chess-set.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/karazhan-chess-set.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/lorewalker-scroll.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/lorewalker-scroll.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/miniature-ship.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/miniature-ship.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/powder-keg-enchantment.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/powder-keg-enchantment.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/powder-keg.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/powder-keg.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/protective-ring.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/protective-ring.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/quilligraphy-set.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/quilligraphy-set.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/reinforced-shield.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/reinforced-shield.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/rivendare-portrait.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/rivendare-portrait.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/rusty-trident.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/rusty-trident.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/saltscale-honcho.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/saltscale-honcho.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/sepulchral-sergent.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/sepulchral-sergent.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/ship-in-a-bottle.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/ship-in-a-bottle.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/slamma-sticker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/slamma-sticker.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/stegodon-portrait.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/stegodon-portrait.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/sthara-sticker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/sthara-sticker.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/summoning-sphere.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/summoning-sphere.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/tarecgosa-sticker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/tarecgosa-sticker.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/thornspike-pauldron.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/thornspike-pauldron.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/tide-raiser-portrait.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/tide-raiser-portrait.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/tiger-carving-token.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/tiger-carving-token.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/tinyfin-onesie.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/tinyfin-onesie.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/training-certificate.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/training-certificate.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/trusty-crowbar.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/trusty-crowbar.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/unholy-sanctum.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/unholy-sanctum.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/valorous-medaillion.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/valorous-medaillion.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/vashjir-anemone.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/vashjir-anemone.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/wicked-tome.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/wicked-tome.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/wildfeather-duster.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/wildfeather-duster.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/wintergrasp-ghoul.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/wintergrasp-ghoul.js +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/yulon-sticker.d.ts +0 -0
- /package/dist/{src/cards → cards}/impl/trinket/yulon-sticker.js +0 -0
- /package/dist/{src/debug-state.d.ts → debug-state.d.ts} +0 -0
- /package/dist/{src/debug-state.js → debug-state.js} +0 -0
- /package/dist/{src/input-clone.d.ts → input-clone.d.ts} +0 -0
- /package/dist/{src/input-clone.js → input-clone.js} +0 -0
- /package/dist/{src/input-sanitation.d.ts → input-sanitation.d.ts} +0 -0
- /package/dist/{src/input-sanitation.js → input-sanitation.js} +0 -0
- /package/dist/{src/keywords → keywords}/divine-shield.d.ts +0 -0
- /package/dist/{src/keywords → keywords}/divine-shield.js +0 -0
- /package/dist/{src/keywords → keywords}/reborn.d.ts +0 -0
- /package/dist/{src/keywords → keywords}/reborn.js +0 -0
- /package/dist/{src/keywords → keywords}/stealth.d.ts +0 -0
- /package/dist/{src/keywords → keywords}/stealth.js +0 -0
- /package/dist/{src/keywords → keywords}/taunt.d.ts +0 -0
- /package/dist/{src/keywords → keywords}/taunt.js +0 -0
- /package/dist/{src/keywords → keywords}/venomous.d.ts +0 -0
- /package/dist/{src/keywords → keywords}/venomous.js +0 -0
- /package/dist/{src/keywords → keywords}/windfury.d.ts +0 -0
- /package/dist/{src/keywords → keywords}/windfury.js +0 -0
- /package/dist/{src/mechanics → mechanics}/cast-tavern-spell.d.ts +0 -0
- /package/dist/{src/mechanics → mechanics}/cast-tavern-spell.js +0 -0
- /package/dist/{src/mechanics → mechanics}/player-global-effects.d.ts +0 -0
- /package/dist/{src/mechanics → mechanics}/player-global-effects.js +0 -0
- /package/dist/{src/mechanics → mechanics}/rally.d.ts +0 -0
- /package/dist/{src/mechanics → mechanics}/rally.js +0 -0
- /package/dist/{src/mechanics → mechanics}/tavern-spell-repeat.d.ts +0 -0
- /package/dist/{src/mechanics → mechanics}/tavern-spell-repeat.js +0 -0
- /package/dist/{src/services → services}/card-ids.d.ts +0 -0
- /package/dist/{src/services → services}/card-ids.js +0 -0
- /package/dist/{src/services → services}/hand-minion-priority.d.ts +0 -0
- /package/dist/{src/services → services}/hand-minion-priority.js +0 -0
- /package/dist/{src/services → services}/utils.d.ts +0 -0
- /package/dist/{src/services → services}/utils.js +0 -0
- /package/dist/{src/simulate-bgs-battle.d.ts → simulate-bgs-battle.d.ts} +0 -0
- /package/dist/{src/simulate-bgs-battle.js → simulate-bgs-battle.js} +0 -0
- /package/dist/{src/simulation → simulation}/add-minion-to-board.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/add-minion-to-board.js +0 -0
- /package/dist/{src/simulation → simulation}/after-attack.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/after-attack.js +0 -0
- /package/dist/{src/simulation → simulation}/attack.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/attack.js +0 -0
- /package/dist/{src/simulation → simulation}/auras.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/auras.js +0 -0
- /package/dist/{src/simulation → simulation}/avenge.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/avenge.js +0 -0
- /package/dist/{src/simulation → simulation}/battlecries.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/battlecries.js +0 -0
- /package/dist/{src/simulation → simulation}/blood-gems.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/blood-gems.js +0 -0
- /package/dist/{src/simulation → simulation}/cards-in-hand.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/cards-in-hand.js +0 -0
- /package/dist/{src/simulation → simulation}/damage-effects.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/damage-effects.js +0 -0
- /package/dist/{src/simulation → simulation}/damage-to-hero.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/damage-to-hero.js +0 -0
- /package/dist/{src/simulation → simulation}/death-effects.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/death-effects.js +0 -0
- /package/dist/{src/simulation → simulation}/deathrattle-effects.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/deathrattle-effects.js +0 -0
- /package/dist/{src/simulation → simulation}/deathrattle-on-trigger.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/deathrattle-on-trigger.js +0 -0
- /package/dist/{src/simulation → simulation}/deathrattle-orchestration.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/deathrattle-orchestration.js +0 -0
- /package/dist/{src/simulation → simulation}/deathrattle-spawns.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/deathrattle-spawns.js +0 -0
- /package/dist/{src/simulation → simulation}/deathrattle-utils.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/deathrattle-utils.js +0 -0
- /package/dist/{src/simulation → simulation}/discover.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/discover.js +0 -0
- /package/dist/{src/simulation → simulation}/enchantments.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/enchantments.js +0 -0
- /package/dist/{src/simulation → simulation}/frenzy.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/frenzy.js +0 -0
- /package/dist/{src/simulation → simulation}/global-info-helpers.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/global-info-helpers.js +0 -0
- /package/dist/{src/simulation → simulation}/internal-game-state.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/internal-game-state.js +0 -0
- /package/dist/{src/simulation → simulation}/magnetize.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/magnetize.js +0 -0
- /package/dist/{src/simulation → simulation}/minion-death.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/minion-death.js +0 -0
- /package/dist/{src/simulation → simulation}/minion-kill.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/minion-kill.js +0 -0
- /package/dist/{src/simulation → simulation}/on-attack.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/on-attack.js +0 -0
- /package/dist/{src/simulation → simulation}/on-being-attacked.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/on-being-attacked.js +0 -0
- /package/dist/{src/simulation → simulation}/quest.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/quest.js +0 -0
- /package/dist/{src/simulation → simulation}/reborn.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/reborn.js +0 -0
- /package/dist/{src/simulation → simulation}/remembered-deathrattle.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/remembered-deathrattle.js +0 -0
- /package/dist/{src/simulation → simulation}/remove-minion-from-board.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/remove-minion-from-board.js +0 -0
- /package/dist/{src/simulation → simulation}/secrets.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/secrets.js +0 -0
- /package/dist/{src/simulation → simulation}/shared-state.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/shared-state.js +0 -0
- /package/dist/{src/simulation → simulation}/simulator.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/simulator.js +0 -0
- /package/dist/{src/simulation → simulation}/spawn-fail.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/spawn-fail.js +0 -0
- /package/dist/{src/simulation → simulation}/spawns.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/spawns.js +0 -0
- /package/dist/{src/simulation → simulation}/spectator/game-action.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/spectator/game-action.js +0 -0
- /package/dist/{src/simulation → simulation}/spectator/game-sample.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/spectator/game-sample.js +0 -0
- /package/dist/{src/simulation → simulation}/spectator/spectator.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/spectator/spectator.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/phases.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/phases.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-action-processor.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-action-processor.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-anomalies.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-anomalies.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-hero-power.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-hero-power.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-illidan-hero-power.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-illidan-hero-power.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-minion.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-minion.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-pre-combat-hero-power.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-pre-combat-hero-power.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-quest-reward.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-quest-reward.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-secret.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-secret.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-trinket.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/soc-trinket.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/start-of-combat-input.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/start-of-combat-input.js +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/start-of-combat.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/start-of-combat/start-of-combat.js +0 -0
- /package/dist/{src/simulation → simulation}/stats.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/stats.js +0 -0
- /package/dist/{src/simulation → simulation}/summon-when-space.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/summon-when-space.js +0 -0
- /package/dist/{src/simulation → simulation}/utils/entity-utils.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/utils/entity-utils.js +0 -0
- /package/dist/{src/simulation → simulation}/utils/golden.d.ts +0 -0
- /package/dist/{src/simulation → simulation}/utils/golden.js +0 -0
- /package/dist/{src/simulation-result.d.ts → simulation-result.d.ts} +0 -0
- /package/dist/{src/simulation-result.js → simulation-result.js} +0 -0
- /package/dist/{src/single-simulation-result.d.ts → single-simulation-result.d.ts} +0 -0
- /package/dist/{src/single-simulation-result.js → single-simulation-result.js} +0 -0
- /package/dist/{src/temp-card-ids.d.ts → temp-card-ids.d.ts} +0 -0
- /package/dist/{src/temp-card-ids.js → temp-card-ids.js} +0 -0
- /package/dist/{src/utils.d.ts → utils.d.ts} +0 -0
- /package/dist/{src/utils.js → utils.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"quest.js","sourceRoot":"","sources":["../../../src/simulation/quest.ts"],"names":[],"mappings":";;;AAKO,MAAM,sBAAsB,GAAG,CACrC,YAA6B,EAC7B,KAAqB,EACrB,KAAoB,EACpB,SAAwB,EACvB,EAAE;IACH,KAAK,CAAC,eAAe,EAAE,CAAC;IACxB,IAAI,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,aAAa,EAAE;QAChD,OAAO;KACP;IAED,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;IACtE,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7C,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC;QACrC,MAAM,EAAE,YAAY;QACpB,QAAQ,EAAE,SAAS,CAAC,WAAW,CAAC,eAAe,EAAE;QACjD,aAAa,EAAE,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC;QAC5D,aAAa,EAAE,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC;QAC5D,cAAc,EAAE,SAAS,CAAC,SAAS,CAAC,oBAAoB,CAAC,YAAY,CAAC;KACtE,CAAC,CAAC;IAGH,YAAY,CAAC,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;IAEjG,4BAA4B,CAAC,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;AAC5E,CAAC,CAAC;AAzBW,QAAA,sBAAsB,0BAyBjC;AAEF,MAAM,4BAA4B,GAAG,CACpC,YAAoB,EACpB,KAAoB,EACpB,YAA6B,EAC7B,SAAwB,EACvB,EAAE;IACH,QAAQ,YAAY,EAAE;QACrB;YACC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACnB,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;YACf,CAAC,CAAC,CAAC;YACH,MAAM;QACP;YACC,MAAM;KACP;AACF,CAAC,CAAC","sourcesContent":["import { CardIds } from '../services/card-ids';\nimport { BgsPlayerEntity, BgsQuestEntity } from '../bgs-player-entity';\r\nimport { BoardEntity } from '../board-entity';\r\nimport { FullGameState } from './internal-game-state';\r\n\r\nexport const onQuestProgressUpdated = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tquest: BgsQuestEntity,\r\n\tboard: BoardEntity[],\r\n\tgameState: FullGameState,\r\n) => {\r\n\tquest.ProgressCurrent++;\r\n\tif (quest.ProgressCurrent < quest.ProgressTotal) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tconst rewardCardId = gameState.allCards.getCard(quest.RewardDbfId).id;\r\n\tplayerEntity.questRewards.push(rewardCardId);\r\n\tplayerEntity.questRewardEntities.push({\r\n\t\tcardId: rewardCardId,\r\n\t\tentityId: gameState.sharedState.currentEntityId++,\r\n\t\tavengeDefault: gameState.cardsData.avengeValue(rewardCardId),\r\n\t\tavengeCurrent: gameState.cardsData.avengeValue(rewardCardId),\r\n\t\tscriptDataNum1: gameState.cardsData.defaultScriptDataNum(rewardCardId),\r\n\t});\r\n\r\n\t// Remove the quest from the list of quests\r\n\tplayerEntity.questEntities = playerEntity.questEntities.filter((q) => q.CardId !== quest.CardId);\r\n\r\n\tupdateStateAfterQuestCreated(rewardCardId, board, playerEntity, gameState);\r\n};\r\n\r\nconst updateStateAfterQuestCreated = (\r\n\trewardCardId: string,\r\n\tboard: BoardEntity[],\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n) => {\r\n\tswitch (rewardCardId) {\r\n\t\tcase CardIds.TheSmokingGun:\r\n\t\t\tboard.forEach((e) => {\r\n\t\t\t\te.attack += 4;\r\n\t\t\t});\r\n\t\t\tbreak;\r\n\t\tdefault:\r\n\t\t\tbreak;\r\n\t}\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reborn.js","sourceRoot":"","sources":["../../../src/simulation/reborn.ts"],"names":[],"mappings":"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","sourcesContent":["import { BgsPlayerEntity } from '../bgs-player-entity';\r\nimport { BoardEntity } from '../board-entity';\r\nimport { hasRebornEffect, hasRebornSelfEffect } from '../cards/card.interface';\r\nimport {\r\n\tbuildSinrunnerBlanchyRebornEntity,\r\n\tisSinrunnerBlanchy,\r\n} from '../cards/impl/minion/sinrunner-blanchy';\r\nimport { cardMappings } from '../cards/impl/_card-mappings';\r\nimport { CardIds } from '../services/card-ids';\r\nimport { addStatsToBoard } from '../utils';\r\nimport { spawnEntities } from './deathrattle-spawns';\r\nimport { FullGameState } from './internal-game-state';\r\nimport { performEntitySpawns } from './spawns';\r\nimport { modifyStats } from './stats';\r\n\r\nexport const handleRebornForEntity = (\r\n\tboardWithKilledMinion: BoardEntity[],\r\n\tboardWithKilledMinionHero: BgsPlayerEntity,\r\n\tdeadEntity: BoardEntity,\r\n\tdeadMinionIndexFromRight: number,\r\n\topponentBoard: BoardEntity[],\r\n\topponentBoardHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tconst numberOfReborns = 1;\r\n\tlet entityToSpawn: BoardEntity = null;\r\n\tif (\r\n\t\tisSinrunnerBlanchy(deadEntity.cardId) ||\r\n\t\tdeadEntity.enchantments?.some(\r\n\t\t\t(e) => e.cardId === CardIds.UltraCapacitor_UltraCapacitorEnchantment_BG31_HERO_801ptje,\r\n\t\t)\r\n\t) {\r\n\t\tentityToSpawn = buildSinrunnerBlanchyRebornEntity(deadEntity);\r\n\t}\r\n\tconst entitiesFromReborn: readonly BoardEntity[] =\r\n\t\tdeadEntity.reborn && deadMinionIndexFromRight >= 0\r\n\t\t\t? spawnEntities(\r\n\t\t\t\t\tdeadEntity.cardId,\r\n\t\t\t\t\tnumberOfReborns,\r\n\t\t\t\t\tboardWithKilledMinion,\r\n\t\t\t\t\tboardWithKilledMinionHero,\r\n\t\t\t\t\topponentBoard,\r\n\t\t\t\t\topponentBoardHero,\r\n\t\t\t\t\tgameState,\r\n\t\t\t\t\tdeadEntity.friendly,\r\n\t\t\t\t\tfalse,\r\n\t\t\t\t\ttrue,\r\n\t\t\t\t\ttrue,\r\n\t\t\t\t\tentityToSpawn,\r\n\t\t\t\t\tdeadEntity,\r\n\t\t\t )\r\n\t\t\t: [];\r\n\tif (!entitiesFromReborn.length) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tif (\r\n\t\tdeadEntity.cardId === CardIds.WannabeGargoyle_BG30_109 ||\r\n\t\tdeadEntity.cardId === CardIds.WannabeGargoyle_BG30_109_G\r\n\t) {\r\n\t\tentitiesFromReborn.forEach((e) => {\r\n\t\t\tconst attack = deadEntity.maxAttack;\r\n\t\t\tconst health = deadEntity.cardId === CardIds.WannabeGargoyle_BG30_109_G ? deadEntity.maxHealth : 1;\r\n\t\t\te.attack = attack;\r\n\t\t\te.health = health;\r\n\t\t});\r\n\t}\r\n\r\n\tfor (const entity of entitiesFromReborn) {\r\n\t\tconst rebornImpl = cardMappings[entity.cardId];\r\n\t\tif (hasRebornSelfEffect(rebornImpl)) {\r\n\t\t\trebornImpl.rebornSelfEffect(entity, {\r\n\t\t\t\trebornEntity: deadEntity,\r\n\t\t\t\tboardWithKilledMinion,\r\n\t\t\t\tboardWithKilledMinionHero,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\topponentBoardHero,\r\n\t\t\t\tgameState,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tfor (const entity of boardWithKilledMinion) {\r\n\t\tconst rebornImpl = cardMappings[entity.cardId];\r\n\t\tif (hasRebornEffect(rebornImpl)) {\r\n\t\t\trebornImpl.rebornEffect(entity, {\r\n\t\t\t\trebornEntity: deadEntity,\r\n\t\t\t\tboardWithKilledMinion,\r\n\t\t\t\tboardWithKilledMinionHero,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\topponentBoardHero,\r\n\t\t\t\tgameState,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tconst entitiesThatWereReborn = performEntitySpawns(\r\n\t\tentitiesFromReborn,\r\n\t\tboardWithKilledMinion,\r\n\t\tboardWithKilledMinionHero,\r\n\t\tdeadEntity,\r\n\t\tdeadMinionIndexFromRight,\r\n\t\topponentBoard,\r\n\t\topponentBoardHero,\r\n\t\tgameState,\r\n\t);\r\n\tentitiesThatWereReborn.forEach((e) => (e.rebornFromEntityId = deadEntity.entityId));\r\n\tconst entityRightToSpawns =\r\n\t\tdeadMinionIndexFromRight === 0\r\n\t\t\t? null\r\n\t\t\t: boardWithKilledMinion[boardWithKilledMinion.length - deadMinionIndexFromRight];\r\n\tentitiesThatWereReborn.forEach((entity) => {\r\n\t\tentity.hasAttacked = deadEntity.hasAttacked > 1 ? 1 : entityRightToSpawns?.hasAttacked ?? undefined;\r\n\t});\r\n\r\n\t// Arfus\r\n\tboardWithKilledMinion\r\n\t\t.filter(\r\n\t\t\t(e) =>\r\n\t\t\t\te.cardId === CardIds.Arfus_TB_BaconShop_HERO_22_Buddy ||\r\n\t\t\t\te.cardId === CardIds.Arfus_TB_BaconShop_HERO_22_Buddy_G,\r\n\t\t)\r\n\t\t.forEach((arfus) => {\r\n\t\t\tconst multiplier = arfus.cardId === CardIds.Arfus_TB_BaconShop_HERO_22_Buddy_G ? 2 : 1;\r\n\t\t\tconst attackBonus = arfus.attack * multiplier;\r\n\t\t\tentitiesThatWereReborn\r\n\t\t\t\t.filter((e) => e.entityId !== arfus.entityId && e.rebornFromEntityId !== arfus.entityId)\r\n\t\t\t\t.forEach((e) => {\r\n\t\t\t\t\tmodifyStats(e, arfus, attackBonus, 0, boardWithKilledMinion, boardWithKilledMinionHero, gameState);\r\n\t\t\t\t});\r\n\t\t});\r\n\r\n\tconst numberOfTriggersForDeathwhisper = Math.min(entitiesThatWereReborn.length, 1);\r\n\tfor (let i = 0; i < numberOfTriggersForDeathwhisper; i++) {\r\n\t\tboardWithKilledMinion\r\n\t\t\t.filter(\r\n\t\t\t\t(e) =>\r\n\t\t\t\t\te.cardId === CardIds.SisterDeathwhisper_BG25_020 ||\r\n\t\t\t\t\te.cardId === CardIds.SisterDeathwhisper_BG25_020_G,\r\n\t\t\t)\r\n\t\t\t.forEach((e) => {\r\n\t\t\t\tconst multiplier = e.cardId === CardIds.SisterDeathwhisper_BG25_020_G ? 2 : 1;\r\n\t\t\t\taddStatsToBoard(\r\n\t\t\t\t\te,\r\n\t\t\t\t\tboardWithKilledMinion,\r\n\t\t\t\t\tboardWithKilledMinionHero,\r\n\t\t\t\t\tmultiplier * 1,\r\n\t\t\t\t\tmultiplier * 3,\r\n\t\t\t\t\tgameState,\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t}\r\n};\r\n\r\nexport interface RebornEffectInput {\r\n\treadonly rebornEntity: BoardEntity;\r\n\treadonly boardWithKilledMinion: BoardEntity[];\r\n\treadonly boardWithKilledMinionHero: BgsPlayerEntity;\r\n\treadonly opponentBoard: BoardEntity[];\r\n\treadonly opponentBoardHero: BgsPlayerEntity;\r\n\treadonly gameState: FullGameState;\r\n}\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remembered-deathrattle.js","sourceRoot":"","sources":["../../../src/simulation/remembered-deathrattle.ts"],"names":[],"mappings":";;;AAGA,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAE3B,MAAM,4BAA4B,GAAG,CAAC,sBAA0C,EAAsB,EAAE;IAC9G,MAAM,UAAU,GAAG,sBAAsB;SACvC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,WAAC,OAAA,MAAA,WAAW,CAAC,MAAM,0CAAE,UAAU,YAA8B,CAAA,EAAA,CAAC;SACrF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACV,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC5B,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC;SACxC;QACD,OAAO,CAAC,CAAC;IACV,CAAC,CAAC,CAAC;IACJ,MAAM,YAAY,GAAG,iBAAiB,CACrC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,gBAAyD,CAAC,CAC3F,CAAC;IACF,MAAM,YAAY,GAAG,iBAAiB,CACrC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,kBAA2D,CAAC,CAC7F,CAAC;IACF,OAAO,CAAC,GAAG,YAAY,EAAE,GAAG,YAAY,CAAC,CAAC;AAC3C,CAAC,CAAC;AAhBW,QAAA,4BAA4B,gCAgBvC;AAEF,MAAM,iBAAiB,GAAG,CAAC,UAA8B,EAAsB,EAAE;IAChF,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC7E,IAAI,YAAY,IAAI,sBAAsB,EAAE;QAC3C,OAAO,UAAU,CAAC;KAClB;IAED,MAAM,MAAM,GAAuB,EAAE,CAAC;IACtC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,sBAAsB,CAAC,CAAC;IACzE,IAAI,WAAW,GAAG,YAAY,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,sBAAsB,EAAE,CAAC,EAAE,EAAE;QAChD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;QACzD,WAAW,IAAI,YAAY,CAAC;KAC5B;IACD,OAAO,MAAM,CAAC;AACf,CAAC,CAAC","sourcesContent":["import { BoardEnchantment } from '../board-entity';\r\nimport { CardIds } from '../services/card-ids';\r\n\r\nconst MAX_LEAPFROGGER_GROUPS = 12;\r\n\r\nexport const groupLeapfroggerDeathrattles = (rememberedDeathrattles: BoardEnchantment[]): BoardEnchantment[] => {\r\n\tconst candidates = rememberedDeathrattles\r\n\t\t.filter((deathrattle) => deathrattle.cardId?.startsWith(CardIds.Leapfrogger_BG21_000))\r\n\t\t.map((d) => {\r\n\t\t\tif (!d.cardId.endsWith('e')) {\r\n\t\t\t\treturn { ...d, cardId: `${d.cardId}e` };\r\n\t\t\t}\r\n\t\t\treturn d;\r\n\t\t});\r\n\tconst normalGroups = groupDeathrattles(\r\n\t\tcandidates.filter((d) => d.cardId === CardIds.Leapfrogger_LeapfrogginEnchantment_BG21_000e),\r\n\t);\r\n\tconst goldenGroups = groupDeathrattles(\r\n\t\tcandidates.filter((d) => d.cardId === CardIds.Leapfrogger_LeapfrogginEnchantment_BG21_000_Ge),\r\n\t);\r\n\treturn [...normalGroups, ...goldenGroups];\r\n};\r\n\r\nconst groupDeathrattles = (candidates: BoardEnchantment[]): BoardEnchantment[] => {\r\n\tconst totalRepeats = candidates.reduce((acc, next) => acc + next.repeats, 0);\r\n\tif (totalRepeats <= MAX_LEAPFROGGER_GROUPS) {\r\n\t\treturn candidates;\r\n\t}\r\n\r\n\tconst result: BoardEnchantment[] = [];\r\n\tconst repeatsPerGroup = Math.ceil(totalRepeats / MAX_LEAPFROGGER_GROUPS);\r\n\tlet repeatsLeft = totalRepeats;\r\n\tfor (let i = 0; i < MAX_LEAPFROGGER_GROUPS; i++) {\r\n\t\tconst groupRepeats = Math.min(repeatsPerGroup, repeatsLeft);\r\n\t\tresult.push({ ...candidates[0], repeats: groupRepeats });\r\n\t\trepeatsLeft -= groupRepeats;\r\n\t}\r\n\treturn result;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remove-minion-from-board.js","sourceRoot":"","sources":["../../../src/simulation/remove-minion-from-board.ts"],"names":[],"mappings":"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","sourcesContent":["import { CardIds } from '../services/card-ids';\nimport { Race } from '@firestone-hs/reference-data';\nimport { BgsPlayerEntity } from '../bgs-player-entity';\r\nimport { BoardEntity } from '../board-entity';\r\nimport { hasCorrectTribe } from '../utils';\r\nimport { FullGameState } from './internal-game-state';\r\nimport { cardMappings } from '../cards/impl/_card-mappings';\r\nimport { hasOnDespawned } from '../cards/card.interface';\r\n\r\nexport const removeMinionFromBoard = (\r\n\tboard: BoardEntity[],\r\n\tboardHero: BgsPlayerEntity,\r\n\tindex: number,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tconst removedEntity = board.splice(index, 1)[0];\r\n\thandleMinionRemovedAuraEffect(board, removedEntity, boardHero, gameState);\r\n};\r\n\r\nexport const handleMinionRemovedAuraEffect = (\r\n\tboard: BoardEntity[],\r\n\tremoved: BoardEntity,\r\n\tboardHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tconst onDespawnedImpl = cardMappings[removed.cardId];\r\n\tif (hasOnDespawned(onDespawnedImpl)) {\r\n\t\tonDespawnedImpl.onDespawned(removed, {\r\n\t\t\thero: boardHero,\r\n\t\t\tboard: board,\r\n\t\t\tgameState,\r\n\t\t});\r\n\t}\r\n\r\n\tswitch (removed.cardId) {\r\n\t\tcase CardIds.MurlocWarleaderLegacy_BG_EX1_507:\r\n\t\tcase CardIds.MurlocWarleaderLegacy_TB_BaconUps_008:\r\n\t\t\tboard\r\n\t\t\t\t.filter((e) => hasCorrectTribe(e, boardHero, Race.MURLOC, gameState.anomalies, gameState.allCards))\r\n\t\t\t\t.forEach((e) => {\r\n\t\t\t\t\tconst diff = removed.cardId === CardIds.MurlocWarleaderLegacy_TB_BaconUps_008 ? 4 : 2;\r\n\t\t\t\t\te.attack = Math.max(0, e.attack - diff);\r\n\t\t\t\t});\r\n\t\t\tbreak;\r\n\t\tcase CardIds.SouthseaCaptainLegacy_BG_NEW1_027:\r\n\t\tcase CardIds.SouthseaCaptainLegacy_TB_BaconUps_136:\r\n\t\t\t// console.debug('removing southsea captain', stringifySimpleCard(removed, allCards), stringifySimple(board, allCards));\r\n\t\t\tboard\r\n\t\t\t\t.filter((e) => hasCorrectTribe(e, boardHero, Race.PIRATE, gameState.anomalies, gameState.allCards))\r\n\t\t\t\t.forEach((e) => {\r\n\t\t\t\t\tconst diff = removed.cardId === CardIds.SouthseaCaptainLegacy_TB_BaconUps_136 ? 2 : 1;\r\n\t\t\t\t\te.attack = Math.max(0, e.attack - diff);\r\n\t\t\t\t\te.health = Math.max(1, e.health - diff);\r\n\t\t\t\t});\r\n\t\t\t// console.debug('after removing southsea captain', stringifySimpleCard(removed, allCards), stringifySimple(board, allCards));\r\n\t\t\tbreak;\r\n\t\t// case CardIds.Kathranatir_BG21_039:\r\n\t\t// case CardIds.Kathranatir_BG21_039_G:\r\n\t\t// \tboard\r\n\t\t// \t\t.filter((e) => hasCorrectTribe(e, boardHero, Race.DEMON, gameState.anomalies, gameState.allCards))\r\n\t\t// \t\t.forEach((e) => {\r\n\t\t// \t\t\tconst diff = removed.cardId === CardIds.Kathranatir_BG21_039_G ? 4 : 2;\r\n\t\t// \t\t\te.attack = Math.max(0, e.attack - diff);\r\n\t\t// \t\t});\r\n\t\t// \tbreak;\r\n\t\tcase CardIds.CyborgDrake_BG25_043:\r\n\t\tcase CardIds.CyborgDrake_BG25_043_G:\r\n\t\t\tboard\r\n\t\t\t\t.filter((e) => e.divineShield)\r\n\t\t\t\t.forEach((e) => {\r\n\t\t\t\t\tconst diff = removed.cardId === CardIds.CyborgDrake_BG25_043_G ? 12 : 6;\r\n\t\t\t\t\te.attack = Math.max(0, e.attack - diff);\r\n\t\t\t\t});\r\n\t\t\tbreak;\r\n\t\tcase CardIds.SoreLoser_BG27_030:\r\n\t\tcase CardIds.SoreLoser_BG27_030_G:\r\n\t\t\tboard\r\n\t\t\t\t.filter((e) => hasCorrectTribe(e, boardHero, Race.UNDEAD, gameState.anomalies, gameState.allCards))\r\n\t\t\t\t.forEach((e) => {\r\n\t\t\t\t\tconst diff = (removed.cardId === CardIds.SoreLoser_BG27_030_G ? 2 : 1) * boardHero.tavernTier;\r\n\t\t\t\t\te.attack = Math.max(0, e.attack - diff);\r\n\t\t\t\t});\r\n\t\t\tbreak;\r\n\t}\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../../src/simulation/secrets.ts"],"names":[],"mappings":"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","sourcesContent":["import { BgsPlayerEntity } from '../bgs-player-entity';\r\nimport { BoardEntity } from '../board-entity';\r\nimport { CardIds } from '../services/card-ids';\r\nimport { copyEntity } from '../utils';\r\nimport { removeAurasFromSelf } from './add-minion-to-board';\r\nimport { spawnEntities } from './deathrattle-spawns';\r\nimport { FullGameState } from './internal-game-state';\r\nimport { performEntitySpawns } from './spawns';\r\n\r\nexport const handleSplittingImage = (\r\n\tdefendingEntity: BoardEntity,\r\n\tdefendingBoard: BoardEntity[],\r\n\tdefendingPlayerEntity: BgsPlayerEntity,\r\n\tattackerBoard: BoardEntity[],\r\n\tattackerHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tconst copy: BoardEntity = {\r\n\t\t...defendingEntity,\r\n\t\tattack: 3,\r\n\t\thealth: 3,\r\n\t\tmaxHealth: 3,\r\n\t};\r\n\tconst candidateEntities = spawnEntities(\r\n\t\tdefendingEntity.cardId,\r\n\t\t1,\r\n\t\tdefendingBoard,\r\n\t\tdefendingPlayerEntity,\r\n\t\tattackerBoard,\r\n\t\tattackerHero,\r\n\t\tgameState,\r\n\t\tdefendingEntity.friendly,\r\n\t\tfalse,\r\n\t\tfalse,\r\n\t\ttrue,\r\n\t\tcopy,\r\n\t);\r\n\tconst indexFromRight = defendingBoard.length - (defendingBoard.indexOf(defendingEntity) + 1);\r\n\tperformEntitySpawns(\r\n\t\tcandidateEntities,\r\n\t\tdefendingBoard,\r\n\t\tdefendingPlayerEntity,\r\n\t\tdefendingEntity,\r\n\t\tindexFromRight,\r\n\t\tattackerBoard,\r\n\t\tattackerHero,\r\n\t\tgameState,\r\n\t);\r\n};\r\n\r\nexport const handlePackTactics = (\r\n\tdefendingEntity: BoardEntity,\r\n\tdefendingBoard: BoardEntity[],\r\n\tdefendingPlayerEntity: BgsPlayerEntity,\r\n\tattackerBoard: BoardEntity[],\r\n\tattackerHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n\tsecretCardId: string,\r\n): void => {\r\n\tconst copy: BoardEntity = copyEntity(defendingEntity);\r\n\tremoveAurasFromSelf(copy, defendingBoard, defendingPlayerEntity, gameState);\r\n\tconst candidateEntities = spawnEntities(\r\n\t\tcopy.cardId,\r\n\t\t1,\r\n\t\tdefendingBoard,\r\n\t\tdefendingPlayerEntity,\r\n\t\tattackerBoard,\r\n\t\tattackerHero,\r\n\t\tgameState,\r\n\t\tdefendingEntity.friendly,\r\n\t\tfalse,\r\n\t\tfalse,\r\n\t\ttrue,\r\n\t\tcopy,\r\n\t);\r\n\tif (secretCardId === CardIds.PackTactics_TB_Bacon_Secrets_15) {\r\n\t\t// Don't use setEntityStats, because it will be applied when adding the minion to the board\r\n\t\tcandidateEntities.forEach((e) => {\r\n\t\t\te.health = 3;\r\n\t\t\te.maxHealth = 3;\r\n\t\t\te.attack = 3;\r\n\t\t\te.maxAttack = 3;\r\n\t\t});\r\n\t\t//setEntityStats(e, 3, 3, defendingBoard, defendingPlayerEntity, gameState));\r\n\t}\r\n\tconst indexFromRight = defendingBoard.length - (defendingBoard.indexOf(defendingEntity) + 1);\r\n\tconst spawned = performEntitySpawns(\r\n\t\tcandidateEntities,\r\n\t\tdefendingBoard,\r\n\t\tdefendingPlayerEntity,\r\n\t\tdefendingEntity,\r\n\t\tindexFromRight,\r\n\t\tattackerBoard,\r\n\t\tattackerHero,\r\n\t\tgameState,\r\n\t);\r\n\tspawned.forEach((e) => {\r\n\t\t// Might be a HS bug\r\n\t\t// 33.6.2 https://replays.firestoneapp.com/?reviewId=06e89a29-8f63-4c55-bdac-d908ed6e5857&turn=9&action=1\r\n\t\te.hasAttacked = defendingEntity.hasAttacked;\r\n\t});\r\n};\r\n\r\nexport const handleSnakeTrap = (\r\n\tdefendingEntity: BoardEntity,\r\n\tdefendingBoard: BoardEntity[],\r\n\tdefendingPlayerEntity: BgsPlayerEntity,\r\n\tattackerBoard: BoardEntity[],\r\n\tattackerHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n): void => {\r\n\tconst candidateEntities: readonly BoardEntity[] = spawnEntities(\r\n\t\tCardIds.SnakeTrap_SnakeLegacyToken,\r\n\t\t3,\r\n\t\tdefendingBoard,\r\n\t\tdefendingPlayerEntity,\r\n\t\tattackerBoard,\r\n\t\tattackerHero,\r\n\t\tgameState,\r\n\t\tdefendingEntity.friendly,\r\n\t\tfalse,\r\n\t);\r\n\tperformEntitySpawns(\r\n\t\tcandidateEntities,\r\n\t\tdefendingBoard,\r\n\t\tdefendingPlayerEntity,\r\n\t\tdefendingEntity,\r\n\t\t0,\r\n\t\tattackerBoard,\r\n\t\tattackerHero,\r\n\t\tgameState,\r\n\t);\r\n};\r\n\r\nexport const handleVenomstrikeTrap = (\r\n\tdefendingEntity: BoardEntity,\r\n\tdefendingBoard: BoardEntity[],\r\n\tdefendingPlayerEntity: BgsPlayerEntity,\r\n\tattackerBoard: BoardEntity[],\r\n\tattackerHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n) => {\r\n\tconst candidateEntities: readonly BoardEntity[] = spawnEntities(\r\n\t\tCardIds.EmperorCobraLegacy_BG_EX1_170,\r\n\t\t1,\r\n\t\tdefendingBoard,\r\n\t\tdefendingPlayerEntity,\r\n\t\tattackerBoard,\r\n\t\tattackerHero,\r\n\t\tgameState,\r\n\t\tdefendingEntity.friendly,\r\n\t\tfalse,\r\n\t);\r\n\tconst spawns = performEntitySpawns(\r\n\t\tcandidateEntities,\r\n\t\tdefendingBoard,\r\n\t\tdefendingPlayerEntity,\r\n\t\tdefendingEntity,\r\n\t\t0,\r\n\t\tattackerBoard,\r\n\t\tattackerHero,\r\n\t\tgameState,\r\n\t);\r\n\treturn spawns;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shared-state.js","sourceRoot":"","sources":["../../../src/simulation/shared-state.ts"],"names":[],"mappings":";;;AAEA,MAAa,WAAW;IASvB;QANO,cAAS,GAAsB,EAAE,CAAC;QAClC,oBAAe,GAAG,CAAC,CAAC;QACpB,4BAAuB,GAAG,IAAI,CAAC;QAC/B,WAAM,GAAkB,EAAE,CAAC;QAC3B,UAAK,GAAG,KAAK,CAAC;QAGpB,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,YAAY,CAAC;IACvC,CAAC;;AAVa,wBAAY,GAAG,KAAK,AAAR,CAAS;AADvB,kCAAW","sourcesContent":["import { BoardEntity } from '../board-entity';\r\n\r\nexport class SharedState {\r\n\tpublic static debugEnabled = false;\r\n\r\n\tpublic anomalies: readonly string[] = [];\r\n\tpublic currentEntityId = 1;\r\n\tpublic currentAttackerEntityId = null;\r\n\tpublic deaths: BoardEntity[] = [];\r\n\tpublic debug = false;\r\n\r\n\tconstructor() {\r\n\t\tthis.debug = SharedState.debugEnabled;\r\n\t}\r\n}\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"simulator.js","sourceRoot":"","sources":["../../../src/simulation/simulator.ts"],"names":[],"mappings":"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","sourcesContent":["import { getEffectiveTechLevel } from '@firestone-hs/reference-data';\r\nimport { BgsPlayerEntity } from '../bgs-player-entity';\r\nimport { BoardEntity } from '../board-entity';\r\nimport { debugState } from '../debug-state';\r\nimport { SingleSimulationResult } from '../single-simulation-result';\r\nimport { stringifySimple, stringifySimpleCard } from '../utils';\r\nimport { simulateAttack } from './attack';\r\nimport { clearStealthIfNeeded } from './auras';\r\nimport { FullGameState, PlayerState } from './internal-game-state';\r\nimport { handleStartOfCombat } from './start-of-combat/start-of-combat';\r\nimport { handleSummonsWhenSpace } from './summon-when-space';\r\n\r\n// New simulator should be instantiated for each match\r\nexport class Simulator {\r\n\tprivate currentAttacker: number;\r\n\tprivate currentSpeedAttacker = -1;\r\n\r\n\tprivate hasShowShortCircuitWarning = false;\r\n\r\n\t// It should come already initialized\r\n\tconstructor(private readonly gameState: FullGameState) {}\r\n\r\n\t// Here we suppose that the BoardEntity only contain at most the enchantments that are linked\r\n\t// to auras (so we probably should hand-filter that, since there are actually few auras)\r\n\tpublic simulateSingleBattle(playerState: PlayerState, opponentState: PlayerState): SingleSimulationResult {\r\n\t\tlet playerBoard: BoardEntity[] = playerState.board;\r\n\t\tlet playerEntity: BgsPlayerEntity = playerState.player;\r\n\t\tlet opponentBoard: BoardEntity[] = opponentState.board;\r\n\t\tlet opponentEntity: BgsPlayerEntity = opponentState.player;\r\n\r\n\t\tconst allEntityIds = [\r\n\t\t\t...playerBoard.flatMap((entity) => [\r\n\t\t\t\tentity.entityId,\r\n\t\t\t\t...(entity.enchantments?.map((e) => e.originEntityId) ?? []),\r\n\t\t\t]),\r\n\t\t\t...opponentBoard.flatMap((entity) => [\r\n\t\t\t\tentity.entityId,\r\n\t\t\t\t...(entity.enchantments?.map((e) => e.originEntityId) ?? []),\r\n\t\t\t]),\r\n\t\t\t...(playerEntity.hand?.flatMap((entity) => [\r\n\t\t\t\tentity.entityId,\r\n\t\t\t\t...(entity.enchantments?.map((e) => e.originEntityId) ?? []),\r\n\t\t\t]) ?? []),\r\n\t\t\t...(opponentEntity.hand?.flatMap((entity) => [\r\n\t\t\t\tentity.entityId,\r\n\t\t\t\t...(entity.enchantments?.map((e) => e.originEntityId) ?? []),\r\n\t\t\t]) ?? []),\r\n\t\t];\r\n\t\tthis.gameState.sharedState.currentEntityId = Math.max(...allEntityIds) + 1;\r\n\r\n\t\twhile (\r\n\t\t\t!playerEntity.startOfCombatDone ||\r\n\t\t\t!opponentEntity.startOfCombatDone ||\r\n\t\t\t(playerBoard?.length > 0 && opponentBoard?.length > 0)\r\n\t\t) {\r\n\t\t\tconst allEntityIds = [\r\n\t\t\t\t...playerBoard.flatMap((entity) => {\r\n\t\t\t\t\tconst result = [entity.entityId, ...(entity.enchantments?.map((e) => e.originEntityId) ?? [])];\r\n\t\t\t\t\tif (result.length > 200) {\r\n\t\t\t\t\t\tconsole.log(\r\n\t\t\t\t\t\t\t'too many entities for entity',\r\n\t\t\t\t\t\t\tresult.length,\r\n\t\t\t\t\t\t\tstringifySimpleCard(entity, this.gameState.allCards),\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn result;\r\n\t\t\t\t}),\r\n\t\t\t\t...opponentBoard.flatMap((entity) => {\r\n\t\t\t\t\tconst result = [entity.entityId, ...(entity.enchantments?.map((e) => e.originEntityId) ?? [])];\r\n\t\t\t\t\tif (result.length > 200) {\r\n\t\t\t\t\t\tconsole.log(\r\n\t\t\t\t\t\t\t'too many entities for entity',\r\n\t\t\t\t\t\t\tresult.length,\r\n\t\t\t\t\t\t\tstringifySimpleCard(entity, this.gameState.allCards),\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn result;\r\n\t\t\t\t}),\r\n\t\t\t\t...playerEntity.hand.flatMap((entity) => {\r\n\t\t\t\t\tconst result = [entity.entityId, ...(entity.enchantments?.map((e) => e.originEntityId) ?? [])];\r\n\t\t\t\t\tif (result.length > 200) {\r\n\t\t\t\t\t\tconsole.log(\r\n\t\t\t\t\t\t\t'too many entities for entity',\r\n\t\t\t\t\t\t\tresult.length,\r\n\t\t\t\t\t\t\tstringifySimpleCard(entity, this.gameState.allCards),\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn result;\r\n\t\t\t\t}),\r\n\t\t\t\t...opponentEntity.hand.flatMap((entity) => {\r\n\t\t\t\t\tconst result = [entity.entityId, ...(entity.enchantments?.map((e) => e.originEntityId) ?? [])];\r\n\t\t\t\t\tif (result.length > 200) {\r\n\t\t\t\t\t\tconsole.log(\r\n\t\t\t\t\t\t\t'too many entities for entity',\r\n\t\t\t\t\t\t\tresult.length,\r\n\t\t\t\t\t\t\tstringifySimpleCard(entity, this.gameState.allCards),\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn result;\r\n\t\t\t\t}),\r\n\t\t\t];\r\n\t\t\tif (allEntityIds.length > 10000) {\r\n\t\t\t\tconsole.log('allEntityIds2', allEntityIds, new Error().stack);\r\n\t\t\t}\r\n\t\t\tthis.simulateSingleBattlePass(playerBoard, playerEntity, opponentBoard, opponentEntity);\r\n\t\t\tif (this.hasShowShortCircuitWarning) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\t// The only case where there can only 0-attack minions on a board is when both boards\r\n\t\t\t// are that way (otherwise one side would kill the other)\r\n\t\t\tconst areBothBoards0Attack =\r\n\t\t\t\tplayerState.board.length > 0 &&\r\n\t\t\t\tplayerState.board.every((entity) => entity.attack === 0) &&\r\n\t\t\t\topponentState.board.length > 0 &&\r\n\t\t\t\topponentState.board.every((entity) => entity.attack === 0);\r\n\t\t\tif (areBothBoards0Attack) {\r\n\t\t\t\tplayerState.board = [];\r\n\t\t\t\topponentState.board = [];\r\n\t\t\t}\r\n\r\n\t\t\tconst isPlayerDefeated = playerState.board.length === 0 || playerState.player.hpLeft <= 0;\r\n\t\t\tconst isOpponentDefeated = opponentState.board.length === 0 || opponentState.player.hpLeft <= 0;\r\n\t\t\tif (isPlayerDefeated) {\r\n\t\t\t\tplayerBoard = playerState.teammate?.board;\r\n\t\t\t\tplayerState.board = [];\r\n\t\t\t\tplayerEntity = playerState.teammate?.player;\r\n\t\t\t} else {\r\n\t\t\t\tplayerBoard = playerState.board;\r\n\t\t\t\tplayerEntity = playerState.player;\r\n\t\t\t}\r\n\t\t\tif (isOpponentDefeated) {\r\n\t\t\t\topponentBoard = opponentState.teammate?.board;\r\n\t\t\t\topponentState.board = [];\r\n\t\t\t\topponentEntity = opponentState.teammate?.player;\r\n\t\t\t} else {\r\n\t\t\t\topponentBoard = opponentState.board;\r\n\t\t\t\topponentEntity = opponentState.player;\r\n\t\t\t}\r\n\t\t\t// So that gameState.player always refers to the active player\r\n\t\t\tif (isPlayerDefeated) {\r\n\t\t\t\t// Reset deaths\r\n\t\t\t\tthis.gameState.sharedState.deaths = this.gameState.sharedState.deaths.filter(\r\n\t\t\t\t\t(e) => e.friendly !== this.gameState.gameState.player.player.friendly,\r\n\t\t\t\t);\r\n\t\t\t\tthis.gameState.gameState.player.teammate = {\r\n\t\t\t\t\tboard: this.gameState.gameState.player.board,\r\n\t\t\t\t\tplayer: this.gameState.gameState.player.player,\r\n\t\t\t\t};\r\n\t\t\t\tthis.gameState.gameState.player.player = playerEntity;\r\n\t\t\t\tthis.gameState.gameState.player.board = playerBoard;\r\n\r\n\t\t\t\t// const initialPlayer = this.gameState.gameState.playerInitial;\r\n\t\t\t\t// const initialPlayerTeammate = initialPlayer.teammate;\r\n\t\t\t}\r\n\t\t\tif (isOpponentDefeated) {\r\n\t\t\t\t// Reset deaths\r\n\t\t\t\tthis.gameState.sharedState.deaths = this.gameState.sharedState.deaths.filter(\r\n\t\t\t\t\t(e) => e.friendly !== this.gameState.gameState.opponent.player.friendly,\r\n\t\t\t\t);\r\n\t\t\t\tthis.gameState.gameState.opponent.teammate = {\r\n\t\t\t\t\tboard: this.gameState.gameState.opponent.board,\r\n\t\t\t\t\tplayer: this.gameState.gameState.opponent.player,\r\n\t\t\t\t};\r\n\t\t\t\tthis.gameState.gameState.opponent.player = opponentEntity;\r\n\t\t\t\tthis.gameState.gameState.opponent.board = opponentBoard;\r\n\t\t\t}\r\n\r\n\t\t\tif (!playerEntity || !opponentEntity) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (\r\n\t\t\t(!playerBoard?.length && !opponentBoard?.length) ||\r\n\t\t\t// E.g. when both players have a 0-attack minion\r\n\t\t\t(playerBoard?.length > 0 && opponentBoard?.length > 0)\r\n\t\t) {\r\n\t\t\treturn {\r\n\t\t\t\tresult: 'tied',\r\n\t\t\t} as SingleSimulationResult;\r\n\t\t}\r\n\t\tif (!playerBoard?.length || playerEntity.hpLeft <= 0) {\r\n\t\t\tconst damage =\r\n\t\t\t\tthis.buildBoardTotalDamage(opponentBoard, this.gameState.gameState.opponent?.teammate?.board) +\r\n\t\t\t\topponentEntity.tavernTier;\r\n\t\t\tthis.gameState.spectator.registerOpponentAttack(playerBoard, opponentBoard, damage);\r\n\t\t\treturn {\r\n\t\t\t\tresult: 'lost',\r\n\t\t\t\tdamageDealt: damage,\r\n\t\t\t};\r\n\t\t}\r\n\r\n\t\tconst damage =\r\n\t\t\tthis.buildBoardTotalDamage(playerBoard, this.gameState.gameState.player?.teammate?.board) +\r\n\t\t\tplayerEntity.tavernTier;\r\n\t\tthis.gameState.spectator.registerPlayerAttack(playerBoard, opponentBoard, damage);\r\n\t\treturn {\r\n\t\t\tresult: 'won',\r\n\t\t\tdamageDealt: damage,\r\n\t\t};\r\n\t}\r\n\r\n\tprivate simulateSingleBattlePass(\r\n\t\tplayerBoard: BoardEntity[],\r\n\t\tplayerEntity: BgsPlayerEntity,\r\n\t\topponentBoard: BoardEntity[],\r\n\t\topponentEntity: BgsPlayerEntity,\r\n\t) {\r\n\t\tif (debugState?.active) {\r\n\t\t\tdebugState.onBattleStart();\r\n\t\t}\r\n\t\t// Start of combat happens only once, so we need to flag whether it has already happened for a\r\n\t\t// given player\r\n\t\tthis.gameState.spectator.registerStartOfCombat(playerBoard, opponentBoard, playerEntity, opponentEntity);\r\n\r\n\t\t// Who attacks first is decided by the game before the hero power comes into effect. However, the full board (with the generated minion)\r\n\t\t// is sent tothe simulator\r\n\t\t// But in fact, the first player decision takes into account that additional minion. See\r\n\t\t// https://replays.firestoneapp.com/?reviewId=ddbbbe93-464b-4400-8e8d-4abca8680a2e\r\n\t\tconst effectivePlayerBoardLength = playerBoard.length;\r\n\t\tconst effectiveOpponentBoardLength = opponentBoard.length;\r\n\t\tthis.currentAttacker =\r\n\t\t\teffectivePlayerBoardLength > effectiveOpponentBoardLength\r\n\t\t\t\t? 0\r\n\t\t\t\t: effectiveOpponentBoardLength > effectivePlayerBoardLength\r\n\t\t\t\t? 1\r\n\t\t\t\t: Math.round(Math.random());\r\n\t\tconst suggestedNewCurrentAttacker = handleStartOfCombat(\r\n\t\t\tplayerEntity,\r\n\t\t\tplayerBoard,\r\n\t\t\topponentEntity,\r\n\t\t\topponentBoard,\r\n\t\t\tthis.currentAttacker,\r\n\t\t\tthis.gameState,\r\n\t\t);\r\n\t\tthis.currentAttacker = suggestedNewCurrentAttacker;\r\n\t\tlet counter = 0;\r\n\t\tif (debugState?.active) {\r\n\t\t\tthis.currentAttacker = debugState.forcedCurrentAttacker ?? this.currentAttacker;\r\n\t\t}\r\n\t\twhile (\r\n\t\t\tplayerBoard.length > 0 &&\r\n\t\t\topponentBoard.length > 0 &&\r\n\t\t\tplayerEntity.hpLeft > 0 &&\r\n\t\t\topponentEntity.hpLeft > 0\r\n\t\t) {\r\n\t\t\thandleSummonsWhenSpace(playerBoard, playerEntity, opponentBoard, opponentEntity, this.gameState);\r\n\t\t\tclearStealthIfNeeded(playerBoard, playerEntity, opponentBoard, opponentEntity, this.gameState);\r\n\t\t\t// console.log('this.currentSpeedAttacker', this.currentAttacker);\r\n\t\t\t// If there are \"attack immediately\" minions, we keep the same player\r\n\t\t\t// We put it here so that it can kick in after the start of combat effects. However here we don't want\r\n\t\t\t// to change who attacks first, so we repeat that block again after all the attacks have been resolved\r\n\t\t\t// FIXME: This is not strictly correct - if there are multiple attack immediately\r\n\t\t\t// minions that spawn on both player sides it might get a bit more complex\r\n\t\t\t// but overall it works\r\n\t\t\t// Also, this doesn't work when there are several deathrattle competing\r\n\t\t\t// to know who triggers first. See the second test case of the scallywag.test.ts\r\n\t\t\t// that is not handled properly today (the attack should in some cases happen before\r\n\t\t\t// the other deathrattle procs)\r\n\t\t\tif (playerBoard.some((entity) => entity.attackImmediately)) {\r\n\t\t\t\tthis.currentSpeedAttacker = 0;\r\n\t\t\t} else if (opponentBoard.some((entity) => entity.attackImmediately)) {\r\n\t\t\t\tthis.currentSpeedAttacker = 1;\r\n\t\t\t} else {\r\n\t\t\t\tthis.currentSpeedAttacker = -1;\r\n\t\t\t}\r\n\t\t\tif (\r\n\t\t\t\tplayerBoard.filter((e) => e.attack > 0).length === 0 &&\r\n\t\t\t\topponentBoard.filter((e) => e.attack > 0).length === 0\r\n\t\t\t) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\t// console.log('this.currentSpeedAttacker 2', this.currentAttacker, this.currentSpeedAttacker);\r\n\t\t\tif (this.currentSpeedAttacker === 0 || (this.currentSpeedAttacker === -1 && this.currentAttacker === 0)) {\r\n\t\t\t\tsimulateAttack(playerBoard, playerEntity, opponentBoard, opponentEntity, this.gameState);\r\n\t\t\t} else {\r\n\t\t\t\tsimulateAttack(opponentBoard, opponentEntity, playerBoard, playerEntity, this.gameState);\r\n\t\t\t}\r\n\r\n\t\t\t// Update the attacker indices in case there were some deaths\r\n\t\t\tif (playerBoard.some((entity) => entity.attackImmediately)) {\r\n\t\t\t\tthis.currentSpeedAttacker = 0;\r\n\t\t\t} else if (opponentBoard.some((entity) => entity.attackImmediately)) {\r\n\t\t\t\tthis.currentSpeedAttacker = 1;\r\n\t\t\t} else {\r\n\t\t\t\tthis.currentSpeedAttacker = -1;\r\n\t\t\t\tthis.currentAttacker = (this.currentAttacker + 1) % 2;\r\n\t\t\t}\r\n\t\t\tcounter++;\r\n\t\t\tif (counter > 400 && !this.hasShowShortCircuitWarning) {\r\n\t\t\t\tconsole.warn(\r\n\t\t\t\t\t'short-circuiting simulation, too many iterations',\r\n\t\t\t\t\tcounter,\r\n\t\t\t\t\t'\\n',\r\n\t\t\t\t\tstringifySimple(playerBoard, this.gameState.allCards),\r\n\t\t\t\t\t'\\n',\r\n\t\t\t\t\tstringifySimple(opponentBoard, this.gameState.allCards),\r\n\t\t\t\t);\r\n\t\t\t\tthis.hasShowShortCircuitWarning = true;\r\n\t\t\t\tbreak;\r\n\t\t\t\t// return null;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprivate buildBoardTotalDamage(playerBoard: readonly BoardEntity[], teammateBoard?: BoardEntity[]): number {\r\n\t\tconst damageFromPlayerBoard = playerBoard\r\n\t\t\t.map((entity) =>\r\n\t\t\t\tgetEffectiveTechLevel(this.gameState.allCards.getCard(entity.cardId), this.gameState.allCards),\r\n\t\t\t)\r\n\t\t\t.reduce((a, b) => a + b, 0);\r\n\t\tconst numberOfTeamateMinionsToSummnon = 7 - playerBoard.length;\r\n\t\tconst damageFromTeammateBoard =\r\n\t\t\tteammateBoard\r\n\t\t\t\t?.slice(0, numberOfTeamateMinionsToSummnon)\r\n\t\t\t\t.map((entity) =>\r\n\t\t\t\t\tgetEffectiveTechLevel(this.gameState.allCards.getCard(entity.cardId), this.gameState.allCards),\r\n\t\t\t\t)\r\n\t\t\t\t.reduce((a, b) => a + b, 0) ?? 0;\r\n\t\treturn damageFromPlayerBoard + damageFromTeammateBoard;\r\n\t}\r\n}\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spawn-fail.js","sourceRoot":"","sources":["../../../src/simulation/spawn-fail.ts"],"names":[],"mappings":";;;AAEA,4DAAyD;AACzD,iEAA4D;AAE5D,oCAAiE;AAEjE,mCAAsC;AAE/B,MAAM,qBAAqB,GAAG,CACpC,MAAmB,EACnB,KAAoB,EACpB,IAAqB,EACrB,SAAwB,EACvB,EAAE;IACH,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,EAAE;QAC7B,MAAM,CAAC,gBAAgB,EAAE,CAAC;KAC1B;IAED,KAAK,MAAM,WAAW,IAAI,KAAK,EAAE;QAChC,MAAM,cAAc,GAAG,6BAAY,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACxD,IAAI,IAAA,+BAAc,EAAC,cAAc,CAAC,EAAE;YACnC,cAAc,CAAC,WAAW,CAAC,WAAW,EAAE;gBACvC,WAAW,EAAE,MAAM;gBACnB,KAAK,EAAE,KAAK;gBACZ,IAAI,EAAE,IAAI;gBACV,SAAS,EAAE,SAAS;aACpB,CAAC,CAAC;SACH;KACD;IAED,IAAI,CAAC,QAAQ;SACX,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,0BAAkD,CAAC;SACzE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,uBAAe,EAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;IAEnE,KAAK;SACH,MAAM,CACN,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,MAAM,eAA2C;QACnD,CAAC,CAAC,MAAM,iBAA6C,CACtD;SACA,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACjB,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,iBAA6C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7F,IAAA,mBAAW,EAAC,IAAI,EAAE,IAAI,EAAE,mBAAmB,GAAG,CAAC,EAAE,mBAAmB,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IACnG,CAAC,CAAC,CAAC;IACJ,KAAK;SACH,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,eAAqC,IAAI,CAAC,CAAC,MAAM,iBAAuC,CAAC;SAC/G,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACpB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,eAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,IAAA,4BAAoB,EAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AA1CW,QAAA,qBAAqB,yBA0ChC","sourcesContent":["import { BgsPlayerEntity } from '../bgs-player-entity';\r\nimport { BoardEntity } from '../board-entity';\r\nimport { hasOnSpawnFail } from '../cards/card.interface';\r\nimport { cardMappings } from '../cards/impl/_card-mappings';\r\nimport { CardIds } from '../services/card-ids';\r\nimport { addStatsToAliveBoard, addStatsToBoard } from '../utils';\r\nimport { FullGameState } from './internal-game-state';\r\nimport { modifyStats } from './stats';\r\n\r\nexport const onMinionFailedToSpawn = (\r\n\tentity: BoardEntity,\r\n\tboard: BoardEntity[],\r\n\thero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n) => {\r\n\tif (entity?.onCanceledSummon) {\r\n\t\tentity.onCanceledSummon();\r\n\t}\r\n\r\n\tfor (const boardEntity of board) {\r\n\t\tconst onSpawnFailImp = cardMappings[boardEntity.cardId];\r\n\t\tif (hasOnSpawnFail(onSpawnFailImp)) {\r\n\t\t\tonSpawnFailImp.onSpawnFail(boardEntity, {\r\n\t\t\t\tfailedSpawn: entity,\r\n\t\t\t\tboard: board,\r\n\t\t\t\thero: hero,\r\n\t\t\t\tgameState: gameState,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\thero.trinkets\r\n\t\t.filter((t) => t.cardId === CardIds.MugOfTheSireToken_BG30_MagicItem_438t)\r\n\t\t.forEach((t) => addStatsToBoard(t, board, hero, 5, 0, gameState));\r\n\r\n\tboard\r\n\t\t.filter(\r\n\t\t\t(e) =>\r\n\t\t\t\te.cardId === CardIds.ThunderingAbomination_BG30_124 ||\r\n\t\t\t\te.cardId === CardIds.ThunderingAbomination_BG30_124_G,\r\n\t\t)\r\n\t\t.forEach((abom) => {\r\n\t\t\tconst abomStatsMultiplier = abom.cardId === CardIds.ThunderingAbomination_BG30_124_G ? 2 : 1;\r\n\t\t\tmodifyStats(abom, abom, abomStatsMultiplier * 3, abomStatsMultiplier * 3, board, hero, gameState);\r\n\t\t});\r\n\tboard\r\n\t\t.filter((e) => e.cardId === CardIds.CatacombCrasher_BG30_129 || e.cardId === CardIds.CatacombCrasher_BG30_129_G)\r\n\t\t.forEach((crasher) => {\r\n\t\t\tconst mult = crasher.cardId === CardIds.CatacombCrasher_BG30_129 ? 1 : 2;\r\n\t\t\taddStatsToAliveBoard(crasher, board, hero, 2 * mult, 1 * mult, gameState);\r\n\t\t});\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spawns.js","sourceRoot":"","sources":["../../../src/simulation/spawns.ts"],"names":[],"mappings":";;;AAEA,+DAAkF;AAClF,qCAA0C;AAE1C,6CAAqD;AAE9C,MAAM,mBAAmB,GAAG,CAClC,iBAAyC,EACzC,qBAAoC,EACpC,yBAA0C,EAC1C,iBAA+D,EAC/D,+BAAuC,EACvC,aAA4B,EAC5B,iBAAkC,EAClC,SAAwB,EACxB,cAAc,GAAG,IAAI,EACrB,cAA2B,IAAI,EACN,EAAE;;IAC3B,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IACvG,MAAM,eAAe,GAAG,EAAE,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC7C,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAElC,IAAI,qBAAqB,CAAC,MAAM,IAAI,CAAC,EAAE;YACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC7C,IAAA,kCAAqB,EAAC,YAAY,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,SAAS,CAAC,CAAC;aACpG;YACD,MAAM;SACN;QAKD,+BAA+B,GAAG,MAAA,SAAS,CAAC,mBAAmB,mCAAI,+BAA+B,CAAC;QACnG,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC,MAAM,GAAG,+BAA+B,CAAC,CAAC;QACnG,IAAA,sCAAgB,EACf,qBAAqB,EACrB,yBAAyB,EACzB,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,SAAS,EACT,SAAS,EACT,cAAc,CACd,CAAC;QACF,IAAI,SAAS,CAAC,iBAAiB,EAAE;YAEhC,MAAM,cAAc,GAAG,IAAA,uBAAc,EACpC,qBAAqB,EACrB,yBAAyB,EACzB,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,EAAE,WAAW,EAAE,WAAW,EAAE,CAC5B,CAAC;YAKF,IAAI,cAAc,EAAE;gBACnB,cAAc,CAAC,iBAAiB,GAAG,KAAK,CAAC;aACzC;iBAEI;gBACJ,SAAS,CAAC,iBAAiB,GAAG,KAAK,CAAC;aACpC;SACD;QAGD,IAAA,6CAAuB,EACtB,qBAAqB,EACrB,yBAAyB,EACzB,aAAa,EACb,iBAAiB,EACjB,CAAC,SAAS,CAAC,EACX,SAAS,CACT,CAAC;QACF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE;YACtD,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAChC;KACD;IAED,SAAS,CAAC,SAAS,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,eAAe,CAAC,CAAC;IACpG,OAAO,eAAe,CAAC;AACxB,CAAC,CAAC;AA9EW,QAAA,mBAAmB,uBA8E9B","sourcesContent":["import { BgsPlayerEntity, BoardTrinket } from '../bgs-player-entity';\r\nimport { BoardEntity } from '../board-entity';\r\nimport { addMinionToBoard, handleAfterSpawnEffects } from './add-minion-to-board';\r\nimport { simulateAttack } from './attack';\r\nimport { FullGameState } from './internal-game-state';\r\nimport { onMinionFailedToSpawn } from './spawn-fail';\r\n\r\nexport const performEntitySpawns = (\r\n\tcandidateEntities: readonly BoardEntity[],\r\n\tboardWithKilledMinion: BoardEntity[],\r\n\tboardWithKilledMinionHero: BgsPlayerEntity,\r\n\tspawnSourceEntity: BoardEntity | BgsPlayerEntity | BoardTrinket,\r\n\tspawnSourceEntityIndexFromRight: number,\r\n\topponentBoard: BoardEntity[],\r\n\topponentBoardHero: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n\tapplySelfAuras = true,\r\n\tforceTarget: BoardEntity = null,\r\n): readonly BoardEntity[] => {\r\n\tconst aliveEntites = candidateEntities.filter((entity) => entity.health > 0 && !entity.definitelyDead);\r\n\tconst spawnedEntities = [];\r\n\tfor (let i = 0; i < aliveEntites.length; i++) {\r\n\t\tconst newMinion = aliveEntites[i];\r\n\t\t// All entities have been spawned\r\n\t\tif (boardWithKilledMinion.length >= 7) {\r\n\t\t\tfor (let j = i; j < aliveEntites.length; j++) {\r\n\t\t\t\tonMinionFailedToSpawn(aliveEntites[j], boardWithKilledMinion, boardWithKilledMinionHero, gameState);\r\n\t\t\t}\r\n\t\t\tbreak;\r\n\t\t}\r\n\t\t// Avoid minions spawning backwards (we don't have this issue if we add all elements at\r\n\t\t// the same time, but here we want to be able to attack after each spawn, which in turn\r\n\t\t// means that the minion can die before the other one spawns)\r\n\t\t// In boardWithKilledMinion, the dead minion has already been removed\r\n\t\tspawnSourceEntityIndexFromRight = newMinion.spawnIndexFromRight ?? spawnSourceEntityIndexFromRight;\r\n\t\tconst indexToSpawnAt = Math.max(0, boardWithKilledMinion.length - spawnSourceEntityIndexFromRight);\r\n\t\taddMinionToBoard(\r\n\t\t\tboardWithKilledMinion,\r\n\t\t\tboardWithKilledMinionHero,\r\n\t\t\topponentBoard,\r\n\t\t\topponentBoardHero,\r\n\t\t\tindexToSpawnAt,\r\n\t\t\tnewMinion,\r\n\t\t\tgameState,\r\n\t\t\tapplySelfAuras,\r\n\t\t);\r\n\t\tif (newMinion.attackImmediately) {\r\n\t\t\t// Whenever we are already in a combat phase, we need to first clean up the state\r\n\t\t\tconst actualAttacker = simulateAttack(\r\n\t\t\t\tboardWithKilledMinion,\r\n\t\t\t\tboardWithKilledMinionHero,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\topponentBoardHero,\r\n\t\t\t\tgameState,\r\n\t\t\t\t{ forceTarget: forceTarget },\r\n\t\t\t);\r\n\t\t\t// So that, even if the opponent's board is temporarily empty (e.g. no minion, but a token will\r\n\t\t\t// spawn in the enchantments resolution phase), the minion won't attack right away again\r\n\t\t\t// In case of attack immediately + multiple spawns minins, it's possible that the minion for which\r\n\t\t\t// we triggered the attack simulation was not the one who actually attacked\r\n\t\t\tif (actualAttacker) {\r\n\t\t\t\tactualAttacker.attackImmediately = false;\r\n\t\t\t}\r\n\t\t\t// Can happen if the attackImmediately minion spawns first, opponent board is empty, then opponent minino spawns\r\n\t\t\telse {\r\n\t\t\t\tnewMinion.attackImmediately = false;\r\n\t\t\t}\r\n\t\t}\r\n\t\t// See https://replays.firestoneapp.com/?reviewId=aa23c9a3-2851-4c50-81b4-2d47d228a8fc&turn=7&action=4\r\n\t\t// Attack immediately resolves first, then the \"after spawn\"\r\n\t\thandleAfterSpawnEffects(\r\n\t\t\tboardWithKilledMinion,\r\n\t\t\tboardWithKilledMinionHero,\r\n\t\t\topponentBoard,\r\n\t\t\topponentBoardHero,\r\n\t\t\t[newMinion],\r\n\t\t\tgameState,\r\n\t\t);\r\n\t\tif (newMinion.health > 0 && !newMinion.definitelyDead) {\r\n\t\t\tspawnedEntities.push(newMinion);\r\n\t\t}\r\n\t}\r\n\r\n\tgameState.spectator.registerMinionsSpawn(spawnSourceEntity, boardWithKilledMinion, spawnedEntities);\r\n\treturn spawnedEntities;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"game-action.js","sourceRoot":"","sources":["../../../../src/simulation/spectator/game-action.ts"],"names":[],"mappings":"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","sourcesContent":["import { CardIds } from '../../services/card-ids';\nimport { BgsHeroPower, BgsPlayerEntity, BoardTrinket } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { BoardSecret } from '../../board-secret';\r\n\r\nexport interface GameAction {\r\n\ttype:\r\n\t\t| 'damage'\r\n\t\t| 'attack'\r\n\t\t| 'spawn'\r\n\t\t| 'minion-death'\r\n\t\t| 'power-target'\r\n\t\t| 'start-of-combat'\r\n\t\t| 'player-attack'\r\n\t\t| 'opponent-attack';\r\n\tplayerBoard: readonly BoardEntity[];\r\n\tplayerHand: readonly BoardEntity[];\r\n\tplayerSecrets: readonly BoardSecret[];\r\n\tplayerTrinkets: readonly BoardTrinket[];\r\n\topponentBoard: readonly BoardEntity[];\r\n\topponentHand: readonly BoardEntity[];\r\n\topponentSecrets: readonly BoardSecret[];\r\n\topponentTrinkets: readonly BoardTrinket[];\r\n\tplayerCardId: string;\r\n\tplayerEntityId: number;\r\n\tplayerHeroPowerCardId: string;\r\n\tplayerHeroPowerEntityId: number;\r\n\tplayerHeroPowerUsed: boolean;\r\n\tplayerHeroPowers: readonly BgsHeroPower[];\r\n\topponentCardId: string;\r\n\topponentEntityId: number;\r\n\topponentHeroPowerCardId: string;\r\n\topponentHeroPowerEntityId: number;\r\n\topponentHeroPowerUsed: boolean;\r\n\topponentHeroPowers: readonly BgsHeroPower[];\r\n\tplayerRewardCardId: string;\r\n\tplayerRewardEntityId: number;\r\n\tplayerRewardData: number;\r\n\topponentRewardCardId: string;\r\n\topponentRewardEntityId: number;\r\n\topponentRewardData: number;\r\n\tsourceEntityId?: number;\r\n\t/** @deprecated */\r\n\ttargetEntityId?: number;\r\n\ttargetEntityIds?: number[];\r\n\r\n\tdamages?: Damage[];\r\n\tspawns?: readonly BoardEntity[];\r\n\tdeaths?: readonly BoardEntity[];\r\n\tdeadMinionsPositionsOnBoard?: readonly number[];\r\n}\r\n\r\nexport interface Damage {\r\n\treadonly sourceEntityId?: number;\r\n\treadonly targetEntityId?: number;\r\n\treadonly damage?: number;\r\n}\r\n\r\nexport const buildGameAction = (\r\n\tplayerHero: BgsPlayerEntity,\r\n\topponentHero: BgsPlayerEntity,\r\n\taction: Partial<GameAction>,\r\n): GameAction => {\r\n\tconst isPlayerSireD = playerHero?.cardId?.startsWith(CardIds.SireDenathrius_BG24_HERO_100);\r\n\tconst isOpponentSireD = opponentHero?.cardId?.startsWith(CardIds.SireDenathrius_BG24_HERO_100);\r\n\tconst result: GameAction = {\r\n\t\t...action,\r\n\r\n\t\tplayerSecrets: (playerHero?.secrets ?? []).filter((s) => !s.triggered),\r\n\t\tplayerCardId: playerHero?.cardId,\r\n\t\tplayerEntityId: playerHero?.entityId,\r\n\r\n\t\tplayerHeroPowerCardId:\r\n\t\t\tplayerHero?.trinkets.find((t) => t.scriptDataNum6 === 3)?.cardId ??\r\n\t\t\t(isPlayerSireD ? playerHero.questRewardEntities?.[0]?.cardId : null) ??\r\n\t\t\tplayerHero?.heroPowers[0]?.cardId,\r\n\t\tplayerHeroPowerEntityId: 100000002,\r\n\t\tplayerHeroPowerUsed: playerHero?.heroPowers[0]?.used,\r\n\t\tplayerHeroPowers: playerHero?.heroPowers,\r\n\r\n\t\tplayerRewardCardId:\r\n\t\t\tisPlayerSireD && playerHero?.questRewardEntities?.length < 2\r\n\t\t\t\t? null\r\n\t\t\t\t: playerHero?.questRewardEntities?.[1]?.cardId ?? playerHero?.questRewards?.[0],\r\n\t\tplayerRewardEntityId:\r\n\t\t\tisPlayerSireD && playerHero?.questRewardEntities?.length < 2\r\n\t\t\t\t? null\r\n\t\t\t\t: playerHero?.questRewardEntities?.[1]?.entityId,\r\n\t\tplayerRewardData:\r\n\t\t\tisPlayerSireD && playerHero?.questRewardEntities?.length < 2\r\n\t\t\t\t? null\r\n\t\t\t\t: playerHero?.questRewardEntities?.[0]?.scriptDataNum1 ?? 0,\r\n\t\tplayerTrinkets: playerHero?.trinkets,\r\n\r\n\t\topponentSecrets: (opponentHero?.secrets ?? []).filter((s) => !s.triggered),\r\n\t\topponentCardId: opponentHero?.cardId,\r\n\t\topponentEntityId: opponentHero?.entityId,\r\n\t\topponentHeroPowerCardId:\r\n\t\t\topponentHero?.trinkets.find((t) => t.scriptDataNum6 === 3)?.cardId ??\r\n\t\t\t(isOpponentSireD ? opponentHero.questRewardEntities?.[0]?.cardId : null) ??\r\n\t\t\topponentHero?.heroPowers[0]?.cardId ??\r\n\t\t\topponentHero?.heroPowerId,\r\n\t\topponentHeroPowerEntityId: 200000002,\r\n\t\topponentHeroPowerUsed: opponentHero?.heroPowerUsed,\r\n\t\topponentHeroPowers: opponentHero?.heroPowers,\r\n\t\topponentRewardCardId:\r\n\t\t\tisOpponentSireD && opponentHero?.questRewardEntities?.length < 2\r\n\t\t\t\t? null\r\n\t\t\t\t: opponentHero?.questRewardEntities?.[1]?.cardId ?? opponentHero?.questRewards?.[0],\r\n\t\topponentRewardEntityId:\r\n\t\t\tisOpponentSireD && opponentHero?.questRewardEntities?.length < 2\r\n\t\t\t\t? null\r\n\t\t\t\t: opponentHero?.questRewardEntities?.[1]?.entityId,\r\n\t\topponentRewardData:\r\n\t\t\tisOpponentSireD && opponentHero?.questRewardEntities?.length < 2\r\n\t\t\t\t? null\r\n\t\t\t\t: opponentHero?.questRewardEntities?.[0]?.scriptDataNum1 ?? 0,\r\n\t\topponentTrinkets: opponentHero?.trinkets,\r\n\t} as GameAction;\r\n\treturn result;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"game-sample.js","sourceRoot":"","sources":["../../../../src/simulation/spectator/game-sample.ts"],"names":[],"mappings":"","sourcesContent":["import { GameAction } from './game-action';\r\n\r\nexport interface GameSample {\r\n\treadonly actions: readonly GameAction[];\r\n\treadonly anomalies: readonly string[];\r\n\t/*\r\n\treadonly playerCardId: string;\r\n\treadonly playerEntityId: number;\r\n\treadonly playerHeroPowerCardId: string;\r\n\treadonly playerHeroPowerUsed: boolean;\r\n\treadonly opponentCardId: string;\r\n\treadonly opponentEntityId: number;\r\n\treadonly opponentHeroPowerCardId: string;\r\n\treadonly opponentHeroPowerUsed: boolean;\r\n\t*/\r\n}\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spectator.js","sourceRoot":"","sources":["../../../../src/simulation/spectator/spectator.ts"],"names":[],"mappings":"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","sourcesContent":["import { BgsGameState } from '../../bgs-battle-info';\r\nimport { BgsPlayerEntity, BoardTrinket } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { BoardSecret } from '../../board-secret';\r\nimport { GameAction, buildGameAction } from './game-action';\r\nimport { GameSample } from './game-sample';\r\n\r\nconst MAX_SAMPLES = 1;\r\n\r\nexport class Spectator {\r\n\tprivate actionsForCurrentBattle: GameAction[];\r\n\tprivate wonBattles: GameSample[];\r\n\tprivate tiedBattles: GameSample[];\r\n\tprivate lostBattles: GameSample[];\r\n\r\n\tconstructor(private readonly enabled: boolean) {\r\n\t\tthis.actionsForCurrentBattle = [];\r\n\t\tthis.wonBattles = [];\r\n\t\tthis.tiedBattles = [];\r\n\t\tthis.lostBattles = [];\r\n\t}\r\n\r\n\tpublic prune(): void {\r\n\t\tthis.wonBattles = this.wonBattles.slice(0, MAX_SAMPLES);\r\n\t\tthis.lostBattles = this.lostBattles.slice(0, MAX_SAMPLES);\r\n\t\tthis.tiedBattles = this.tiedBattles.slice(0, MAX_SAMPLES);\r\n\t}\r\n\r\n\tpublic buildOutcomeSamples(gameState: BgsGameState): {\r\n\t\twon: readonly GameSample[];\r\n\t\tlost: readonly GameSample[];\r\n\t\ttied: readonly GameSample[];\r\n\t} {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn {\r\n\t\t\t\twon: [],\r\n\t\t\t\tlost: [],\r\n\t\t\t\ttied: [],\r\n\t\t\t};\r\n\t\t}\r\n\t\treturn {\r\n\t\t\twon: this.wonBattles?.map((battle) => this.cleanUpActions(battle, gameState)),\r\n\t\t\tlost: this.lostBattles?.map((battle) => this.cleanUpActions(battle, gameState)),\r\n\t\t\ttied: this.tiedBattles?.map((battle) => this.cleanUpActions(battle, gameState)),\r\n\t\t};\r\n\t}\r\n\r\n\tprivate cleanUpActions(battle: GameSample, gameState: BgsGameState): GameSample {\r\n\t\tconst collapsed = this.collapseActions(battle.actions);\r\n\t\tconst result: GameSample = {\r\n\t\t\t...battle,\r\n\t\t\tactions: collapsed,\r\n\t\t\tanomalies: gameState.anomalies,\r\n\t\t};\r\n\t\treturn result;\r\n\t}\r\n\r\n\tpublic commitBattleResult(result: 'won' | 'lost' | 'tied'): void {\r\n\t\tif (!this.enabled) {\r\n\t\t\tthis.actionsForCurrentBattle = [];\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (\r\n\t\t\tthis.wonBattles.length >= MAX_SAMPLES &&\r\n\t\t\tthis.lostBattles.length >= MAX_SAMPLES &&\r\n\t\t\tthis.tiedBattles.length >= MAX_SAMPLES\r\n\t\t) {\r\n\t\t\tthis.actionsForCurrentBattle = [];\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// const actionsForBattle = this.collapseActions(this.actionsForCurrentBattle);\r\n\t\tconst actionsForBattle = this.actionsForCurrentBattle;\r\n\t\tthis.actionsForCurrentBattle = [];\r\n\r\n\t\tconst battle: GameSample = {\r\n\t\t\tactions: actionsForBattle,\r\n\t\t\tanomalies: [],\r\n\t\t};\r\n\t\tswitch (result) {\r\n\t\t\tcase 'won':\r\n\t\t\t\tthis.wonBattles.push(battle);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'lost':\r\n\t\t\t\tthis.lostBattles.push(battle);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'tied':\r\n\t\t\t\tthis.tiedBattles.push(battle);\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic registerAttack(\r\n\t\tattackingEntity: BoardEntity,\r\n\t\tdefendingEntity: BoardEntity,\r\n\t\tattackingBoard: readonly BoardEntity[],\r\n\t\tdefendingBoard: readonly BoardEntity[],\r\n\t\tattackingBoardHero: BgsPlayerEntity,\r\n\t\tdefendingBoardHero: BgsPlayerEntity,\r\n\t): void {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// console.debug(\r\n\t\t// \t'\\n register attack',\r\n\t\t// \tstringifySimple(attackingBoard),\r\n\t\t// \t'\\n',\r\n\t\t// \tstringifySimple(defendingBoard),\r\n\t\t// \t'\\n',\r\n\t\t// \tattackingBoard.find((e) => e.entityId === 2441),\r\n\t\t// \t'\\n',\r\n\t\t// \tattackingBoard.find((e) => e.entityId === 2442),\r\n\t\t// );\r\n\t\tconst isAttackerFriendly = attackingBoard.every((entity) => entity.friendly);\r\n\t\tconst playerHero = isAttackerFriendly ? attackingBoardHero : defendingBoardHero;\r\n\t\tconst opponentHero = isAttackerFriendly ? defendingBoardHero : attackingBoardHero;\r\n\t\tconst friendlyBoard = isAttackerFriendly ? attackingBoard : defendingBoard;\r\n\t\tconst opponentBoard = isAttackerFriendly ? defendingBoard : attackingBoard;\r\n\t\tconst action: GameAction = buildGameAction(playerHero, opponentHero, {\r\n\t\t\ttype: 'attack',\r\n\t\t\tsourceEntityId: attackingEntity.entityId,\r\n\t\t\ttargetEntityId: defendingEntity.entityId,\r\n\t\t\tplayerBoard: this.sanitize(friendlyBoard),\r\n\t\t\tplayerHand: this.sanitize(playerHero.hand),\r\n\t\t\topponentBoard: this.sanitize(opponentBoard),\r\n\t\t\topponentHand: this.sanitize(opponentHero.hand),\r\n\t\t});\r\n\t\tthis.addAction(action);\r\n\t}\r\n\r\n\tpublic registerStartOfCombat(\r\n\t\tfriendlyBoard: readonly BoardEntity[],\r\n\t\topponentBoard: readonly BoardEntity[],\r\n\t\tfriendlyHero: BgsPlayerEntity,\r\n\t\topponentHero: BgsPlayerEntity,\r\n\t): void {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst action: GameAction = buildGameAction(friendlyHero, opponentHero, {\r\n\t\t\ttype: 'start-of-combat',\r\n\t\t\tplayerBoard: this.sanitize(friendlyBoard),\r\n\t\t\topponentBoard: this.sanitize(opponentBoard),\r\n\t\t\tplayerHand: this.sanitize(friendlyHero.hand),\r\n\t\t\topponentHand: this.sanitize(opponentHero.hand),\r\n\t\t});\r\n\t\tthis.addAction(action);\r\n\t}\r\n\r\n\tpublic registerPlayerAttack(\r\n\t\tfriendlyBoard: readonly BoardEntity[],\r\n\t\topponentBoard: readonly BoardEntity[],\r\n\t\tdamage: number,\r\n\t): void {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst action: GameAction = buildGameAction(null, null, {\r\n\t\t\ttype: 'player-attack',\r\n\t\t\tplayerBoard: this.sanitize(friendlyBoard),\r\n\t\t\topponentBoard: this.sanitize(opponentBoard),\r\n\t\t\tplayerHand: null,\r\n\t\t\topponentHand: null,\r\n\t\t\tdamages: [\r\n\t\t\t\t{\r\n\t\t\t\t\tdamage: damage,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\tthis.addAction(action);\r\n\t}\r\n\r\n\tpublic registerOpponentAttack(\r\n\t\tfriendlyBoard: readonly BoardEntity[],\r\n\t\topponentBoard: readonly BoardEntity[],\r\n\t\tdamage: number,\r\n\t): void {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst action: GameAction = buildGameAction(null, null, {\r\n\t\t\ttype: 'opponent-attack',\r\n\t\t\tplayerBoard: this.sanitize(friendlyBoard),\r\n\t\t\topponentBoard: this.sanitize(opponentBoard),\r\n\t\t\tplayerHand: null,\r\n\t\t\topponentHand: null,\r\n\t\t\tdamages: [\r\n\t\t\t\t{\r\n\t\t\t\t\tdamage: damage,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t});\r\n\t\tthis.addAction(action);\r\n\t}\r\n\r\n\tpublic registerDamageDealt(\r\n\t\tdamagingEntity: BoardEntity,\r\n\t\tdamagedEntity: BoardEntity,\r\n\t\tdamageTaken: number,\r\n\t\tdamagedEntityBoard: BoardEntity[],\r\n\t): void {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (!damagingEntity.entityId) {\r\n\t\t\t// console.error('missing damaging entity id', damagingEntity.cardId);\r\n\t\t}\r\n\t\tconst friendlyBoard = damagedEntityBoard.every((entity) => entity.friendly) ? damagedEntityBoard : null;\r\n\t\tconst opponentBoard = damagedEntityBoard.every((entity) => !entity.friendly) ? damagedEntityBoard : null;\r\n\t\tconst action: GameAction = buildGameAction(null, null, {\r\n\t\t\ttype: 'damage',\r\n\t\t\tdamages: [\r\n\t\t\t\t{\r\n\t\t\t\t\tsourceEntityId: damagingEntity.entityId,\r\n\t\t\t\t\ttargetEntityId: damagedEntity.entityId,\r\n\t\t\t\t\tdamage: damageTaken,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tplayerBoard: this.sanitize(friendlyBoard),\r\n\t\t\topponentBoard: this.sanitize(opponentBoard),\r\n\t\t\tplayerHand: null,\r\n\t\t\topponentHand: null,\r\n\t\t});\r\n\t\tthis.addAction(action);\r\n\t}\r\n\r\n\tpublic registerPowerTarget(\r\n\t\tsourceEntity: BoardEntity | BgsPlayerEntity | BoardSecret | BoardTrinket,\r\n\t\ttargetEntity: BoardEntity | BgsPlayerEntity,\r\n\t\ttargetBoard: BoardEntity[],\r\n\t\thero1: BgsPlayerEntity,\r\n\t\thero2: BgsPlayerEntity,\r\n\t): void {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (!targetEntity) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// console.log('registerPowerTarget', stringifySimpleCard(sourceEntity), stringifySimpleCard(targetEntity), new Error().stack);\r\n\t\tconst friendlyBoard = targetBoard?.every((entity) => entity.friendly) ? targetBoard : null;\r\n\t\tconst opponentBoard = targetBoard?.every((entity) => !entity.friendly) ? targetBoard : null;\r\n\t\tconst friendlyHero = hero1?.friendly ? hero1 : hero2?.friendly ? hero2 : null;\r\n\t\tconst opponentHero = hero1?.friendly ? hero2 : hero2?.friendly ? hero1 : null;\r\n\t\tconst action: GameAction = buildGameAction(friendlyHero, opponentHero, {\r\n\t\t\ttype: 'power-target',\r\n\t\t\tsourceEntityId: sourceEntity.entityId,\r\n\t\t\ttargetEntityId: targetEntity.entityId,\r\n\t\t\tplayerBoard: this.sanitize(friendlyBoard),\r\n\t\t\topponentBoard: this.sanitize(opponentBoard),\r\n\t\t\tplayerHand: this.sanitize(friendlyHero?.hand),\r\n\t\t\topponentHand: this.sanitize(opponentHero?.hand),\r\n\t\t});\r\n\t\tthis.addAction(action);\r\n\t}\r\n\r\n\tpublic registerPowerTargets(\r\n\t\tsourceEntity: BoardEntity | BgsPlayerEntity | BoardSecret | BoardTrinket,\r\n\t\ttargetEntities: (BoardEntity | BgsPlayerEntity)[],\r\n\t\ttargetBoard: BoardEntity[],\r\n\t\thero1: BgsPlayerEntity,\r\n\t\thero2: BgsPlayerEntity,\r\n\t): void {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (!targetEntities?.length) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// console.log('registerPowerTarget', stringifySimpleCard(sourceEntity), stringifySimpleCard(targetEntity), new Error().stack);\r\n\t\tconst friendlyBoard = targetBoard?.every((entity) => entity.friendly) ? targetBoard : null;\r\n\t\tconst opponentBoard = targetBoard?.every((entity) => !entity.friendly) ? targetBoard : null;\r\n\t\tconst friendlyHero = hero1?.friendly ? hero1 : hero2?.friendly ? hero2 : null;\r\n\t\tconst opponentHero = hero1?.friendly ? hero2 : hero2?.friendly ? hero1 : null;\r\n\t\tconst action: GameAction = buildGameAction(friendlyHero, opponentHero, {\r\n\t\t\ttype: 'power-target',\r\n\t\t\tsourceEntityId: sourceEntity.entityId,\r\n\t\t\ttargetEntityIds: targetEntities.map((entity) => entity.entityId),\r\n\t\t\tplayerBoard: this.sanitize(friendlyBoard),\r\n\t\t\topponentBoard: this.sanitize(opponentBoard),\r\n\t\t\tplayerHand: this.sanitize(friendlyHero?.hand),\r\n\t\t\topponentHand: this.sanitize(opponentHero?.hand),\r\n\t\t});\r\n\t\tthis.addAction(action);\r\n\t}\r\n\r\n\tpublic registerMinionsSpawn(\r\n\t\tsourceEntity: BoardEntity | BgsPlayerEntity | BoardTrinket,\r\n\t\tboardOnWhichToSpawn: BoardEntity[],\r\n\t\tspawnedEntities: readonly BoardEntity[],\r\n\t): void {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (!spawnedEntities || spawnedEntities.length === 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (!sourceEntity?.entityId) {\r\n\t\t\t// console.error('missing spawn source entity id', sourceEntity);\r\n\t\t}\r\n\t\tconst friendlyBoard = boardOnWhichToSpawn.every((entity) => entity.friendly) ? boardOnWhichToSpawn : null;\r\n\t\tconst opponentBoard = boardOnWhichToSpawn.every((entity) => !entity.friendly) ? boardOnWhichToSpawn : null;\r\n\t\tconst action: GameAction = buildGameAction(null, null, {\r\n\t\t\ttype: 'spawn',\r\n\t\t\tspawns: this.sanitize(spawnedEntities),\r\n\t\t\tsourceEntityId: sourceEntity?.entityId,\r\n\t\t\tplayerBoard: this.sanitize(friendlyBoard),\r\n\t\t\topponentBoard: this.sanitize(opponentBoard),\r\n\t\t\tplayerHand: null,\r\n\t\t\topponentHand: null,\r\n\t\t});\r\n\t\tthis.addAction(action);\r\n\t}\r\n\r\n\tpublic registerDeadEntities(\r\n\t\tdeadMinionIndexes1: number[],\r\n\t\tdeadEntities1: BoardEntity[],\r\n\t\tboard1: BoardEntity[],\r\n\t\tdeadMinionIndexes2: number[],\r\n\t\tdeadEntities2: BoardEntity[],\r\n\t\tboard2: BoardEntity[],\r\n\t): void {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst deaths = [...(deadEntities1 || []), ...(deadEntities2 || [])];\r\n\t\tif (!deaths || deaths.length === 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst action: GameAction = buildGameAction(null, null, {\r\n\t\t\ttype: 'minion-death',\r\n\t\t\tdeaths: this.sanitize(deaths),\r\n\t\t\tdeadMinionsPositionsOnBoard: [\r\n\t\t\t\t...(deadMinionIndexes1 || []).map((i) => board1.length - i),\r\n\t\t\t\t...(deadMinionIndexes2 || []).map((i) => board2.length - i),\r\n\t\t\t],\r\n\t\t});\r\n\t\tthis.addAction(action);\r\n\t}\r\n\r\n\tprivate addAction(action: GameAction) {\r\n\t\tthis.actionsForCurrentBattle.push(action);\r\n\t}\r\n\r\n\tprivate collapseActions(actions: readonly GameAction[]): readonly GameAction[] {\r\n\t\tif (!this.enabled) {\r\n\t\t\treturn [];\r\n\t\t}\r\n\t\tif (!actions || actions.length === 0) {\r\n\t\t\treturn [];\r\n\t\t}\r\n\t\tconst result: GameAction[] = [];\r\n\t\tfor (let i = 0; i < actions.length; i++) {\r\n\t\t\tconst action: GameAction = {\r\n\t\t\t\t...actions[i],\r\n\t\t\t\tplayerBoard: this.sanitize(actions[i].playerBoard),\r\n\t\t\t\topponentBoard: this.sanitize(actions[i].opponentBoard),\r\n\t\t\t\tplayerHand: this.sanitize(actions[i].playerHand),\r\n\t\t\t\topponentHand: this.sanitize(actions[i].opponentHand),\r\n\t\t\t\t// spawns: this.sanitize(actions[i].spawns),\r\n\t\t\t\tdeaths: this.sanitize(actions[i].deaths),\r\n\t\t\t\tplayerTrinkets: this.sanitizeTrinkets(actions[i].playerTrinkets),\r\n\t\t\t\topponentTrinkets: this.sanitizeTrinkets(actions[i].opponentTrinkets),\r\n\t\t\t};\r\n\t\t\t// action.playerBoard && console.debug('\\naction playerboard', stringifySimple(action.playerBoard));\r\n\t\t\tconst lastAction = result.length > 0 ? result[result.length - 1] : null;\r\n\r\n\t\t\tif (lastAction) {\r\n\t\t\t\taction.playerBoard = action.playerBoard ?? lastAction.playerBoard;\r\n\t\t\t\taction.opponentBoard = action.opponentBoard ?? lastAction.opponentBoard;\r\n\t\t\t\taction.playerHand = action.playerHand ?? lastAction.playerHand;\r\n\t\t\t\taction.opponentHand = action.opponentHand ?? lastAction.opponentHand;\r\n\t\t\t\taction.playerSecrets = action.playerSecrets ?? lastAction.playerSecrets;\r\n\t\t\t\taction.opponentSecrets = action.opponentSecrets ?? lastAction.opponentSecrets;\r\n\t\t\t\taction.playerRewardCardId = action.playerRewardCardId ?? lastAction.playerRewardCardId;\r\n\t\t\t\taction.playerRewardEntityId = action.playerRewardEntityId ?? lastAction.playerRewardEntityId;\r\n\t\t\t\taction.playerRewardData = action.playerRewardData ?? lastAction.playerRewardData;\r\n\t\t\t\taction.opponentRewardCardId = action.opponentRewardCardId ?? lastAction.opponentRewardCardId;\r\n\t\t\t\taction.opponentRewardEntityId = action.opponentRewardEntityId ?? lastAction.opponentRewardEntityId;\r\n\t\t\t\taction.opponentRewardData = action.opponentRewardData ?? lastAction.opponentRewardData;\r\n\t\t\t\taction.playerCardId = action.playerCardId ?? lastAction.playerCardId;\r\n\t\t\t\taction.playerEntityId = action.playerEntityId ?? lastAction.playerEntityId;\r\n\t\t\t\taction.playerHeroPowerCardId = action.playerHeroPowerCardId ?? lastAction.playerHeroPowerCardId;\r\n\t\t\t\taction.playerHeroPowerEntityId = action.playerHeroPowerEntityId ?? lastAction.playerHeroPowerEntityId;\r\n\t\t\t\taction.playerHeroPowerUsed = action.playerHeroPowerUsed ?? lastAction.playerHeroPowerUsed;\r\n\t\t\t\taction.opponentCardId = action.opponentCardId ?? lastAction.opponentCardId;\r\n\t\t\t\taction.opponentEntityId = action.opponentEntityId ?? lastAction.opponentEntityId;\r\n\t\t\t\taction.opponentHeroPowerCardId = action.opponentHeroPowerCardId ?? lastAction.opponentHeroPowerCardId;\r\n\t\t\t\taction.opponentHeroPowerEntityId =\r\n\t\t\t\t\taction.opponentHeroPowerEntityId ?? lastAction.opponentHeroPowerEntityId;\r\n\t\t\t\taction.opponentHeroPowerUsed = action.opponentHeroPowerUsed ?? lastAction.opponentHeroPowerUsed;\r\n\t\t\t\taction.playerTrinkets = action.playerTrinkets ?? lastAction.playerTrinkets;\r\n\t\t\t\taction.opponentTrinkets = action.opponentTrinkets ?? lastAction.opponentTrinkets;\r\n\t\t\t}\r\n\r\n\t\t\tif (lastAction && action.type === 'damage' && lastAction.type === 'attack') {\r\n\t\t\t\tlastAction.damages = lastAction.damages || [];\r\n\t\t\t\tlastAction.damages.push({\r\n\t\t\t\t\tdamage: action.damages[0].damage,\r\n\t\t\t\t\tsourceEntityId: action.damages[0].sourceEntityId,\r\n\t\t\t\t\ttargetEntityId: action.damages[0].targetEntityId,\r\n\t\t\t\t});\r\n\t\t\t\tlastAction.playerBoard = action.playerBoard;\r\n\t\t\t\tlastAction.opponentBoard = action.opponentBoard;\r\n\t\t\t\tlastAction.playerHand = action.playerHand;\r\n\t\t\t\tlastAction.opponentHand = action.opponentHand;\r\n\t\t\t\tlastAction.playerSecrets = action.playerSecrets;\r\n\t\t\t\tlastAction.opponentSecrets = action.opponentSecrets;\r\n\t\t\t\tlastAction.playerTrinkets = action.playerTrinkets;\r\n\t\t\t\tlastAction.opponentTrinkets = action.opponentTrinkets;\r\n\t\t\t} else if (lastAction && action.type === 'damage' && lastAction.type === 'damage') {\r\n\t\t\t\tlastAction.damages = lastAction.damages || [];\r\n\t\t\t\tlastAction.damages.push({\r\n\t\t\t\t\tdamage: action.damages[0].damage,\r\n\t\t\t\t\tsourceEntityId: action.damages[0].sourceEntityId,\r\n\t\t\t\t\ttargetEntityId: action.damages[0].targetEntityId,\r\n\t\t\t\t});\r\n\t\t\t\tlastAction.playerBoard = action.playerBoard;\r\n\t\t\t\tlastAction.opponentBoard = action.opponentBoard;\r\n\t\t\t\tlastAction.playerHand = action.playerHand;\r\n\t\t\t\tlastAction.opponentHand = action.opponentHand;\r\n\t\t\t\tlastAction.playerSecrets = action.playerSecrets;\r\n\t\t\t\tlastAction.opponentSecrets = action.opponentSecrets;\r\n\t\t\t\tlastAction.playerTrinkets = action.playerTrinkets;\r\n\t\t\t\tlastAction.opponentTrinkets = action.opponentTrinkets;\r\n\t\t\t} else if (\r\n\t\t\t\tlastAction &&\r\n\t\t\t\taction.type === 'power-target' &&\r\n\t\t\t\tlastAction.type === 'power-target' &&\r\n\t\t\t\taction.sourceEntityId === lastAction.sourceEntityId\r\n\t\t\t) {\r\n\t\t\t\tlastAction.targetEntityIds =\r\n\t\t\t\t\tlastAction.targetEntityIds ?? (lastAction.targetEntityId ? [lastAction.targetEntityId] : []);\r\n\t\t\t\taction.targetEntityIds =\r\n\t\t\t\t\taction.targetEntityIds ?? (action.targetEntityId ? [action.targetEntityId] : []);\r\n\t\t\t\tlastAction.targetEntityIds.push(...action.targetEntityIds);\r\n\t\t\t\t// So that when multiple Leapfroggers enchantments target the same minion,\r\n\t\t\t\t// we can count them in the replay viewer's text\r\n\t\t\t\t// lastAction.targetEntityIds = [...new Set(lastAction.targetEntityIds)];\r\n\t\t\t\tlastAction.playerBoard = action.playerBoard;\r\n\t\t\t\tlastAction.opponentBoard = action.opponentBoard;\r\n\t\t\t\tlastAction.playerHand = action.playerHand;\r\n\t\t\t\tlastAction.opponentHand = action.opponentHand;\r\n\t\t\t\tlastAction.playerSecrets = action.playerSecrets;\r\n\t\t\t\tlastAction.opponentSecrets = action.opponentSecrets;\r\n\t\t\t\tlastAction.playerTrinkets = action.playerTrinkets;\r\n\t\t\t\tlastAction.opponentTrinkets = action.opponentTrinkets;\r\n\t\t\t} else {\r\n\t\t\t\tresult.push(action);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn result;\r\n\t}\r\n\r\n\t// Calling sanitize every time before we add an action to the list is mandatory, since\r\n\t// the entities and boards are mutable\r\n\tprivate sanitize(board: readonly BoardEntity[]): readonly BoardEntity[] {\r\n\t\tif (!board) {\r\n\t\t\treturn undefined;\r\n\t\t}\r\n\t\treturn board.map(\r\n\t\t\t(entity) =>\r\n\t\t\t\t({\r\n\t\t\t\t\tentityId: entity.entityId,\r\n\t\t\t\t\tcardId: entity.cardId,\r\n\t\t\t\t\tfriendly: entity.friendly,\r\n\t\t\t\t\tattack: entity.attack,\r\n\t\t\t\t\thealth: entity.health,\r\n\t\t\t\t\tmaxHealth: entity.maxHealth,\r\n\t\t\t\t\ttaunt: entity.taunt,\r\n\t\t\t\t\tdivineShield: entity.divineShield,\r\n\t\t\t\t\tpoisonous: entity.poisonous,\r\n\t\t\t\t\tvenomous: entity.venomous,\r\n\t\t\t\t\treborn: entity.reborn,\r\n\t\t\t\t\twindfury: entity.windfury,\r\n\t\t\t\t\tstealth: entity.stealth,\r\n\t\t\t\t} as BoardEntity),\r\n\t\t);\r\n\t}\r\n\r\n\tprivate sanitizeTrinkets(trinkets: readonly BoardTrinket[]): readonly BoardTrinket[] {\r\n\t\tif (!trinkets?.length) {\r\n\t\t\treturn undefined;\r\n\t\t}\r\n\t\tconst result = trinkets.map(\r\n\t\t\t(t) =>\r\n\t\t\t\t({\r\n\t\t\t\t\tcardId: t.cardId,\r\n\t\t\t\t\tentityId: t.entityId,\r\n\t\t\t\t\tscriptDataNum1: t.scriptDataNum1,\r\n\t\t\t\t\tscriptDataNum6: t.scriptDataNum6,\r\n\t\t\t\t} as BoardTrinket),\r\n\t\t);\r\n\t\treturn result;\r\n\t}\r\n}\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"phases.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/phases.ts"],"names":[],"mappings":"","sourcesContent":["export type StartOfCombatPhase =\r\n\t| 'QuestReward'\r\n\t| 'Anomalies'\r\n\t| 'Trinket'\r\n\t| 'PreCombatHeroPower'\r\n\t| 'IllidanHeroPower'\r\n\t| 'HeroPower'\r\n\t| 'Secret'\r\n\t| 'Minion';\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"soc-action-processor.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/soc-action-processor.ts"],"names":[],"mappings":"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","sourcesContent":["import { BgsPlayerEntity, BoardTrinket } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { BoardSecret } from '../../board-secret';\r\nimport { hasStartOfCombat, StartOfCombatCard, StartOfCombatTiming } from '../../cards/card.interface';\r\nimport { cardMappings } from '../../cards/impl/_card-mappings';\r\nimport { AnomalousTwin } from '../../cards/impl/anomaly/anomalous-twin';\r\nimport { BlessedOrBlighted } from '../../cards/impl/anomaly/blessed-or-blighted';\r\nimport { BoonOfBeetles } from '../../cards/impl/bg-spell/boon-of-beetles';\r\nimport { ToxicTumbleweed } from '../../cards/impl/bg-spell/toxic-tumbleweed';\r\nimport { UpperHand } from '../../cards/impl/bg-spell/upper-hand';\r\nimport { AimHigh } from '../../cards/impl/hero-power/aim-high';\r\nimport { AimLeft } from '../../cards/impl/hero-power/aim-left';\r\nimport { AimLow } from '../../cards/impl/hero-power/aim-low';\r\nimport { AimRight } from '../../cards/impl/hero-power/aim-right';\r\nimport { AllWillBurn } from '../../cards/impl/hero-power/all-will-burn';\r\nimport { EarthInvocation } from '../../cards/impl/hero-power/earth-invocation';\r\nimport { EmbraceYourRage } from '../../cards/impl/hero-power/embrace-your-rage';\r\nimport { FireInvocation } from '../../cards/impl/hero-power/fire-invocation';\r\nimport { LightningInvocation } from '../../cards/impl/hero-power/lightning-invocation';\r\nimport { RapidReanimation } from '../../cards/impl/hero-power/rapid-reanimation';\r\nimport { RebornRites } from '../../cards/impl/hero-power/reborn-rites';\r\nimport { Tentacular } from '../../cards/impl/hero-power/tentacular';\r\nimport { WaterInvocation } from '../../cards/impl/hero-power/water-invocation';\r\nimport { WaxWarband } from '../../cards/impl/hero-power/wax-warband';\r\nimport { AmberGuardian } from '../../cards/impl/minion/amber-guardian';\r\nimport { AudaciousAnchor } from '../../cards/impl/minion/audacious-anchor';\r\nimport { CarbonicCopy } from '../../cards/impl/minion/carbonic-copy';\r\nimport { CorruptedMyrmidon } from '../../cards/impl/minion/corrupted-myrmidon';\r\nimport { ElderTaggawag } from '../../cards/impl/minion/elder-taggawag';\r\nimport { HawkstriderHerald } from '../../cards/impl/minion/hawkstrider-herald';\r\nimport { MantidQueen } from '../../cards/impl/minion/mantid-queen';\r\nimport { Sandy } from '../../cards/impl/minion/sandy';\r\nimport { SunScreener } from '../../cards/impl/minion/sun-screener';\r\nimport { TheUninvitedGuest } from '../../cards/impl/minion/the-uninvited-guest';\r\nimport { ThousandthPaperDrake } from '../../cards/impl/minion/thousandth-paper-drake';\r\nimport { YulonFortuneGranter } from '../../cards/impl/minion/yulon-fortune-granter';\r\nimport { EvilTwin } from '../../cards/impl/quest-reward/evil-twin';\r\nimport { StaffOfOrigination } from '../../cards/impl/quest-reward/staff-of-origination';\r\nimport { StolenGold } from '../../cards/impl/quest-reward/stolen-gold';\r\nimport { FleetingVigor } from '../../cards/impl/spell/fleeting-vigor';\r\nimport { AutomatonPortrait } from '../../cards/impl/trinket/automaton-portrait';\r\nimport { BronzeTimepiece } from '../../cards/impl/trinket/bronze-timepiece';\r\nimport { EmeraldDreamcatcher } from '../../cards/impl/trinket/emerald-dreamcatcher';\r\nimport { EternalPortrait } from '../../cards/impl/trinket/eternal-portrait';\r\nimport { FishySticker } from '../../cards/impl/trinket/fishy-sticker';\r\nimport { HoggyBank } from '../../cards/impl/trinket/hoggy-bank';\r\nimport { HollyMallet } from '../../cards/impl/trinket/holly-mallet';\r\nimport { IronforgeAnvil } from '../../cards/impl/trinket/ironforge-anvil';\r\nimport { JarredFrostling } from '../../cards/impl/trinket/jarred-frostling';\r\nimport { KarazhanChessSet } from '../../cards/impl/trinket/karazhan-chess-set';\r\nimport { RivendarePortrait } from '../../cards/impl/trinket/rivendare-portrait';\r\nimport { RustyTrident } from '../../cards/impl/trinket/rusty-trident';\r\nimport { ShipInABottle } from '../../cards/impl/trinket/ship-in-a-bottle';\r\nimport { SummoningSphere } from '../../cards/impl/trinket/summoning-sphere';\r\nimport { TinyfinOnesie } from '../../cards/impl/trinket/tinyfin-onesie';\r\nimport { TrainingCertificate } from '../../cards/impl/trinket/training-certificate';\r\nimport { ValorousMedallion } from '../../cards/impl/trinket/valorous-medaillion';\r\nimport { CardIds } from '../../services/card-ids';\r\nimport { processMinionDeath } from '../attack';\r\nimport { handleSummonsWhenSpace } from '../summon-when-space';\r\nimport { SoCInput } from './start-of-combat-input';\r\n\r\nexport const performStartOfCombatAction = (\r\n\tcardId: string,\r\n\tentity: BoardEntity | BoardTrinket | BgsPlayerEntity | BoardSecret,\r\n\tinput: SoCInput,\r\n\tprocessDeaths: boolean,\r\n\ttiming?: StartOfCombatTiming,\r\n): boolean => {\r\n\tlet hasTriggered:\r\n\t\t| boolean\r\n\t\t| {\r\n\t\t\t\thasTriggered: boolean;\r\n\t\t\t\tshouldRecomputeCurrentAttacker: boolean;\r\n\t\t } = false;\r\n\tconst promoPortraitCount = getPromoPortraitCount(input.playerEntity);\r\n\tfor (let i = promoPortraitCount; i >= 0; i--) {\r\n\t\tconst card = getStartOfCombatAction(cardId);\r\n\t\tif (!!timing && card?.startOfCombatTiming !== timing) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tconst action = card?.startOfCombat;\r\n\t\tif (!!action) {\r\n\t\t\thasTriggered = action(entity, input);\r\n\t\t\t// Always proc it (for promo portrait), and use the hasTriggered for finer control\r\n\t\t\tonStartOfCombatTriggered(i, cardId, input.playerEntity);\r\n\t\t\tif (!!hasTriggered) {\r\n\t\t\t\tif (processDeaths) {\r\n\t\t\t\t\tprocessMinionDeath(\r\n\t\t\t\t\t\tinput.playerBoard,\r\n\t\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\t\tinput.opponentBoard,\r\n\t\t\t\t\t\tinput.opponentEntity,\r\n\t\t\t\t\t\tinput.gameState,\r\n\t\t\t\t\t\t// See https://replays.firestoneapp.com/?reviewId=2eacbbc2-7dfa-487b-951d-0fa6d31d175e&turn=25&action=1\r\n\t\t\t\t\t\t// It looks like it doesn't look for the \"summons when space\" between Stitched Salvager's SoC and\r\n\t\t\t\t\t\t// Hawkstrider Herald SoC\r\n\t\t\t\t\t\ttrue,\r\n\t\t\t\t\t);\r\n\t\t\t\t\t// https://replays.firestoneapp.com/?reviewId=6293597f-28fa-472e-ba8c-35f6b7deef58&turn=31&action=6\r\n\t\t\t\t\t// The first RapidReanimation triggers, resummons the target, then the second RapidReanimation triggers\r\n\t\t\t\t\t// So we need to process the resummon as soon as the minion dies, and before processing the second RapidReanimation\r\n\t\t\t\t\thandleSummonsWhenSpace(\r\n\t\t\t\t\t\tinput.playerBoard,\r\n\t\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\t\tinput.opponentBoard,\r\n\t\t\t\t\t\tinput.opponentEntity,\r\n\t\t\t\t\t\tinput.gameState,\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t\tif (typeof hasTriggered !== 'boolean' && hasTriggered.shouldRecomputeCurrentAttacker) {\r\n\t\t\t\t\tinput.currentAttacker =\r\n\t\t\t\t\t\tinput.playerBoard.length > input.opponentBoard.length\r\n\t\t\t\t\t\t\t? input.playerIsFriendly\r\n\t\t\t\t\t\t\t\t? 0\r\n\t\t\t\t\t\t\t\t: 1\r\n\t\t\t\t\t\t\t: input.opponentBoard.length > input.playerBoard.length\r\n\t\t\t\t\t\t\t? input.playerIsFriendly\r\n\t\t\t\t\t\t\t\t? 1\r\n\t\t\t\t\t\t\t\t: 0\r\n\t\t\t\t\t\t\t: Math.round(Math.random());\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn !!hasTriggered;\r\n};\r\n\r\n// TODO: load all cards on start, then do some programmatic mapping\r\nconst getStartOfCombatAction = (cardId: string): StartOfCombatCard => {\r\n\tswitch (cardId) {\r\n\t\t// Quest rewards\r\n\t\tcase CardIds.EvilTwin:\r\n\t\t\treturn EvilTwin;\r\n\t\tcase CardIds.StaffOfOrigination_BG24_Reward_312:\r\n\t\t\treturn StaffOfOrigination;\r\n\t\tcase CardIds.StolenGold:\r\n\t\t\treturn StolenGold;\r\n\r\n\t\t// Trinkets\r\n\t\tcase CardIds.HolyMallet_BG30_MagicItem_902:\r\n\t\t\treturn HollyMallet;\r\n\t\tcase CardIds.TrainingCertificate_BG30_MagicItem_962:\r\n\t\t\treturn TrainingCertificate;\r\n\t\tcase CardIds.ValorousMedallion_BG30_MagicItem_970:\r\n\t\tcase CardIds.ValorousMedallion_ValorousMedallionToken_BG30_MagicItem_970t:\r\n\t\t\treturn ValorousMedallion;\r\n\t\tcase CardIds.EmeraldDreamcatcher_BG30_MagicItem_542:\r\n\t\t\treturn EmeraldDreamcatcher;\r\n\t\tcase CardIds.JarredFrostling_BG30_MagicItem_952:\r\n\t\t\treturn JarredFrostling;\r\n\t\tcase CardIds.RustyTrident_BG30_MagicItem_917:\r\n\t\t\treturn RustyTrident;\r\n\t\tcase CardIds.HoggyBank_BG30_MagicItem_411:\r\n\t\t\treturn HoggyBank;\r\n\t\tcase CardIds.AutomatonPortrait_BG30_MagicItem_303:\r\n\t\t\treturn AutomatonPortrait;\r\n\t\tcase CardIds.ShipInABottle_BG30_MagicItem_407:\r\n\t\t\treturn ShipInABottle;\r\n\t\tcase CardIds.EternalPortrait_BG30_MagicItem_301:\r\n\t\t\treturn EternalPortrait;\r\n\t\tcase CardIds.RivendarePortrait_BG30_MagicItem_310:\r\n\t\t\treturn RivendarePortrait;\r\n\t\tcase CardIds.TinyfinOnesie_BG30_MagicItem_441:\r\n\t\t\treturn TinyfinOnesie;\r\n\t\tcase CardIds.BronzeTimepiece_BG30_MagicItem_995:\r\n\t\t\treturn BronzeTimepiece;\r\n\t\tcase CardIds.IronforgeAnvil_BG30_MagicItem_403:\r\n\t\t\treturn IronforgeAnvil;\r\n\t\tcase CardIds.KarazhanChessSet_BG30_MagicItem_972:\r\n\t\t\treturn KarazhanChessSet;\r\n\t\t// case CardIds.FishySticker_BG30_MagicItem_821:\r\n\t\tcase CardIds.FishySticker_FishyStickerToken_BG30_MagicItem_821t2:\r\n\t\t\treturn FishySticker;\r\n\t\tcase CardIds.SummoningSphere_BGDUO_MagicItem_003:\r\n\t\t\treturn SummoningSphere;\r\n\r\n\t\t// Hero powers\r\n\t\tcase CardIds.EarthInvocationToken:\r\n\t\t\treturn EarthInvocation;\r\n\t\tcase CardIds.WaterInvocationToken:\r\n\t\t\treturn WaterInvocation;\r\n\t\tcase CardIds.FireInvocationToken:\r\n\t\t\treturn FireInvocation;\r\n\t\tcase CardIds.LightningInvocationToken:\r\n\t\t\treturn LightningInvocation;\r\n\t\tcase CardIds.AllWillBurn:\r\n\t\t\treturn AllWillBurn;\r\n\t\tcase CardIds.EmbraceYourRage:\r\n\t\t\treturn EmbraceYourRage;\r\n\t\tcase CardIds.Ozumat_Tentacular:\r\n\t\t\treturn Tentacular;\r\n\t\tcase CardIds.RebornRites:\r\n\t\t\treturn RebornRites;\r\n\t\tcase CardIds.TeronGorefiend_RapidReanimation:\r\n\t\t\treturn RapidReanimation;\r\n\t\tcase CardIds.WaxWarband:\r\n\t\t\treturn WaxWarband;\r\n\t\tcase CardIds.AimLeftToken:\r\n\t\t\treturn AimLeft;\r\n\t\tcase CardIds.AimRightToken:\r\n\t\t\treturn AimRight;\r\n\t\tcase CardIds.AimLowToken:\r\n\t\t\treturn AimLow;\r\n\t\tcase CardIds.AimHighToken:\r\n\t\t\treturn AimHigh;\r\n\r\n\t\t// Anomalies\r\n\t\tcase CardIds.BlessedOrBlighted_BG27_Anomaly_726:\r\n\t\t\treturn BlessedOrBlighted;\r\n\t\tcase CardIds.AnomalousTwin_BG27_Anomaly_560:\r\n\t\t\treturn AnomalousTwin;\r\n\t\tcase CardIds.BoonOfBeetles_BG28_603:\r\n\t\t\treturn BoonOfBeetles;\r\n\r\n\t\t// Spells\r\n\t\tcase CardIds.ToxicTumbleweed_BG28_641:\r\n\t\t\treturn ToxicTumbleweed;\r\n\t\tcase CardIds.UpperHand_BG28_573:\r\n\t\t\treturn UpperHand;\r\n\t\tcase CardIds.FleetingVigor_BG28_519:\r\n\t\t\treturn FleetingVigor;\r\n\r\n\t\t// Minions\r\n\t\tcase CardIds.AmberGuardian_BG24_500:\r\n\t\tcase CardIds.AmberGuardian_BG24_500_G:\r\n\t\t\treturn AmberGuardian;\r\n\t\t// case CardIds.SanctumRester_BG26_356:\r\n\t\t// case CardIds.SanctumRester_BG26_356_G:\r\n\t\t// \treturn SanctumRester;\r\n\t\tcase CardIds.CorruptedMyrmidon_BG23_012:\r\n\t\tcase CardIds.CorruptedMyrmidon_BG23_012_G:\r\n\t\t\treturn CorruptedMyrmidon;\r\n\t\tcase CardIds.MantidQueen_BG22_402:\r\n\t\tcase CardIds.MantidQueen_BG22_402_G:\r\n\t\t\treturn MantidQueen;\r\n\t\tcase CardIds.CarbonicCopy_BG27_503:\r\n\t\tcase CardIds.CarbonicCopy_BG27_503_G:\r\n\t\t\treturn CarbonicCopy;\r\n\t\tcase CardIds.HawkstriderHerald_BG27_079:\r\n\t\tcase CardIds.HawkstriderHerald_BG27_079_G:\r\n\t\t\treturn HawkstriderHerald;\r\n\t\tcase CardIds.AudaciousAnchor_BG28_904:\r\n\t\tcase CardIds.AudaciousAnchor_BG28_904_G:\r\n\t\t\treturn AudaciousAnchor;\r\n\t\tcase CardIds.ThousandthPaperDrake_BG29_810:\r\n\t\tcase CardIds.ThousandthPaperDrake_BG29_810_G:\r\n\t\t\treturn ThousandthPaperDrake;\r\n\t\tcase CardIds.YulonFortuneGranter_BG29_811:\r\n\t\tcase CardIds.YulonFortuneGranter_BG29_811_G:\r\n\t\t\treturn YulonFortuneGranter;\r\n\t\t// case CardIds.HoardingHatespawn_BG29_872:\r\n\t\t// case CardIds.HoardingHatespawn_BG29_872_G:\r\n\t\t// \treturn HoardingHatespawn;\r\n\t\tcase CardIds.TheUninvitedGuest_BG29_875:\r\n\t\tcase CardIds.TheUninvitedGuest_BG29_875_G:\r\n\t\t\treturn TheUninvitedGuest;\r\n\t\tcase CardIds.Sandy_BGDUO_125:\r\n\t\tcase CardIds.Sandy_BGDUO_125_G:\r\n\t\t\treturn Sandy;\r\n\t\tcase CardIds.ElderTaggawag_TB_BaconShop_HERO_14_Buddy:\r\n\t\tcase CardIds.ElderTaggawag_TB_BaconShop_HERO_14_Buddy_G:\r\n\t\t\treturn ElderTaggawag;\r\n\t\tcase CardIds.SunScreener_BG30_101:\r\n\t\tcase CardIds.SunScreener_BG30_101_G:\r\n\t\t\treturn SunScreener;\r\n\r\n\t\tdefault:\r\n\t\t\tconst candidate = cardMappings[cardId];\r\n\t\t\tif (hasStartOfCombat(candidate)) {\r\n\t\t\t\treturn candidate;\r\n\t\t\t}\r\n\t\t\treturn null;\r\n\t}\r\n};\r\n\r\nconst onStartOfCombatTriggered = (iteration: number, triggeredCardId: string, playerEntity: BgsPlayerEntity) => {\r\n\t// Some procs are iso-functional, and don't update the promo portrait\r\n\tconst promoPortraits = playerEntity.trinkets.filter(\r\n\t\t(t) => t.cardId === CardIds.PromoPortrait_BG30_MagicItem_918 && t.scriptDataNum1 > 0,\r\n\t);\r\n\tif (promoPortraits.length === 0 || iteration === 0 || iteration > promoPortraits.length) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tswitch (triggeredCardId) {\r\n\t\tcase CardIds.StolenGold:\r\n\t\tcase CardIds.HolyMallet_BG30_MagicItem_902:\r\n\t\tcase CardIds.EmeraldDreamcatcher_BG30_MagicItem_542:\r\n\t\tcase CardIds.EternalPortrait_BG30_MagicItem_301:\r\n\t\tcase CardIds.BronzeTimepiece_BG30_MagicItem_995:\r\n\t\tcase CardIds.SwattingInsects:\r\n\t\tcase CardIds.RebornRites:\r\n\t\tcase CardIds.BoonOfBeetles_BG28_603:\r\n\t\t\treturn;\r\n\t}\r\n\r\n\tconst promoPortrait = promoPortraits[iteration - 1];\r\n\tpromoPortrait.scriptDataNum1--;\r\n};\r\n\r\nconst getPromoPortraitCount = (playerEntity: BgsPlayerEntity) => {\r\n\treturn playerEntity.trinkets.filter(\r\n\t\t(t) => t.cardId === CardIds.PromoPortrait_BG30_MagicItem_918 && t.scriptDataNum1 > 0,\r\n\t).length;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"soc-anomalies.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/soc-anomalies.ts"],"names":[],"mappings":";;;AAIA,4DAA8D;AAC9D,iEAAoE;AAG7D,MAAM,4BAA4B,GAAG,CAC3C,YAA6B,EAC7B,WAA0B,EAC1B,cAA+B,EAC/B,aAA4B,EAC5B,eAAuB,EACvB,SAAwB,EACf,EAAE;IACX,eAAe,GAAG,qCAAqC,CAAC;QACvD,YAAY,EAAE,YAAY;QAC1B,WAAW,EAAE,WAAW;QACxB,cAAc,EAAE,cAAc;QAC9B,aAAa,EAAE,aAAa;QAC5B,eAAe;QACf,SAAS;QACT,gBAAgB,EAAE,IAAI;KACtB,CAAC,CAAC;IACH,eAAe,GAAG,qCAAqC,CAAC;QACvD,YAAY,EAAE,cAAc;QAC5B,WAAW,EAAE,aAAa;QAC1B,cAAc,EAAE,YAAY;QAC5B,aAAa,EAAE,WAAW;QAC1B,eAAe;QACf,SAAS;QACT,gBAAgB,EAAE,KAAK;KACvB,CAAC,CAAC;IACH,MAAM,8BAA8B,GAAG,IAAA,0CAAsB,EAC5D,WAAW,EACX,YAAY,EACZ,aAAa,EACb,cAAc,EACd,SAAS,CACT,CAAC;IACF,IAAI,8BAA8B,EAAE;QACnC,eAAe;YACd,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM;gBACxC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM;oBAC3C,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;KAC9B;IACD,OAAO,eAAe,CAAC;AACxB,CAAC,CAAC;AA1CW,QAAA,4BAA4B,gCA0CvC;AAEF,MAAM,qCAAqC,GAAG,CAAC,KAAe,EAAU,EAAE;;IACzE,MAAM,KAAK,GAAG,CAAA,MAAA,KAAK,CAAC,YAAY,CAAC,QAAQ,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,yBAAoD,CAAC;QACnH,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,CAAC,CAAC;IACL,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/B,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,SAAS,CAAC,SAAS,0CAAE,MAAM,CAAA,IAAI,KAAK,CAAC,YAAY,CAAC,iBAAiB,EAAE;YAC/E,OAAO,KAAK,CAAC,eAAe,CAAC;SAC7B;QAED,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE;YAChD,IAAA,iDAA0B,EAAC,OAAO,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SACtE;KACD;IAED,OAAO,KAAK,CAAC,eAAe,CAAC;AAC9B,CAAC,CAAC","sourcesContent":["import { BgsPlayerEntity } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { CardIds } from '../../services/card-ids';\r\nimport { FullGameState } from '../internal-game-state';\r\nimport { handleSummonsWhenSpace } from '../summon-when-space';\r\nimport { performStartOfCombatAction } from './soc-action-processor';\r\nimport { SoCInput } from './start-of-combat-input';\r\n\r\nexport const handleStartOfCombatAnomalies = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tgameState: FullGameState,\r\n): number => {\r\n\tcurrentAttacker = handleStartOfCombatAnomaliesForPlayer({\r\n\t\tplayerEntity: playerEntity,\r\n\t\tplayerBoard: playerBoard,\r\n\t\topponentEntity: opponentEntity,\r\n\t\topponentBoard: opponentBoard,\r\n\t\tcurrentAttacker,\r\n\t\tgameState,\r\n\t\tplayerIsFriendly: true,\r\n\t});\r\n\tcurrentAttacker = handleStartOfCombatAnomaliesForPlayer({\r\n\t\tplayerEntity: opponentEntity,\r\n\t\tplayerBoard: opponentBoard,\r\n\t\topponentEntity: playerEntity,\r\n\t\topponentBoard: playerBoard,\r\n\t\tcurrentAttacker,\r\n\t\tgameState,\r\n\t\tplayerIsFriendly: false,\r\n\t});\r\n\tconst shouldRecomputeCurrentAttacker = handleSummonsWhenSpace(\r\n\t\tplayerBoard,\r\n\t\tplayerEntity,\r\n\t\topponentBoard,\r\n\t\topponentEntity,\r\n\t\tgameState,\r\n\t);\r\n\tif (shouldRecomputeCurrentAttacker) {\r\n\t\tcurrentAttacker =\r\n\t\t\tplayerBoard.length > opponentBoard.length\r\n\t\t\t\t? 0\r\n\t\t\t\t: opponentBoard.length > playerBoard.length\r\n\t\t\t\t? 1\r\n\t\t\t\t: Math.round(Math.random());\r\n\t}\r\n\treturn currentAttacker;\r\n};\r\n\r\nconst handleStartOfCombatAnomaliesForPlayer = (input: SoCInput): number => {\r\n\tconst loops = input.playerEntity.trinkets?.some((t) => t.cardId === CardIds.ValdrakkenWindChimes_BG32_MagicItem_365)\r\n\t\t? 2\r\n\t\t: 1;\r\n\tfor (let i = 0; i < loops; i++) {\r\n\t\tif (!input.gameState.anomalies?.length || input.playerEntity.startOfCombatDone) {\r\n\t\t\treturn input.currentAttacker;\r\n\t\t}\r\n\r\n\t\tfor (const anomaly of input.gameState.anomalies) {\r\n\t\t\tperformStartOfCombatAction(anomaly, input.playerEntity, input, false);\r\n\t\t}\r\n\t}\r\n\r\n\treturn input.currentAttacker;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"soc-hero-power.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/soc-hero-power.ts"],"names":[],"mappings":";;;AAIA,4DAA8D;AAC9D,iEAAoE;AAG7D,MAAM,6BAA6B,GAAG,CAC5C,YAA6B,EAC7B,WAA0B,EAC1B,cAA+B,EAC/B,aAA4B,EAC5B,eAAuB,EACvB,SAAwB,EACf,EAAE;IAGX,IAAI,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,EAAE;QACxB,eAAe,GAAG,mCAAmC,CAAC;YACrD,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,WAAW;YACxB,cAAc,EAAE,cAAc;YAC9B,aAAa,EAAE,aAAa;YAC5B,eAAe;YACf,gBAAgB,EAAE,IAAI;YACtB,SAAS;SACT,CAAC,CAAC;QACH,eAAe,GAAG,mCAAmC,CAAC;YACrD,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,aAAa;YAC1B,cAAc,EAAE,YAAY;YAC5B,aAAa,EAAE,WAAW;YAC1B,eAAe;YACf,gBAAgB,EAAE,KAAK;YACvB,SAAS;SACT,CAAC,CAAC;KACH;SAAM;QACN,eAAe,GAAG,mCAAmC,CAAC;YACrD,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,aAAa;YAC1B,cAAc,EAAE,YAAY;YAC5B,aAAa,EAAE,WAAW;YAC1B,eAAe;YACf,gBAAgB,EAAE,KAAK;YACvB,SAAS;SACT,CAAC,CAAC;QACH,eAAe,GAAG,mCAAmC,CAAC;YACrD,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,WAAW;YACxB,cAAc,EAAE,cAAc;YAC9B,aAAa,EAAE,aAAa;YAC5B,eAAe;YACf,gBAAgB,EAAE,IAAI;YACtB,SAAS;SACT,CAAC,CAAC;KACH;IACD,MAAM,8BAA8B,GAAG,IAAA,0CAAsB,EAC5D,WAAW,EACX,YAAY,EACZ,aAAa,EACb,cAAc,EACd,SAAS,CACT,CAAC;IACF,IAAI,8BAA8B,EAAE;QACnC,eAAe;YACd,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM;gBACxC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM;oBAC3C,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;KAC9B;IACD,OAAO,eAAe,CAAC;AACxB,CAAC,CAAC;AAjEW,QAAA,6BAA6B,iCAiExC;AAEF,MAAM,mCAAmC,GAAG,CAAC,KAAe,EAAU,EAAE;;IACvE,MAAM,KAAK,GAAG,CAAA,MAAA,KAAK,CAAC,YAAY,CAAC,QAAQ,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,yBAAoD,CAAC;QACnH,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,CAAC,CAAC;IACL,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/B,IAAI,KAAK,CAAC,YAAY,CAAC,iBAAiB,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,EAAE;YAC3E,OAAO,KAAK,CAAC,eAAe,CAAC;SAC7B;QAED,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE;YACtD,IAAA,iDAA0B,EAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC;SACjG;KACD;IACD,OAAO,KAAK,CAAC,eAAe,CAAC;AAC9B,CAAC,CAAC","sourcesContent":["import { BgsPlayerEntity } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { CardIds } from '../../services/card-ids';\r\nimport { FullGameState } from '../internal-game-state';\r\nimport { handleSummonsWhenSpace } from '../summon-when-space';\r\nimport { performStartOfCombatAction } from './soc-action-processor';\r\nimport { SoCInput } from './start-of-combat-input';\r\n\r\nexport const handleStartOfCombatHeroPowers = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tgameState: FullGameState,\r\n): number => {\r\n\t// Apparently it's a toin coss about whether to handle Illidan first or Al'Akir first\r\n\t// Auras are only relevant for Illidan, and already applied there\r\n\tif (Math.random() < 0.5) {\r\n\t\tcurrentAttacker = handlePlayerStartOfCombatHeroPowers({\r\n\t\t\tplayerEntity: playerEntity,\r\n\t\t\tplayerBoard: playerBoard,\r\n\t\t\topponentEntity: opponentEntity,\r\n\t\t\topponentBoard: opponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tplayerIsFriendly: true,\r\n\t\t\tgameState,\r\n\t\t});\r\n\t\tcurrentAttacker = handlePlayerStartOfCombatHeroPowers({\r\n\t\t\tplayerEntity: opponentEntity,\r\n\t\t\tplayerBoard: opponentBoard,\r\n\t\t\topponentEntity: playerEntity,\r\n\t\t\topponentBoard: playerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tplayerIsFriendly: false,\r\n\t\t\tgameState,\r\n\t\t});\r\n\t} else {\r\n\t\tcurrentAttacker = handlePlayerStartOfCombatHeroPowers({\r\n\t\t\tplayerEntity: opponentEntity,\r\n\t\t\tplayerBoard: opponentBoard,\r\n\t\t\topponentEntity: playerEntity,\r\n\t\t\topponentBoard: playerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tplayerIsFriendly: false,\r\n\t\t\tgameState,\r\n\t\t});\r\n\t\tcurrentAttacker = handlePlayerStartOfCombatHeroPowers({\r\n\t\t\tplayerEntity: playerEntity,\r\n\t\t\tplayerBoard: playerBoard,\r\n\t\t\topponentEntity: opponentEntity,\r\n\t\t\topponentBoard: opponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tplayerIsFriendly: true,\r\n\t\t\tgameState,\r\n\t\t});\r\n\t}\r\n\tconst shouldRecomputeCurrentAttacker = handleSummonsWhenSpace(\r\n\t\tplayerBoard,\r\n\t\tplayerEntity,\r\n\t\topponentBoard,\r\n\t\topponentEntity,\r\n\t\tgameState,\r\n\t);\r\n\tif (shouldRecomputeCurrentAttacker) {\r\n\t\tcurrentAttacker =\r\n\t\t\tplayerBoard.length > opponentBoard.length\r\n\t\t\t\t? 0\r\n\t\t\t\t: opponentBoard.length > playerBoard.length\r\n\t\t\t\t? 1\r\n\t\t\t\t: Math.round(Math.random());\r\n\t}\r\n\treturn currentAttacker;\r\n};\r\n\r\nconst handlePlayerStartOfCombatHeroPowers = (input: SoCInput): number => {\r\n\tconst loops = input.playerEntity.trinkets?.some((t) => t.cardId === CardIds.ValdrakkenWindChimes_BG32_MagicItem_365)\r\n\t\t? 2\r\n\t\t: 1;\r\n\tfor (let i = 0; i < loops; i++) {\r\n\t\tif (input.playerEntity.startOfCombatDone || input.playerEntity.hpLeft <= 0) {\r\n\t\t\treturn input.currentAttacker;\r\n\t\t}\r\n\r\n\t\tfor (const heroPower of input.playerEntity.heroPowers) {\r\n\t\t\tperformStartOfCombatAction(heroPower.cardId, input.playerEntity, input, true, 'start-of-combat');\r\n\t\t}\r\n\t}\r\n\treturn input.currentAttacker;\r\n};\r\n\r\n// export const getHeroPowerForHero = (heroCardId: string): string => {\r\n// \tswitch (heroCardId) {\r\n// \t\tcase CardIds.IllidanStormrage_TB_BaconShop_HERO_08:\r\n// \t\t\treturn CardIds.Wingmen;\r\n// \t\tcase CardIds.TheLichKing_TB_BaconShop_HERO_22:\r\n// \t\t\treturn CardIds.RebornRites;\r\n// \t\tcase CardIds.ProfessorPutricide_BG25_HERO_100:\r\n// \t\t\treturn CardIds.RagePotion;\r\n// \t\tcase CardIds.Deathwing_TB_BaconShop_HERO_52:\r\n// \t\t\treturn CardIds.AllWillBurn;\r\n// \t\tcase CardIds.TeronGorefiend_BG25_HERO_103:\r\n// \t\t\treturn CardIds.TeronGorefiend_RapidReanimation;\r\n// \t}\r\n// \treturn null;\r\n// };\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"soc-illidan-hero-power.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/soc-illidan-hero-power.ts"],"names":[],"mappings":"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","sourcesContent":["import { BgsPlayerEntity } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { CardIds } from '../../services/card-ids';\r\nimport { processMinionDeath, simulateAttack } from '../attack';\r\nimport { FullGameState } from '../internal-game-state';\r\nimport { modifyStats } from '../stats';\r\nimport { handleSummonsWhenSpace } from '../summon-when-space';\r\n\r\nexport const handleIllidanHeroPowers = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tgameState: FullGameState,\r\n): { attacker: number; force: boolean } => {\r\n\tlet shouldForce = false;\r\n\t// console.log('current attacker before', currentAttacker);\r\n\t// Apparently it's a toin coss about whether to handle Illidan first or Al'Akir first\r\n\t// Auras are only relevant for Illidan, and already applied there\r\n\tif (Math.random() < 0.5) {\r\n\t\tconst { attacker: newAttacker, force: force1 } = handlePlayerIllidanHeroPowers(\r\n\t\t\tplayerEntity,\r\n\t\t\tplayerBoard,\r\n\t\t\topponentEntity,\r\n\t\t\topponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\ttrue,\r\n\t\t\tgameState,\r\n\t\t);\r\n\t\tconst { attacker: newAttacker2, force: force2 } = handlePlayerIllidanHeroPowers(\r\n\t\t\topponentEntity,\r\n\t\t\topponentBoard,\r\n\t\t\tplayerEntity,\r\n\t\t\tplayerBoard,\r\n\t\t\tnewAttacker,\r\n\t\t\tfalse,\r\n\t\t\tgameState,\r\n\t\t);\r\n\t\tshouldForce = force1 || force2;\r\n\t\tcurrentAttacker = newAttacker2;\r\n\t} else {\r\n\t\tconst { attacker: newAttacker, force: force1 } = handlePlayerIllidanHeroPowers(\r\n\t\t\topponentEntity,\r\n\t\t\topponentBoard,\r\n\t\t\tplayerEntity,\r\n\t\t\tplayerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tfalse,\r\n\t\t\tgameState,\r\n\t\t);\r\n\t\tconst { attacker: newAttacker2, force: force2 } = handlePlayerIllidanHeroPowers(\r\n\t\t\tplayerEntity,\r\n\t\t\tplayerBoard,\r\n\t\t\topponentEntity,\r\n\t\t\topponentBoard,\r\n\t\t\tnewAttacker,\r\n\t\t\ttrue,\r\n\t\t\tgameState,\r\n\t\t);\r\n\t\tshouldForce = force1 || force2;\r\n\t\tcurrentAttacker = newAttacker2;\r\n\t}\r\n\tprocessMinionDeath(playerBoard, playerEntity, opponentBoard, opponentEntity, gameState);\r\n\tconst shouldRecomputeCurrentAttacker = handleSummonsWhenSpace(\r\n\t\tplayerBoard,\r\n\t\tplayerEntity,\r\n\t\topponentBoard,\r\n\t\topponentEntity,\r\n\t\tgameState,\r\n\t);\r\n\tif (shouldForce) {\r\n\t\treturn { attacker: currentAttacker, force: true };\r\n\t}\r\n\tif (shouldRecomputeCurrentAttacker) {\r\n\t\tcurrentAttacker =\r\n\t\t\tplayerBoard.length > opponentBoard.length\r\n\t\t\t\t? 0\r\n\t\t\t\t: opponentBoard.length > playerBoard.length\r\n\t\t\t\t? 1\r\n\t\t\t\t: Math.round(Math.random());\r\n\t}\r\n\treturn { attacker: currentAttacker, force: false };\r\n};\r\n\r\nconst handlePlayerIllidanHeroPowers = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tfriendly: boolean,\r\n\tgameState: FullGameState,\r\n): { attacker: number; force: boolean } => {\r\n\tconst loops = playerEntity.trinkets?.some((t) => t.cardId === CardIds.ValdrakkenWindChimes_BG32_MagicItem_365)\r\n\t\t? 2\r\n\t\t: 1;\r\n\tfor (let i = 0; i < loops; i++) {\r\n\t\tif (playerEntity.hpLeft <= 0) {\r\n\t\t\treturn { attacker: currentAttacker, force: false };\r\n\t\t}\r\n\t\tfor (const heroPower of playerEntity.heroPowers) {\r\n\t\t\tif (heroPower.cardId === CardIds.Wingmen && playerBoard.length > 0) {\r\n\t\t\t\t// After Illidan triggers, it's always the other opponent's turn\r\n\t\t\t\t// https://x.com/LoewenMitchell/status/1752714583360639131?s=20\r\n\t\t\t\t// Confirmed by BoarControl on Discord on 33.6.2 2025-10-20\r\n\t\t\t\thandleIllidanForPlayer(\r\n\t\t\t\t\tplayerBoard,\r\n\t\t\t\t\tplayerEntity,\r\n\t\t\t\t\topponentBoard,\r\n\t\t\t\t\topponentEntity,\r\n\t\t\t\t\tgameState,\r\n\t\t\t\t\tcurrentAttacker,\r\n\t\t\t\t);\r\n\t\t\t\tcurrentAttacker = friendly ? 1 : 0;\r\n\t\t\t\t// This is not true anymore: https://replays.firestoneapp.com/?reviewId=7282387d-66cd-458e-8ee1-e04c662e7bad&turn=5&action=1\r\n\t\t\t\t// In fact there is some adjustment going on: https://replays.firestoneapp.com/?reviewId=929f676f-47f6-494b-9619-df04174a0150&turn=11&action=0\r\n\t\t\t\t// So trying another logic\r\n\t\t\t\t// currentAttacker = (currentAttacker + 1) % 2;\r\n\t\t\t\t// This isn't correct. The following game is a case of:\r\n\t\t\t\t// The player with the fewer minions is Illidan, so isn't the \"first attacker\"\r\n\t\t\t\t// Wingmen triggers\r\n\t\t\t\t// The non-Illidan side then attacks first\r\n\t\t\t\t// https://replays.firestoneapp.com/?reviewId=45f40e73-4be9-419f-9093-0c2d91a7bac2&turn=5&action=0\r\n\t\t\t\t// So for now, just randomizing the attacker to try and avoid \"impossible\" scenarios as much as possible\r\n\t\t\t\t// currentAttacker = Math.random() < 0.5 ? 0 : 1;\r\n\r\n\t\t\t\t// It looks like it's always the next player that should attack after Wingmen triggers, which\r\n\t\t\t\t// means we should bypass the \"recompute next attacker\" logic from other start of combat effects,\r\n\t\t\t\t// like summoning Flight Scout\r\n\t\t\t\t// 33.6.2 https://replays.firestoneapp.com/?reviewId=03b5755e-1666-4f6c-a3be-626b76bbef6d&turn=5&action=1\r\n\t\t\t\t// 33.6.2 https://replays.firestoneapp.com/?reviewId=c04ab462-9fd2-47e4-8ad4-bbcc3c14c709&turn=3&action=2\r\n\t\t\t\treturn { attacker: currentAttacker, force: true };\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn { attacker: currentAttacker, force: false };\r\n};\r\n\r\n// TODO: not exactly correct, because of \"attack immediately\", but it's close enough\r\nconst handleIllidanForPlayer = (\r\n\tplayerBoard: BoardEntity[],\r\n\tplayerEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\tgameState: FullGameState,\r\n\tcurrentAttacker: number,\r\n): void => {\r\n\tif (playerEntity.startOfCombatDone) {\r\n\t\treturn;\r\n\t}\r\n\t// Otherwise, if the first minion dies on the attack, and the board has only 2 minions, we\r\n\t// miss the second one\r\n\tconst minionsAtStart = playerBoard.length;\r\n\tconst firstAttacker = playerBoard[0];\r\n\tconst secondAttacker = minionsAtStart > 1 ? playerBoard[playerBoard.length - 1] : null;\r\n\r\n\t// Stats updates\r\n\tmodifyStats(firstAttacker, playerEntity, 2, 1, playerBoard, playerEntity, gameState);\r\n\tif (!!secondAttacker && !secondAttacker.definitelyDead && secondAttacker.health > 0) {\r\n\t\tmodifyStats(secondAttacker, playerEntity, 2, 1, playerBoard, playerEntity, gameState);\r\n\t}\r\n\r\n\t// Attacks\r\n\tfirstAttacker.attackImmediately = true;\r\n\tsimulateAttack(playerBoard, playerEntity, opponentBoard, opponentEntity, gameState, {\r\n\t\tskipSummonWhenSpace: true,\r\n\t});\r\n\t// See http://replays.firestoneapp.com/?reviewId=f16b7a49-c2a2-4ac5-a9eb-a75f83246f70&turn=6&action=8\r\n\tfirstAttacker.hasAttacked = undefined;\r\n\tfirstAttacker.attackImmediately = false;\r\n\tif (!!secondAttacker && !secondAttacker.definitelyDead && secondAttacker.health > 0) {\r\n\t\tsecondAttacker.attackImmediately = true;\r\n\t\tsimulateAttack(playerBoard, playerEntity, opponentBoard, opponentEntity, gameState, {\r\n\t\t\tskipSummonWhenSpace: true,\r\n\t\t});\r\n\t\tsecondAttacker.hasAttacked = undefined;\r\n\t\tsecondAttacker.attackImmediately = false;\r\n\t}\r\n\r\n\t// // See http://replays.firestoneapp.com/?reviewId=7e9ec42c-a8f6-43d2-9f39-cc486dfa2395&turn=6&action=5\r\n\t// if (firstAttacker.definitelyDead || firstAttacker.health <= 0) {\r\n\t// \tcurrentAttacker = (currentAttacker + 1) % 2;\r\n\t// }\r\n\t// return currentAttacker;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"soc-minion.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/soc-minion.ts"],"names":[],"mappings":"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","sourcesContent":["import { BgsPlayerEntity } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { hasStartOfCombatFromHand } from '../../cards/card.interface';\r\nimport { cardMappings } from '../../cards/impl/_card-mappings';\r\nimport { CardIds } from '../../services/card-ids';\r\nimport { FullGameState } from '../internal-game-state';\r\nimport { handleSummonsWhenSpace } from '../summon-when-space';\r\nimport { performStartOfCombatAction } from './soc-action-processor';\r\nimport { SoCInput } from './start-of-combat-input';\r\n\r\nexport const handleStartOfCombatMinions = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tplayerBoardBefore: BoardEntity[],\r\n\topponentBoardBefore: BoardEntity[],\r\n\tgameState: FullGameState,\r\n): number => {\r\n\tlet attackerForStart = Math.random() < 0.5 ? 0 : 1;\r\n\tconst playerAttackers = [\r\n\t\t// Hand triggers first\r\n\t\t...playerEntity.hand.filter((e) => hasStartOfCombatFromHand(cardMappings[e.cardId])),\r\n\t\t...playerBoard,\r\n\t];\r\n\tconst opponentAttackers = [\r\n\t\t...opponentEntity.hand.filter((e) => hasStartOfCombatFromHand(cardMappings[e.cardId])),\r\n\t\t...opponentBoard,\r\n\t];\r\n\r\n\t// UPDATE 2025-11-16 We probably want to run the Start of Combat first for one player completely, then for the other\r\n\t// I thought it would alternate, but this apparently isn't the case:\r\n\t// https://replays.firestoneapp.com/?reviewId=af9053ee-9ee6-440a-a09f-b7fb2f4b7a3e&turn=9&action=0\r\n\twhile (playerAttackers.length > 0 || opponentAttackers.length > 0) {\r\n\t\tlet shouldUpdateNextPlayer = false;\r\n\t\tif (attackerForStart === 0 && playerAttackers.length > 0) {\r\n\t\t\tconst attacker = playerAttackers.splice(0, 1)[0];\r\n\t\t\tif (attacker.health <= 0 || attacker.definitelyDead) {\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\t\t\tconst input = {\r\n\t\t\t\tplayerBoard: playerBoard,\r\n\t\t\t\tplayerEntity: playerEntity,\r\n\t\t\t\topponentBoard: opponentBoard,\r\n\t\t\t\topponentEntity: opponentEntity,\r\n\t\t\t\tplayerBoardBefore: playerBoardBefore,\r\n\t\t\t\topponentBoardBefore: opponentBoardBefore,\r\n\t\t\t\tplayerIsFriendly: true,\r\n\t\t\t\tcurrentAttacker: currentAttacker,\r\n\t\t\t\tgameState,\r\n\t\t\t};\r\n\t\t\tconst newShouldUpdateNextPlayer = performStartOfCombatMinionsForPlayer(attacker, input);\r\n\t\t\tcurrentAttacker = input.currentAttacker;\r\n\t\t} else if (attackerForStart === 0 && playerAttackers.length === 0) {\r\n\t\t\tshouldUpdateNextPlayer = true;\r\n\t\t} else if (attackerForStart === 1 && opponentAttackers.length > 0) {\r\n\t\t\tconst attacker = opponentAttackers.splice(0, 1)[0];\r\n\t\t\tif (attacker.health <= 0 || attacker.definitelyDead) {\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\t\t\tconst input = {\r\n\t\t\t\tplayerBoard: opponentBoard,\r\n\t\t\t\tplayerEntity: opponentEntity,\r\n\t\t\t\topponentBoard: playerBoard,\r\n\t\t\t\topponentEntity: playerEntity,\r\n\t\t\t\tplayerBoardBefore: opponentBoardBefore,\r\n\t\t\t\topponentBoardBefore: playerBoardBefore,\r\n\t\t\t\tplayerIsFriendly: false,\r\n\t\t\t\tcurrentAttacker: currentAttacker,\r\n\t\t\t\tgameState,\r\n\t\t\t};\r\n\t\t\tconst newShouldUpdateNextPlayer = performStartOfCombatMinionsForPlayer(attacker, input);\r\n\t\t\tcurrentAttacker = input.currentAttacker;\r\n\t\t} else if (attackerForStart === 1 && opponentAttackers.length === 0) {\r\n\t\t\tshouldUpdateNextPlayer = true;\r\n\t\t}\r\n\r\n\t\tif (shouldUpdateNextPlayer) {\r\n\t\t\tattackerForStart = (attackerForStart + 1) % 2;\r\n\t\t}\r\n\t}\r\n\tconst shouldRecomputeCurrentAttacker = handleSummonsWhenSpace(\r\n\t\tplayerBoard,\r\n\t\tplayerEntity,\r\n\t\topponentBoard,\r\n\t\topponentEntity,\r\n\t\tgameState,\r\n\t);\r\n\tif (shouldRecomputeCurrentAttacker) {\r\n\t\tcurrentAttacker =\r\n\t\t\tplayerBoard.length > opponentBoard.length\r\n\t\t\t\t? 0\r\n\t\t\t\t: opponentBoard.length > playerBoard.length\r\n\t\t\t\t? 1\r\n\t\t\t\t: Math.round(Math.random());\r\n\t}\r\n\treturn currentAttacker;\r\n};\r\n\r\n// Apparently, the board composition used for start of combat minion effects (like Red Whelp, and I assume it works the\r\n// same way for others like Prized Promo Drake or Mantid Queen) is the one that is used before Illidan's effect is handled.\r\n// Since this also runs before HP start of combat, we probably also use the state as it was before HP were triggered, like\r\n// Tamsin's Phylactery.\r\nexport const performStartOfCombatMinionsForPlayer = (minion: BoardEntity, input: SoCInput): boolean => {\r\n\tconst loops = input.playerEntity.trinkets?.some((t) => t.cardId === CardIds.ValdrakkenWindChimes_BG32_MagicItem_365)\r\n\t\t? 2\r\n\t\t: 1;\r\n\tlet hasProcessed = false;\r\n\tfor (let i = 0; i < loops; i++) {\r\n\t\tif (input.playerEntity.startOfCombatDone) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\thasProcessed = performStartOfCombatAction(minion.cardId, minion, input, true) || hasProcessed;\r\n\t}\r\n\treturn hasProcessed;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"soc-pre-combat-hero-power.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/soc-pre-combat-hero-power.ts"],"names":[],"mappings":"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","sourcesContent":["import { BgsPlayerEntity } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { CardIds } from '../../services/card-ids';\r\nimport { FullGameState } from '../internal-game-state';\r\nimport { handleSummonsWhenSpace } from '../summon-when-space';\r\nimport { performStartOfCombatAction } from './soc-action-processor';\r\nimport { SoCInput } from './start-of-combat-input';\r\n\r\nexport const handlePreCombatHeroPowers = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tgameState: FullGameState,\r\n): number => {\r\n\tlet initialPlayerBoardSize = playerBoard.length;\r\n\tlet initialOpponentBoardSize = opponentBoard.length;\r\n\tconst random = Math.random();\r\n\tif (random < 0.5) {\r\n\t\tcurrentAttacker = handlePreCombatHeroPowersForPlayer({\r\n\t\t\tplayerEntity: playerEntity,\r\n\t\t\tplayerBoard: playerBoard,\r\n\t\t\topponentEntity: opponentEntity,\r\n\t\t\topponentBoard: opponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tplayerIsFriendly: true,\r\n\t\t\tgameState,\r\n\t\t});\r\n\t\tinitialPlayerBoardSize = playerBoard.length;\r\n\t\thandleSummonsWhenSpace(playerBoard, playerEntity, opponentBoard, opponentEntity, gameState);\r\n\t\tcurrentAttacker = handlePreCombatHeroPowersForPlayer({\r\n\t\t\tplayerEntity: opponentEntity,\r\n\t\t\tplayerBoard: opponentBoard,\r\n\t\t\topponentEntity: playerEntity,\r\n\t\t\topponentBoard: playerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tplayerIsFriendly: false,\r\n\t\t\tgameState,\r\n\t\t});\r\n\t\tinitialOpponentBoardSize = opponentBoard.length;\r\n\t\thandleSummonsWhenSpace(playerBoard, playerEntity, opponentBoard, opponentEntity, gameState);\r\n\t} else {\r\n\t\tcurrentAttacker = handlePreCombatHeroPowersForPlayer({\r\n\t\t\tplayerEntity: opponentEntity,\r\n\t\t\tplayerBoard: opponentBoard,\r\n\t\t\topponentEntity: playerEntity,\r\n\t\t\topponentBoard: playerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tplayerIsFriendly: false,\r\n\t\t\tgameState,\r\n\t\t});\r\n\t\tinitialOpponentBoardSize = opponentBoard.length;\r\n\t\thandleSummonsWhenSpace(playerBoard, playerEntity, opponentBoard, opponentEntity, gameState);\r\n\t\tcurrentAttacker = handlePreCombatHeroPowersForPlayer({\r\n\t\t\tplayerEntity: playerEntity,\r\n\t\t\tplayerBoard: playerBoard,\r\n\t\t\topponentEntity: opponentEntity,\r\n\t\t\topponentBoard: opponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tplayerIsFriendly: true,\r\n\t\t\tgameState,\r\n\t\t});\r\n\t\tinitialPlayerBoardSize = playerBoard.length;\r\n\t\thandleSummonsWhenSpace(playerBoard, playerEntity, opponentBoard, opponentEntity, gameState);\r\n\t}\r\n\t// Ozumat's Tentaclecan cause the first player to be recomputed\r\n\t// https://replays.firestoneapp.com/?reviewId=f15c90de-8b3c-4017-960d-365fe09eb7ab&turn=5&action=1\r\n\tif (playerBoard.length !== initialPlayerBoardSize || opponentBoard.length !== initialOpponentBoardSize) {\r\n\t\tcurrentAttacker =\r\n\t\t\tplayerBoard.length > opponentBoard.length\r\n\t\t\t\t? 0\r\n\t\t\t\t: opponentBoard.length > playerBoard.length\r\n\t\t\t\t? 1\r\n\t\t\t\t: Math.round(Math.random());\r\n\t}\r\n\treturn currentAttacker;\r\n};\r\n\r\nconst handlePreCombatHeroPowersForPlayer = (input: SoCInput): number => {\r\n\tconst loops = input.playerEntity.trinkets?.some((t) => t.cardId === CardIds.ValdrakkenWindChimes_BG32_MagicItem_365)\r\n\t\t? 2\r\n\t\t: 1;\r\n\tfor (let i = 0; i < loops; i++) {\r\n\t\tif (input.playerEntity.startOfCombatDone || input.playerEntity.hpLeft <= 0) {\r\n\t\t\treturn input.currentAttacker;\r\n\t\t}\r\n\r\n\t\tfor (const heroPower of input.playerEntity.heroPowers) {\r\n\t\t\tperformStartOfCombatAction(heroPower.cardId, heroPower, input, true, 'pre-combat');\r\n\t\t}\r\n\t}\r\n\r\n\treturn input.currentAttacker;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"soc-quest-reward.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/soc-quest-reward.ts"],"names":[],"mappings":";;;AAIA,4DAA8D;AAC9D,iEAAoE;AAG7D,MAAM,+BAA+B,GAAG,CAC9C,YAA6B,EAC7B,WAA0B,EAC1B,cAA+B,EAC/B,aAA4B,EAC5B,eAAuB,EACvB,SAAwB,EACf,EAAE;IACX,IAAI,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,EAAE;QACxB,eAAe,GAAG,wCAAwC,CAAC;YAC1D,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,WAAW;YACxB,cAAc,EAAE,cAAc;YAC9B,aAAa,EAAE,aAAa;YAC5B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,IAAI;SACtB,CAAC,CAAC;QACH,eAAe,GAAG,wCAAwC,CAAC;YAC1D,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,aAAa;YAC1B,cAAc,EAAE,YAAY;YAC5B,aAAa,EAAE,WAAW;YAC1B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,KAAK;SACvB,CAAC,CAAC;KACH;SAAM;QACN,eAAe,GAAG,wCAAwC,CAAC;YAC1D,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,aAAa;YAC1B,cAAc,EAAE,YAAY;YAC5B,aAAa,EAAE,WAAW;YAC1B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,KAAK;SACvB,CAAC,CAAC;QACH,eAAe,GAAG,wCAAwC,CAAC;YAC1D,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,WAAW;YACxB,cAAc,EAAE,cAAc;YAC9B,aAAa,EAAE,aAAa;YAC5B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,IAAI;SACtB,CAAC,CAAC;KACH;IAED,MAAM,8BAA8B,GAAG,IAAA,0CAAsB,EAC5D,WAAW,EACX,YAAY,EACZ,aAAa,EACb,cAAc,EACd,SAAS,CACT,CAAC;IACF,IAAI,8BAA8B,EAAE;QACnC,eAAe;YACd,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM;gBACxC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM;oBAC3C,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;KAC9B;IACD,OAAO,eAAe,CAAC;AACxB,CAAC,CAAC;AAhEW,QAAA,+BAA+B,mCAgE1C;AAEF,MAAM,wCAAwC,GAAG,CAAC,KAAe,EAAU,EAAE;;IAC5E,MAAM,KAAK,GAAG,CAAA,MAAA,KAAK,CAAC,YAAY,CAAC,QAAQ,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,yBAAoD,CAAC;QACnH,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,CAAC,CAAC;IACL,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/B,IAAI,KAAK,CAAC,YAAY,CAAC,iBAAiB,EAAE;YACzC,OAAO,KAAK,CAAC,eAAe,CAAC;SAC7B;QAED,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE;YACrD,IAAA,iDAA0B,EAAC,MAAM,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SACrE;KACD;IAED,OAAO,KAAK,CAAC,eAAe,CAAC;AAC9B,CAAC,CAAC","sourcesContent":["import { BgsPlayerEntity } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { CardIds } from '../../services/card-ids';\r\nimport { FullGameState } from '../internal-game-state';\r\nimport { handleSummonsWhenSpace } from '../summon-when-space';\r\nimport { performStartOfCombatAction } from './soc-action-processor';\r\nimport { SoCInput } from './start-of-combat-input';\r\n\r\nexport const handleStartOfCombatQuestRewards = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tgameState: FullGameState,\r\n): number => {\r\n\tif (Math.random() < 0.5) {\r\n\t\tcurrentAttacker = handleStartOfCombatQuestRewardsForPlayer({\r\n\t\t\tplayerEntity: playerEntity,\r\n\t\t\tplayerBoard: playerBoard,\r\n\t\t\topponentEntity: opponentEntity,\r\n\t\t\topponentBoard: opponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: true,\r\n\t\t});\r\n\t\tcurrentAttacker = handleStartOfCombatQuestRewardsForPlayer({\r\n\t\t\tplayerEntity: opponentEntity,\r\n\t\t\tplayerBoard: opponentBoard,\r\n\t\t\topponentEntity: playerEntity,\r\n\t\t\topponentBoard: playerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: false,\r\n\t\t});\r\n\t} else {\r\n\t\tcurrentAttacker = handleStartOfCombatQuestRewardsForPlayer({\r\n\t\t\tplayerEntity: opponentEntity,\r\n\t\t\tplayerBoard: opponentBoard,\r\n\t\t\topponentEntity: playerEntity,\r\n\t\t\topponentBoard: playerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: false,\r\n\t\t});\r\n\t\tcurrentAttacker = handleStartOfCombatQuestRewardsForPlayer({\r\n\t\t\tplayerEntity: playerEntity,\r\n\t\t\tplayerBoard: playerBoard,\r\n\t\t\topponentEntity: opponentEntity,\r\n\t\t\topponentBoard: opponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: true,\r\n\t\t});\r\n\t}\r\n\r\n\tconst shouldRecomputeCurrentAttacker = handleSummonsWhenSpace(\r\n\t\tplayerBoard,\r\n\t\tplayerEntity,\r\n\t\topponentBoard,\r\n\t\topponentEntity,\r\n\t\tgameState,\r\n\t);\r\n\tif (shouldRecomputeCurrentAttacker) {\r\n\t\tcurrentAttacker =\r\n\t\t\tplayerBoard.length > opponentBoard.length\r\n\t\t\t\t? 0\r\n\t\t\t\t: opponentBoard.length > playerBoard.length\r\n\t\t\t\t? 1\r\n\t\t\t\t: Math.round(Math.random());\r\n\t}\r\n\treturn currentAttacker;\r\n};\r\n\r\nconst handleStartOfCombatQuestRewardsForPlayer = (input: SoCInput): number => {\r\n\tconst loops = input.playerEntity.trinkets?.some((t) => t.cardId === CardIds.ValdrakkenWindChimes_BG32_MagicItem_365)\r\n\t\t? 2\r\n\t\t: 1;\r\n\tfor (let i = 0; i < loops; i++) {\r\n\t\tif (input.playerEntity.startOfCombatDone) {\r\n\t\t\treturn input.currentAttacker;\r\n\t\t}\r\n\r\n\t\tfor (const reward of input.playerEntity.questRewards) {\r\n\t\t\tperformStartOfCombatAction(reward, input.playerEntity, input, false);\r\n\t\t}\r\n\t}\r\n\r\n\treturn input.currentAttacker;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"soc-secret.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/soc-secret.ts"],"names":[],"mappings":";;;AAIA,4DAA8D;AAC9D,iEAAoE;AAG7D,MAAM,0BAA0B,GAAG,CACzC,YAA6B,EAC7B,WAA0B,EAC1B,cAA+B,EAC/B,aAA4B,EAC5B,eAAuB,EACvB,SAAwB,EACf,EAAE;IACX,IAAI,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,EAAE;QACxB,eAAe,GAAG,mCAAmC,CAAC;YACrD,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,WAAW;YACxB,cAAc,EAAE,cAAc;YAC9B,aAAa,EAAE,aAAa;YAC5B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,IAAI;SACtB,CAAC,CAAC;QACH,eAAe,GAAG,mCAAmC,CAAC;YACrD,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,aAAa;YAC1B,cAAc,EAAE,YAAY;YAC5B,aAAa,EAAE,WAAW;YAC1B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,KAAK;SACvB,CAAC,CAAC;KACH;SAAM;QACN,eAAe,GAAG,mCAAmC,CAAC;YACrD,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,aAAa;YAC1B,cAAc,EAAE,YAAY;YAC5B,aAAa,EAAE,WAAW;YAC1B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,KAAK;SACvB,CAAC,CAAC;QACH,eAAe,GAAG,mCAAmC,CAAC;YACrD,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,WAAW;YACxB,cAAc,EAAE,cAAc;YAC9B,aAAa,EAAE,aAAa;YAC5B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,IAAI;SACtB,CAAC,CAAC;KACH;IACD,MAAM,8BAA8B,GAAG,IAAA,0CAAsB,EAC5D,WAAW,EACX,YAAY,EACZ,aAAa,EACb,cAAc,EACd,SAAS,CACT,CAAC;IACF,IAAI,8BAA8B,EAAE;QACnC,eAAe;YACd,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM;gBACxC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM;oBAC3C,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;KAC9B;IACD,OAAO,eAAe,CAAC;AACxB,CAAC,CAAC;AA/DW,QAAA,0BAA0B,8BA+DrC;AAEF,MAAM,mCAAmC,GAAG,CAAC,KAAe,EAAU,EAAE;;IACvE,MAAM,KAAK,GAAG,CAAA,MAAA,KAAK,CAAC,YAAY,CAAC,QAAQ,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,yBAAoD,CAAC;QACnH,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,CAAC,CAAC;IACL,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/B,IAAI,KAAK,CAAC,YAAY,CAAC,iBAAiB,EAAE;YACzC,OAAO,KAAK,CAAC,eAAe,CAAC;SAC7B;QACD,KAAK,MAAM,MAAM,IAAI,MAAA,KAAK,CAAC,YAAY,CAAC,OAAO,mCAAI,EAAE,EAAE;YACtD,IAAA,iDAA0B,EAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SAChE;KACD;IACD,OAAO,KAAK,CAAC,eAAe,CAAC;AAC9B,CAAC,CAAC","sourcesContent":["import { BgsPlayerEntity } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { CardIds } from '../../services/card-ids';\r\nimport { FullGameState } from '../internal-game-state';\r\nimport { handleSummonsWhenSpace } from '../summon-when-space';\r\nimport { performStartOfCombatAction } from './soc-action-processor';\r\nimport { SoCInput } from './start-of-combat-input';\r\n\r\nexport const handleStartOfCombatSecrets = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tgameState: FullGameState,\r\n): number => {\r\n\tif (Math.random() < 0.5) {\r\n\t\tcurrentAttacker = handleStartOfCombatSecretsForPlayer({\r\n\t\t\tplayerEntity: playerEntity,\r\n\t\t\tplayerBoard: playerBoard,\r\n\t\t\topponentEntity: opponentEntity,\r\n\t\t\topponentBoard: opponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: true,\r\n\t\t});\r\n\t\tcurrentAttacker = handleStartOfCombatSecretsForPlayer({\r\n\t\t\tplayerEntity: opponentEntity,\r\n\t\t\tplayerBoard: opponentBoard,\r\n\t\t\topponentEntity: playerEntity,\r\n\t\t\topponentBoard: playerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: false,\r\n\t\t});\r\n\t} else {\r\n\t\tcurrentAttacker = handleStartOfCombatSecretsForPlayer({\r\n\t\t\tplayerEntity: opponentEntity,\r\n\t\t\tplayerBoard: opponentBoard,\r\n\t\t\topponentEntity: playerEntity,\r\n\t\t\topponentBoard: playerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: false,\r\n\t\t});\r\n\t\tcurrentAttacker = handleStartOfCombatSecretsForPlayer({\r\n\t\t\tplayerEntity: playerEntity,\r\n\t\t\tplayerBoard: playerBoard,\r\n\t\t\topponentEntity: opponentEntity,\r\n\t\t\topponentBoard: opponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: true,\r\n\t\t});\r\n\t}\r\n\tconst shouldRecomputeCurrentAttacker = handleSummonsWhenSpace(\r\n\t\tplayerBoard,\r\n\t\tplayerEntity,\r\n\t\topponentBoard,\r\n\t\topponentEntity,\r\n\t\tgameState,\r\n\t);\r\n\tif (shouldRecomputeCurrentAttacker) {\r\n\t\tcurrentAttacker =\r\n\t\t\tplayerBoard.length > opponentBoard.length\r\n\t\t\t\t? 0\r\n\t\t\t\t: opponentBoard.length > playerBoard.length\r\n\t\t\t\t? 1\r\n\t\t\t\t: Math.round(Math.random());\r\n\t}\r\n\treturn currentAttacker;\r\n};\r\n\r\nconst handleStartOfCombatSecretsForPlayer = (input: SoCInput): number => {\r\n\tconst loops = input.playerEntity.trinkets?.some((t) => t.cardId === CardIds.ValdrakkenWindChimes_BG32_MagicItem_365)\r\n\t\t? 2\r\n\t\t: 1;\r\n\tfor (let i = 0; i < loops; i++) {\r\n\t\tif (input.playerEntity.startOfCombatDone) {\r\n\t\t\treturn input.currentAttacker;\r\n\t\t}\r\n\t\tfor (const secret of input.playerEntity.secrets ?? []) {\r\n\t\t\tperformStartOfCombatAction(secret.cardId, secret, input, false);\r\n\t\t}\r\n\t}\r\n\treturn input.currentAttacker;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"soc-trinket.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/soc-trinket.ts"],"names":[],"mappings":";;;AAIA,4DAA8D;AAC9D,iEAAoE;AAG7D,MAAM,2BAA2B,GAAG,CAC1C,YAA6B,EAC7B,WAA0B,EAC1B,cAA+B,EAC/B,aAA4B,EAC5B,eAAuB,EACvB,SAAwB,EACf,EAAE;IACX,IAAI,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,EAAE;QACxB,eAAe,GAAG,oCAAoC,CAAC;YACtD,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,WAAW;YACxB,cAAc,EAAE,cAAc;YAC9B,aAAa,EAAE,aAAa;YAC5B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,IAAI;SACtB,CAAC,CAAC;QACH,eAAe,GAAG,oCAAoC,CAAC;YACtD,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,aAAa;YAC1B,cAAc,EAAE,YAAY;YAC5B,aAAa,EAAE,WAAW;YAC1B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,KAAK;SACvB,CAAC,CAAC;KACH;SAAM;QACN,eAAe,GAAG,oCAAoC,CAAC;YACtD,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,aAAa;YAC1B,cAAc,EAAE,YAAY;YAC5B,aAAa,EAAE,WAAW;YAC1B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,KAAK;SACvB,CAAC,CAAC;QACH,eAAe,GAAG,oCAAoC,CAAC;YACtD,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,WAAW;YACxB,cAAc,EAAE,cAAc;YAC9B,aAAa,EAAE,aAAa;YAC5B,eAAe;YACf,SAAS;YACT,gBAAgB,EAAE,IAAI;SACtB,CAAC,CAAC;KACH;IACD,MAAM,8BAA8B,GAAG,IAAA,0CAAsB,EAC5D,WAAW,EACX,YAAY,EACZ,aAAa,EACb,cAAc,EACd,SAAS,CACT,CAAC;IACF,IAAI,8BAA8B,EAAE;QACnC,eAAe;YACd,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM;gBACxC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM;oBAC3C,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;KAC9B;IACD,OAAO,eAAe,CAAC;AACxB,CAAC,CAAC;AA/DW,QAAA,2BAA2B,+BA+DtC;AAEF,MAAM,oCAAoC,GAAG,CAAC,KAAe,EAAU,EAAE;;IACxE,IAAI,KAAK,CAAC,YAAY,CAAC,iBAAiB,EAAE;QACzC,OAAO,KAAK,CAAC,eAAe,CAAC;KAC7B;IAED,MAAM,KAAK,GAAG,CAAA,MAAA,KAAK,CAAC,YAAY,CAAC,QAAQ,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,yBAAoD,CAAC;QACnH,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,CAAC,CAAC;IACL,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/B,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;YAClD,IAAA,iDAA0B,EAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SAClE;KACD;IAED,OAAO,KAAK,CAAC,eAAe,CAAC;AAC9B,CAAC,CAAC","sourcesContent":["import { BgsPlayerEntity } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { CardIds } from '../../services/card-ids';\r\nimport { FullGameState } from '../internal-game-state';\r\nimport { handleSummonsWhenSpace } from '../summon-when-space';\r\nimport { performStartOfCombatAction } from './soc-action-processor';\r\nimport { SoCInput } from './start-of-combat-input';\r\n\r\nexport const handleStartOfCombatTrinkets = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tgameState: FullGameState,\r\n): number => {\r\n\tif (Math.random() < 0.5) {\r\n\t\tcurrentAttacker = handleStartOfCombatTrinketsForPlayer({\r\n\t\t\tplayerEntity: playerEntity,\r\n\t\t\tplayerBoard: playerBoard,\r\n\t\t\topponentEntity: opponentEntity,\r\n\t\t\topponentBoard: opponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: true,\r\n\t\t});\r\n\t\tcurrentAttacker = handleStartOfCombatTrinketsForPlayer({\r\n\t\t\tplayerEntity: opponentEntity,\r\n\t\t\tplayerBoard: opponentBoard,\r\n\t\t\topponentEntity: playerEntity,\r\n\t\t\topponentBoard: playerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: false,\r\n\t\t});\r\n\t} else {\r\n\t\tcurrentAttacker = handleStartOfCombatTrinketsForPlayer({\r\n\t\t\tplayerEntity: opponentEntity,\r\n\t\t\tplayerBoard: opponentBoard,\r\n\t\t\topponentEntity: playerEntity,\r\n\t\t\topponentBoard: playerBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: false,\r\n\t\t});\r\n\t\tcurrentAttacker = handleStartOfCombatTrinketsForPlayer({\r\n\t\t\tplayerEntity: playerEntity,\r\n\t\t\tplayerBoard: playerBoard,\r\n\t\t\topponentEntity: opponentEntity,\r\n\t\t\topponentBoard: opponentBoard,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t\tplayerIsFriendly: true,\r\n\t\t});\r\n\t}\r\n\tconst shouldRecomputeCurrentAttacker = handleSummonsWhenSpace(\r\n\t\tplayerBoard,\r\n\t\tplayerEntity,\r\n\t\topponentBoard,\r\n\t\topponentEntity,\r\n\t\tgameState,\r\n\t);\r\n\tif (shouldRecomputeCurrentAttacker) {\r\n\t\tcurrentAttacker =\r\n\t\t\tplayerBoard.length > opponentBoard.length\r\n\t\t\t\t? 0\r\n\t\t\t\t: opponentBoard.length > playerBoard.length\r\n\t\t\t\t? 1\r\n\t\t\t\t: Math.round(Math.random());\r\n\t}\r\n\treturn currentAttacker;\r\n};\r\n\r\nconst handleStartOfCombatTrinketsForPlayer = (input: SoCInput): number => {\r\n\tif (input.playerEntity.startOfCombatDone) {\r\n\t\treturn input.currentAttacker;\r\n\t}\r\n\r\n\tconst loops = input.playerEntity.trinkets?.some((t) => t.cardId === CardIds.ValdrakkenWindChimes_BG32_MagicItem_365)\r\n\t\t? 2\r\n\t\t: 1;\r\n\tfor (let i = 0; i < loops; i++) {\r\n\t\tfor (const trinket of input.playerEntity.trinkets) {\r\n\t\t\tperformStartOfCombatAction(trinket.cardId, trinket, input, false);\r\n\t\t}\r\n\t}\r\n\r\n\treturn input.currentAttacker;\r\n};\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"start-of-combat-input.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/start-of-combat-input.ts"],"names":[],"mappings":"","sourcesContent":["import { BgsPlayerEntity } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { FullGameState } from '../internal-game-state';\r\n\r\nexport interface SoCInput {\r\n\tplayerEntity: BgsPlayerEntity;\r\n\tplayerBoard: BoardEntity[];\r\n\topponentEntity: BgsPlayerEntity;\r\n\topponentBoard: BoardEntity[];\r\n\tcurrentAttacker: number;\r\n\tplayerBoardBefore?: BoardEntity[];\r\n\topponentBoardBefore?: BoardEntity[];\r\n\tgameState: FullGameState;\r\n\tplayerIsFriendly: boolean;\r\n}\r\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"start-of-combat.js","sourceRoot":"","sources":["../../../../src/simulation/start-of-combat/start-of-combat.ts"],"names":[],"mappings":";;;AAIA,oCAAiD;AAEjD,mDAA+D;AAC/D,qDAAiE;AACjE,qEAAmE;AACnE,6CAA0D;AAC1D,2EAAwE;AACxE,yDAAqE;AACrE,6CAA0D;AAC1D,+CAA4D;AASrD,MAAM,mBAAmB,GAAG,CAClC,YAA6B,EAC7B,WAA0B,EAC1B,cAA+B,EAC/B,aAA4B,EAC5B,eAAuB,EACvB,SAAwB,EACf,EAAE;IACX,MAAM,8BAA8B,GAAG,IAAI,CAAC;IAC5C,IAAI,8BAA8B,EAAE;QACnC,eAAe;YACd,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM;gBACxC,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM;oBAC3C,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;KAC9B;IAYD,MAAM,MAAM,GAAkC;QAC7C,aAAa;QACb,WAAW;QACX,SAAS;QAWT,oBAAoB;QACpB,kBAAkB;QAClB,WAAW;QACX,QAAQ;QACR,QAAQ;KACR,CAAC;IACF,IAAI,iBAAiB,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3D,IAAI,mBAAmB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAE/D,IAAI,cAAc,GAAG,IAAI,CAAC;IAC1B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC3B,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,WAAW,CAC7D,KAAK,EACL,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,SAAS,CACT,CAAC;QACF,eAAe,GAAG,WAAW,CAAC;QAC9B,IAAI,QAAQ,EAAE;YACb,cAAc,GAAG,WAAW,CAAC;SAC7B;QACD,IAAI,KAAK,KAAK,oBAAoB,EAAE;YACnC,iBAAiB,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACvD,mBAAmB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;SAC3D;KACD;IACD,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;IACtC,cAAc,CAAC,iBAAiB,GAAG,IAAI,CAAC;IACxC,IAAA,6BAAqB,EAAC,SAAS,CAAC,CAAC;IACjC,OAAO,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC;AAClE,CAAC,CAAC;AA7EW,QAAA,mBAAmB,uBA6E9B;AAEF,MAAM,WAAW,GAAG,CACnB,KAAyB,EACzB,YAA6B,EAC7B,WAA0B,EAC1B,iBAAgC,EAChC,cAA+B,EAC/B,aAA4B,EAC5B,mBAAkC,EAClC,eAAuB,EACvB,SAAwB,EACe,EAAE;IACzC,QAAQ,KAAK,EAAE;QACd,KAAK,aAAa;YACjB,eAAe,GAAG,IAAA,kDAA+B,EAChD,YAAY,EACZ,WAAW,EACX,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,CACT,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACpD,KAAK,WAAW;YACf,eAAe,GAAG,IAAA,4CAA4B,EAC7C,YAAY,EACZ,WAAW,EACX,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,CACT,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACpD,KAAK,SAAS;YACb,eAAe,GAAG,IAAA,yCAA2B,EAC5C,YAAY,EACZ,WAAW,EACX,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,CACT,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACpD,KAAK,oBAAoB;YACxB,eAAe,GAAG,IAAA,qDAAyB,EAC1C,YAAY,EACZ,WAAW,EACX,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,CACT,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACpD,KAAK,kBAAkB;YACtB,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAA,gDAAuB,EACzE,YAAY,EACZ,WAAW,EACX,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,CACT,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;QACnD,KAAK,WAAW;YACf,eAAe,GAAG,IAAA,8CAA6B,EAC9C,YAAY,EACZ,WAAW,EACX,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,CACT,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACpD,KAAK,QAAQ;YACZ,eAAe,GAAG,IAAA,uCAA0B,EAC3C,YAAY,EACZ,WAAW,EACX,cAAc,EACd,aAAa,EACb,eAAe,EACf,SAAS,CACT,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACpD,KAAK,QAAQ;YACZ,eAAe,GAAG,IAAA,uCAA0B,EAC3C,YAAY,EACZ,WAAW,EACX,cAAc,EACd,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,CACT,CAAC;YACF,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;KACpD;IAED,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AACpD,CAAC,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-use-before-define */\r\nimport { BgsPlayerEntity } from '../../bgs-player-entity';\r\nimport { BoardEntity } from '../../board-entity';\r\nimport { FullGameState } from '../internal-game-state';\r\nimport { applyAfterStatsUpdate } from '../stats';\r\nimport { StartOfCombatPhase } from './phases';\r\nimport { handleStartOfCombatAnomalies } from './soc-anomalies';\r\nimport { handleStartOfCombatHeroPowers } from './soc-hero-power';\r\nimport { handleIllidanHeroPowers } from './soc-illidan-hero-power';\r\nimport { handleStartOfCombatMinions } from './soc-minion';\r\nimport { handlePreCombatHeroPowers } from './soc-pre-combat-hero-power';\r\nimport { handleStartOfCombatQuestRewards } from './soc-quest-reward';\r\nimport { handleStartOfCombatSecrets } from './soc-secret';\r\nimport { handleStartOfCombatTrinkets } from './soc-trinket';\r\n\r\n// TODO 20/04/2024: I'm not too sure about some ordering. The way I understand it, the Start of Combat has\r\n// multiple phases, and in each phase the player order is random\r\n// However, looking at http://replays.firestoneapp.com/?reviewId=a577602e-06f3-4c4b-928d-36ea98c2e6d5&turn=5&action=0,\r\n// it feels that a \"start of combat\" minion effect could trigger before an opponent's hero power effect\r\n// Or is that limited to Bru'kan?\r\n// I feel that I've asked a lot of questions recently, so I don't want to add that one to the list, as the interaction\r\n// is for now pretty marginal\r\nexport const handleStartOfCombat = (\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tgameState: FullGameState,\r\n): number => {\r\n\tconst shouldRecomputeCurrentAttacker = true;\r\n\tif (shouldRecomputeCurrentAttacker) {\r\n\t\tcurrentAttacker =\r\n\t\t\tplayerBoard.length > opponentBoard.length\r\n\t\t\t\t? 0\r\n\t\t\t\t: opponentBoard.length > playerBoard.length\r\n\t\t\t\t? 1\r\n\t\t\t\t: Math.round(Math.random());\r\n\t}\r\n\r\n\t// UPDATE 2024-10-10: changed in 30.6, according to a message from Mitchell on Discord\r\n\t// UPDATE 2026-02-21:\r\n\t// K I double checked in-game and documentation and this is the trigger order:\r\n\t// Trinket/Quest Reward\r\n\t// Pre-combat hero powers (e.g. Lich King)\r\n\t// Combat First hero powers (e.g. Illidan)\r\n\t// Start of combat hero powers (e.g. Basically all other hero powers)\r\n\t// Spells (e.g. Fleeting Vigor)\r\n\t// Minions in hand (e.g. Flighty Scout)\r\n\t// Minions in play (e.g. Promo-Drake)\r\n\tconst phases: readonly StartOfCombatPhase[] = [\r\n\t\t'QuestReward',\r\n\t\t'Anomalies',\r\n\t\t'Trinket',\r\n\t\t// https://twitter.com/DCalkosz/status/1488361384320528388?s=20&t=1ECxRZFdjqwEa2fRsXk32Q\r\n\t\t// There’s a certain order for Start of Combat hero powers, rather than “coin flips” where\r\n\t\t// an unlucky trigger order could mess up some positioning you had planned for your own hero\r\n\t\t// power. “Precombat” (Al’Akir, Y’Shaarj), then Illidan, then others.\r\n\t\t// Update: this seems to have changed: https://x.com/LoewenMitchell/status/1737588920139825335?s=20\r\n\t\t// now you have all hero powers trigger in a first phase, then you have Illidan, and once everything has triggered, you have Tavish\r\n\t\t// All Hero powers are split up in to 3 categories:\r\n\t\t// 1st - Precombat Hero Power Triggers (things we want to go before Illidan e.g. Lich King). Should be Lich King, Teron, Brukan\r\n\t\t// 2nd - Hero Power Triggers First In Combat (Illidan)\r\n\t\t// 3rd - All other Start of Combat Hero Powers\r\n\t\t'PreCombatHeroPower',\r\n\t\t'IllidanHeroPower',\r\n\t\t'HeroPower',\r\n\t\t'Secret',\r\n\t\t'Minion',\r\n\t];\r\n\tlet playerBoardBefore = playerBoard.map((e) => ({ ...e }));\r\n\tlet opponentBoardBefore = opponentBoard.map((e) => ({ ...e }));\r\n\r\n\tlet forcedAttacker = null;\r\n\tfor (const phase of phases) {\r\n\t\tconst { attacker: newAttacker, force: newForce } = handlePhase(\r\n\t\t\tphase,\r\n\t\t\tplayerEntity,\r\n\t\t\tplayerBoard,\r\n\t\t\tplayerBoardBefore,\r\n\t\t\topponentEntity,\r\n\t\t\topponentBoard,\r\n\t\t\topponentBoardBefore,\r\n\t\t\tcurrentAttacker,\r\n\t\t\tgameState,\r\n\t\t);\r\n\t\tcurrentAttacker = newAttacker;\r\n\t\tif (newForce) {\r\n\t\t\tforcedAttacker = newAttacker;\r\n\t\t}\r\n\t\tif (phase === 'PreCombatHeroPower') {\r\n\t\t\tplayerBoardBefore = playerBoard.map((e) => ({ ...e }));\r\n\t\t\topponentBoardBefore = opponentBoard.map((e) => ({ ...e }));\r\n\t\t}\r\n\t}\r\n\tplayerEntity.startOfCombatDone = true;\r\n\topponentEntity.startOfCombatDone = true;\r\n\tapplyAfterStatsUpdate(gameState);\r\n\treturn forcedAttacker != null ? forcedAttacker : currentAttacker;\r\n};\r\n\r\nconst handlePhase = (\r\n\tphase: StartOfCombatPhase,\r\n\tplayerEntity: BgsPlayerEntity,\r\n\tplayerBoard: BoardEntity[],\r\n\tplayerBoardBefore: BoardEntity[],\r\n\topponentEntity: BgsPlayerEntity,\r\n\topponentBoard: BoardEntity[],\r\n\topponentBoardBefore: BoardEntity[],\r\n\tcurrentAttacker: number,\r\n\tgameState: FullGameState,\r\n): { attacker: number; force: boolean } => {\r\n\tswitch (phase) {\r\n\t\tcase 'QuestReward':\r\n\t\t\tcurrentAttacker = handleStartOfCombatQuestRewards(\r\n\t\t\t\tplayerEntity,\r\n\t\t\t\tplayerBoard,\r\n\t\t\t\topponentEntity,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\tcurrentAttacker,\r\n\t\t\t\tgameState,\r\n\t\t\t);\r\n\t\t\treturn { attacker: currentAttacker, force: false };\r\n\t\tcase 'Anomalies':\r\n\t\t\tcurrentAttacker = handleStartOfCombatAnomalies(\r\n\t\t\t\tplayerEntity,\r\n\t\t\t\tplayerBoard,\r\n\t\t\t\topponentEntity,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\tcurrentAttacker,\r\n\t\t\t\tgameState,\r\n\t\t\t);\r\n\t\t\treturn { attacker: currentAttacker, force: false };\r\n\t\tcase 'Trinket':\r\n\t\t\tcurrentAttacker = handleStartOfCombatTrinkets(\r\n\t\t\t\tplayerEntity,\r\n\t\t\t\tplayerBoard,\r\n\t\t\t\topponentEntity,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\tcurrentAttacker,\r\n\t\t\t\tgameState,\r\n\t\t\t);\r\n\t\t\treturn { attacker: currentAttacker, force: false };\r\n\t\tcase 'PreCombatHeroPower':\r\n\t\t\tcurrentAttacker = handlePreCombatHeroPowers(\r\n\t\t\t\tplayerEntity,\r\n\t\t\t\tplayerBoard,\r\n\t\t\t\topponentEntity,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\tcurrentAttacker,\r\n\t\t\t\tgameState,\r\n\t\t\t);\r\n\t\t\treturn { attacker: currentAttacker, force: false };\r\n\t\tcase 'IllidanHeroPower':\r\n\t\t\tconst { attacker: newAttacker, force: newForce } = handleIllidanHeroPowers(\r\n\t\t\t\tplayerEntity,\r\n\t\t\t\tplayerBoard,\r\n\t\t\t\topponentEntity,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\tcurrentAttacker,\r\n\t\t\t\tgameState,\r\n\t\t\t);\r\n\t\t\treturn { attacker: newAttacker, force: newForce };\r\n\t\tcase 'HeroPower':\r\n\t\t\tcurrentAttacker = handleStartOfCombatHeroPowers(\r\n\t\t\t\tplayerEntity,\r\n\t\t\t\tplayerBoard,\r\n\t\t\t\topponentEntity,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\tcurrentAttacker,\r\n\t\t\t\tgameState,\r\n\t\t\t);\r\n\t\t\treturn { attacker: currentAttacker, force: false };\r\n\t\tcase 'Secret':\r\n\t\t\tcurrentAttacker = handleStartOfCombatSecrets(\r\n\t\t\t\tplayerEntity,\r\n\t\t\t\tplayerBoard,\r\n\t\t\t\topponentEntity,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\tcurrentAttacker,\r\n\t\t\t\tgameState,\r\n\t\t\t);\r\n\t\t\treturn { attacker: currentAttacker, force: false };\r\n\t\tcase 'Minion':\r\n\t\t\tcurrentAttacker = handleStartOfCombatMinions(\r\n\t\t\t\tplayerEntity,\r\n\t\t\t\tplayerBoard,\r\n\t\t\t\topponentEntity,\r\n\t\t\t\topponentBoard,\r\n\t\t\t\tcurrentAttacker,\r\n\t\t\t\tplayerBoardBefore,\r\n\t\t\t\topponentBoardBefore,\r\n\t\t\t\tgameState,\r\n\t\t\t);\r\n\t\t\treturn { attacker: currentAttacker, force: false };\r\n\t}\r\n\r\n\treturn { attacker: currentAttacker, force: false };\r\n};\r\n"]}
|