@firestone-hs/simulate-bgs-battle 1.1.565 → 1.1.567
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-player-entity.d.ts +2 -0
- package/dist/bgs-player-entity.js.map +1 -1
- package/dist/cards/card.interface.d.ts +32 -6
- package/dist/cards/card.interface.js +13 -1
- package/dist/cards/card.interface.js.map +1 -1
- package/dist/cards/cards-data.d.ts +1 -0
- package/dist/cards/cards-data.js +8 -0
- package/dist/cards/cards-data.js.map +1 -1
- package/dist/cards/impl/_card-mappings.js +124 -0
- package/dist/cards/impl/_card-mappings.js.map +1 -1
- package/dist/cards/impl/bg-spell/sharing-is-caring.js +1 -1
- package/dist/cards/impl/bg-spell/sharing-is-caring.js.map +1 -1
- package/dist/cards/impl/hero-power/all-will-burn.js +2 -4
- package/dist/cards/impl/hero-power/all-will-burn.js.map +1 -1
- package/dist/cards/impl/hero-power/fragrant-phylactery.js +1 -2
- package/dist/cards/impl/hero-power/fragrant-phylactery.js.map +1 -1
- package/dist/cards/impl/hero-power/wax-warband.d.ts +3 -0
- package/dist/cards/impl/hero-power/wax-warband.js +4 -4
- package/dist/cards/impl/hero-power/wax-warband.js.map +1 -1
- package/dist/cards/impl/minion/admiral-eliza-goreblade.js +1 -2
- package/dist/cards/impl/minion/admiral-eliza-goreblade.js.map +1 -1
- package/dist/cards/impl/minion/alleycat.d.ts +2 -0
- package/dist/cards/impl/minion/alleycat.js +24 -0
- package/dist/cards/impl/minion/alleycat.js.map +1 -0
- package/dist/cards/impl/minion/amber-guardian.js +1 -2
- package/dist/cards/impl/minion/amber-guardian.js.map +1 -1
- package/dist/cards/impl/minion/amplifying-lightspawn.d.ts +2 -0
- package/dist/cards/impl/minion/amplifying-lightspawn.js +13 -0
- package/dist/cards/impl/minion/amplifying-lightspawn.js.map +1 -0
- package/dist/cards/impl/minion/apprentice-of-sefin.d.ts +6 -0
- package/dist/cards/impl/minion/apprentice-of-sefin.js +78 -0
- package/dist/cards/impl/minion/apprentice-of-sefin.js.map +1 -0
- package/dist/cards/impl/minion/ashen-corruptor.d.ts +2 -0
- package/dist/cards/impl/minion/ashen-corruptor.js +10 -0
- package/dist/cards/impl/minion/ashen-corruptor.js.map +1 -0
- package/dist/cards/impl/minion/assistant-guard.js +2 -1
- package/dist/cards/impl/minion/assistant-guard.js.map +1 -1
- package/dist/cards/impl/minion/auto-assembler-enchantment.d.ts +2 -0
- package/dist/cards/impl/minion/auto-assembler-enchantment.js +17 -0
- package/dist/cards/impl/minion/auto-assembler-enchantment.js.map +1 -0
- package/dist/cards/impl/minion/auto-assembler.d.ts +2 -0
- package/dist/cards/impl/minion/auto-assembler.js +14 -0
- package/dist/cards/impl/minion/auto-assembler.js.map +1 -0
- package/dist/cards/impl/minion/battlecruiser.js +2 -3
- package/dist/cards/impl/minion/battlecruiser.js.map +1 -1
- package/dist/cards/impl/minion/beetle.js +1 -1
- package/dist/cards/impl/minion/beetle.js.map +1 -1
- package/dist/cards/impl/minion/bellowing-tyrant.js +2 -2
- package/dist/cards/impl/minion/bellowing-tyrant.js.map +1 -1
- package/dist/cards/impl/minion/blazing-skyfin.js +1 -1
- package/dist/cards/impl/minion/blazing-skyfin.js.map +1 -1
- package/dist/cards/impl/minion/bonker.d.ts +2 -0
- package/dist/cards/impl/minion/bonker.js +18 -0
- package/dist/cards/impl/minion/bonker.js.map +1 -0
- package/dist/cards/impl/minion/bronze-steward.d.ts +2 -0
- package/dist/cards/impl/minion/bronze-steward.js +29 -0
- package/dist/cards/impl/minion/bronze-steward.js.map +1 -0
- package/dist/cards/impl/minion/bubble-gunner.js +3 -34
- package/dist/cards/impl/minion/bubble-gunner.js.map +1 -1
- package/dist/cards/impl/minion/carrier.js +1 -1
- package/dist/cards/impl/minion/carrier.js.map +1 -1
- package/dist/cards/impl/minion/choral-mrrrglr.js +1 -2
- package/dist/cards/impl/minion/choral-mrrrglr.js.map +1 -1
- package/dist/cards/impl/minion/clunker-junker.js +2 -1
- package/dist/cards/impl/minion/clunker-junker.js.map +1 -1
- package/dist/cards/impl/minion/coilskar-sapper.d.ts +2 -0
- package/dist/cards/impl/minion/coilskar-sapper.js +13 -0
- package/dist/cards/impl/minion/coilskar-sapper.js.map +1 -0
- package/dist/cards/impl/minion/corrupted-bristler.d.ts +2 -0
- package/dist/cards/impl/minion/corrupted-bristler.js +32 -0
- package/dist/cards/impl/minion/corrupted-bristler.js.map +1 -0
- package/dist/cards/impl/minion/corrupted-myrmidon.js +1 -2
- package/dist/cards/impl/minion/corrupted-myrmidon.js.map +1 -1
- package/dist/cards/impl/minion/crabby.js +1 -2
- package/dist/cards/impl/minion/crabby.js.map +1 -1
- package/dist/cards/impl/minion/dastardly-drust.d.ts +2 -0
- package/dist/cards/impl/minion/dastardly-drust.js +20 -0
- package/dist/cards/impl/minion/dastardly-drust.js.map +1 -0
- package/dist/cards/impl/minion/deadstomper.js +1 -2
- package/dist/cards/impl/minion/deadstomper.js.map +1 -1
- package/dist/cards/impl/minion/deflecto-bot.js +1 -2
- package/dist/cards/impl/minion/deflecto-bot.js.map +1 -1
- package/dist/cards/impl/minion/diremuck-forager.js +1 -2
- package/dist/cards/impl/minion/diremuck-forager.js.map +1 -1
- package/dist/cards/impl/minion/dreaming-thornweaver.d.ts +2 -0
- package/dist/cards/impl/minion/dreaming-thornweaver.js +17 -0
- package/dist/cards/impl/minion/dreaming-thornweaver.js.map +1 -0
- package/dist/cards/impl/minion/drustfallen-butcher.d.ts +2 -0
- package/dist/cards/impl/minion/drustfallen-butcher.js +14 -0
- package/dist/cards/impl/minion/drustfallen-butcher.js.map +1 -0
- package/dist/cards/impl/minion/echoing-roar.js +1 -2
- package/dist/cards/impl/minion/echoing-roar.js.map +1 -1
- package/dist/cards/impl/minion/efficient-engineer.js +6 -1
- package/dist/cards/impl/minion/efficient-engineer.js.map +1 -1
- package/dist/cards/impl/minion/elder-taggawag.js +1 -2
- package/dist/cards/impl/minion/elder-taggawag.js.map +1 -1
- package/dist/cards/impl/minion/electric-synthesizer.js +3 -2
- package/dist/cards/impl/minion/electric-synthesizer.js.map +1 -1
- package/dist/cards/impl/minion/elite-navigator.d.ts +2 -0
- package/dist/cards/impl/minion/elite-navigator.js +24 -0
- package/dist/cards/impl/minion/elite-navigator.js.map +1 -0
- package/dist/cards/impl/minion/fauna-whisperer.d.ts +2 -0
- package/dist/cards/impl/minion/fauna-whisperer.js +29 -0
- package/dist/cards/impl/minion/fauna-whisperer.js.map +1 -0
- package/dist/cards/impl/minion/fire-forged-evoker.d.ts +2 -0
- package/dist/cards/impl/minion/fire-forged-evoker.js +14 -0
- package/dist/cards/impl/minion/fire-forged-evoker.js.map +1 -0
- package/dist/cards/impl/minion/firescale-hoarder.d.ts +2 -0
- package/dist/cards/impl/minion/firescale-hoarder.js +19 -0
- package/dist/cards/impl/minion/firescale-hoarder.js.map +1 -0
- package/dist/cards/impl/minion/flighty-scout.d.ts +2 -0
- package/dist/cards/impl/minion/flighty-scout.js +24 -0
- package/dist/cards/impl/minion/flighty-scout.js.map +1 -0
- package/dist/cards/impl/minion/forest-rover.js +2 -1
- package/dist/cards/impl/minion/forest-rover.js.map +1 -1
- package/dist/cards/impl/minion/fountain-chiller.js +2 -2
- package/dist/cards/impl/minion/fountain-chiller.js.map +1 -1
- package/dist/cards/impl/minion/gem-smuggler.js +1 -0
- package/dist/cards/impl/minion/gem-smuggler.js.map +1 -1
- package/dist/cards/impl/minion/general-drakkisath.js +1 -0
- package/dist/cards/impl/minion/general-drakkisath.js.map +1 -1
- package/dist/cards/impl/minion/gentle-djinni.js +1 -0
- package/dist/cards/impl/minion/gentle-djinni.js.map +1 -1
- package/dist/cards/impl/minion/gentle-stag.js +7 -3
- package/dist/cards/impl/minion/gentle-stag.js.map +1 -1
- package/dist/cards/impl/minion/glowgullet-warlord.d.ts +2 -0
- package/dist/cards/impl/minion/glowgullet-warlord.js +15 -0
- package/dist/cards/impl/minion/glowgullet-warlord.js.map +1 -0
- package/dist/cards/impl/minion/glowing-cinder.d.ts +2 -0
- package/dist/cards/impl/minion/glowing-cinder.js +11 -0
- package/dist/cards/impl/minion/glowing-cinder.js.map +1 -0
- package/dist/cards/impl/minion/goldgrubber.d.ts +2 -0
- package/dist/cards/impl/minion/goldgrubber.js +16 -0
- package/dist/cards/impl/minion/goldgrubber.js.map +1 -0
- package/dist/cards/impl/minion/gormling-gourmet.d.ts +2 -0
- package/dist/cards/impl/minion/gormling-gourmet.js +19 -0
- package/dist/cards/impl/minion/gormling-gourmet.js.map +1 -0
- package/dist/cards/impl/minion/grease-bot.js +1 -2
- package/dist/cards/impl/minion/grease-bot.js.map +1 -1
- package/dist/cards/impl/minion/greenskeeper.d.ts +2 -0
- package/dist/cards/impl/minion/greenskeeper.js +18 -0
- package/dist/cards/impl/minion/greenskeeper.js.map +1 -0
- package/dist/cards/impl/minion/grimscale-elegist.d.ts +2 -0
- package/dist/cards/impl/minion/grimscale-elegist.js +20 -0
- package/dist/cards/impl/minion/grimscale-elegist.js.map +1 -0
- package/dist/cards/impl/minion/gritty-headhunter.js +1 -0
- package/dist/cards/impl/minion/gritty-headhunter.js.map +1 -1
- package/dist/cards/impl/minion/hackerfin.js +3 -2
- package/dist/cards/impl/minion/hackerfin.js.map +1 -1
- package/dist/cards/impl/minion/hawkstrider-herald.js +1 -1
- package/dist/cards/impl/minion/hawkstrider-herald.js.map +1 -1
- package/dist/cards/impl/minion/hoarding-hatespawn.js +1 -1
- package/dist/cards/impl/minion/hoarding-hatespawn.js.map +1 -1
- package/dist/cards/impl/minion/hungry-snapjaw.js +1 -1
- package/dist/cards/impl/minion/hungry-snapjaw.js.map +1 -1
- package/dist/cards/impl/minion/hydralisk.js +1 -1
- package/dist/cards/impl/minion/hydralisk.js.map +1 -1
- package/dist/cards/impl/minion/ignition-specialist.d.ts +2 -0
- package/dist/cards/impl/minion/ignition-specialist.js +16 -0
- package/dist/cards/impl/minion/ignition-specialist.js.map +1 -0
- package/dist/cards/impl/minion/immortal.js +1 -2
- package/dist/cards/impl/minion/immortal.js.map +1 -1
- package/dist/cards/impl/minion/implant-subject.js +1 -1
- package/dist/cards/impl/minion/implant-subject.js.map +1 -1
- package/dist/cards/impl/minion/imposing-percussionist.js +1 -0
- package/dist/cards/impl/minion/imposing-percussionist.js.map +1 -1
- package/dist/cards/impl/minion/impulsive-trickster.js +13 -1
- package/dist/cards/impl/minion/impulsive-trickster.js.map +1 -1
- package/dist/cards/impl/minion/inspiring-underdog.js +2 -2
- package/dist/cards/impl/minion/inspiring-underdog.js.map +1 -1
- package/dist/cards/impl/minion/irate-rooster.js +1 -1
- package/dist/cards/impl/minion/irate-rooster.js.map +1 -1
- package/dist/cards/impl/minion/king-bagurgle.js +4 -3
- package/dist/cards/impl/minion/king-bagurgle.js.map +1 -1
- package/dist/cards/impl/minion/lightfang-enforcer.js +1 -1
- package/dist/cards/impl/minion/lightfang-enforcer.js.map +1 -1
- package/dist/cards/impl/minion/lokholar-frostforger.d.ts +2 -0
- package/dist/cards/impl/minion/lokholar-frostforger.js +17 -0
- package/dist/cards/impl/minion/lokholar-frostforger.js.map +1 -0
- package/dist/cards/impl/minion/lovesick-balladist.js +6 -3
- package/dist/cards/impl/minion/lovesick-balladist.js.map +1 -1
- package/dist/cards/impl/minion/low-flier.js +1 -1
- package/dist/cards/impl/minion/low-flier.js.map +1 -1
- package/dist/cards/impl/minion/lurker.js +1 -1
- package/dist/cards/impl/minion/lurker.js.map +1 -1
- package/dist/cards/impl/minion/mantid-queen.js +1 -1
- package/dist/cards/impl/minion/mantid-queen.js.map +1 -1
- package/dist/cards/impl/minion/maw-caster.d.ts +2 -0
- package/dist/cards/impl/minion/maw-caster.js +25 -0
- package/dist/cards/impl/minion/maw-caster.js.map +1 -0
- package/dist/cards/impl/minion/mecha-jaraxxus.js +1 -0
- package/dist/cards/impl/minion/mecha-jaraxxus.js.map +1 -1
- package/dist/cards/impl/minion/mechagnome-interpreter.d.ts +2 -0
- package/dist/cards/impl/minion/mechagnome-interpreter.js +12 -0
- package/dist/cards/impl/minion/mechagnome-interpreter.js.map +1 -0
- package/dist/cards/impl/minion/menagerie-jug.js +1 -0
- package/dist/cards/impl/minion/menagerie-jug.js.map +1 -1
- package/dist/cards/impl/minion/metallic-hunter.d.ts +2 -0
- package/dist/cards/impl/minion/metallic-hunter.js +13 -0
- package/dist/cards/impl/minion/metallic-hunter.js.map +1 -0
- package/dist/cards/impl/minion/misfit-dragonling.js +1 -2
- package/dist/cards/impl/minion/misfit-dragonling.js.map +1 -1
- package/dist/cards/impl/minion/monstrous-macaw.d.ts +2 -0
- package/dist/cards/impl/minion/monstrous-macaw.js +36 -0
- package/dist/cards/impl/minion/monstrous-macaw.js.map +1 -0
- package/dist/cards/impl/minion/murkbrine-expeditioner.d.ts +2 -0
- package/dist/cards/impl/minion/murkbrine-expeditioner.js +18 -0
- package/dist/cards/impl/minion/murkbrine-expeditioner.js.map +1 -0
- package/dist/cards/impl/minion/murky.js +3 -2
- package/dist/cards/impl/minion/murky.js.map +1 -1
- package/dist/cards/impl/minion/mutalisk.js +1 -1
- package/dist/cards/impl/minion/mutalisk.js.map +1 -1
- package/dist/cards/impl/minion/mutated-lasher.js +1 -2
- package/dist/cards/impl/minion/mutated-lasher.js.map +1 -1
- package/dist/cards/impl/minion/mythrax.js +1 -2
- package/dist/cards/impl/minion/mythrax.js.map +1 -1
- package/dist/cards/impl/minion/nerubian-deathswarmer.js +1 -0
- package/dist/cards/impl/minion/nerubian-deathswarmer.js.map +1 -1
- package/dist/cards/impl/minion/nightmare-par-tea-guest.d.ts +2 -0
- package/dist/cards/impl/minion/nightmare-par-tea-guest.js +19 -0
- package/dist/cards/impl/minion/nightmare-par-tea-guest.js.map +1 -0
- package/dist/cards/impl/minion/noisul-of-the-many-faces.d.ts +2 -0
- package/dist/cards/impl/minion/noisul-of-the-many-faces.js +22 -0
- package/dist/cards/impl/minion/noisul-of-the-many-faces.js.map +1 -0
- package/dist/cards/impl/minion/oozeling-gladiator.js +1 -0
- package/dist/cards/impl/minion/oozeling-gladiator.js.map +1 -1
- package/dist/cards/impl/minion/parched-wanderer.js +2 -1
- package/dist/cards/impl/minion/parched-wanderer.js.map +1 -1
- package/dist/cards/impl/minion/peggy-sturdybone.js +1 -2
- package/dist/cards/impl/minion/peggy-sturdybone.js.map +1 -1
- package/dist/cards/impl/minion/primalfin-lookout.js +1 -0
- package/dist/cards/impl/minion/primalfin-lookout.js.map +1 -1
- package/dist/cards/impl/minion/prized-promo-drake.js +1 -2
- package/dist/cards/impl/minion/prized-promo-drake.js.map +1 -1
- package/dist/cards/impl/minion/razorfen-geomancer.js +1 -0
- package/dist/cards/impl/minion/razorfen-geomancer.js.map +1 -1
- package/dist/cards/impl/minion/razorgore-the-untamed.js +1 -2
- package/dist/cards/impl/minion/razorgore-the-untamed.js.map +1 -1
- package/dist/cards/impl/minion/rickety-repairbot.d.ts +2 -0
- package/dist/cards/impl/minion/rickety-repairbot.js +16 -0
- package/dist/cards/impl/minion/rickety-repairbot.js.map +1 -0
- package/dist/cards/impl/minion/ripsnarl-captain.js +1 -2
- package/dist/cards/impl/minion/ripsnarl-captain.js.map +1 -1
- package/dist/cards/impl/minion/roach.js +1 -1
- package/dist/cards/impl/minion/roach.js.map +1 -1
- package/dist/cards/impl/minion/rodeo-performer.js +1 -0
- package/dist/cards/impl/minion/rodeo-performer.js.map +1 -1
- package/dist/cards/impl/minion/runed-progenitor.js +1 -1
- package/dist/cards/impl/minion/runed-progenitor.js.map +1 -1
- package/dist/cards/impl/minion/salty-hog.js +1 -2
- package/dist/cards/impl/minion/salty-hog.js.map +1 -1
- package/dist/cards/impl/minion/sanctum-rester.js +1 -2
- package/dist/cards/impl/minion/sanctum-rester.js.map +1 -1
- package/dist/cards/impl/minion/sand-swirler.d.ts +2 -0
- package/dist/cards/impl/minion/sand-swirler.js +12 -0
- package/dist/cards/impl/minion/sand-swirler.js.map +1 -0
- package/dist/cards/impl/minion/sanlayn-scribe.js +2 -2
- package/dist/cards/impl/minion/sanlayn-scribe.js.map +1 -1
- package/dist/cards/impl/minion/selfless-hero.d.ts +2 -0
- package/dist/cards/impl/minion/selfless-hero.js +25 -0
- package/dist/cards/impl/minion/selfless-hero.js.map +1 -0
- package/dist/cards/impl/minion/shadowdancer.d.ts +2 -0
- package/dist/cards/impl/minion/shadowdancer.js +13 -0
- package/dist/cards/impl/minion/shadowdancer.js.map +1 -0
- package/dist/cards/impl/minion/sharptooth-snapper.d.ts +2 -0
- package/dist/cards/impl/minion/sharptooth-snapper.js +8 -0
- package/dist/cards/impl/minion/sharptooth-snapper.js.map +1 -0
- package/dist/cards/impl/minion/shell-collector.js +1 -0
- package/dist/cards/impl/minion/shell-collector.js.map +1 -1
- package/dist/cards/impl/minion/silithid-burrower.d.ts +2 -0
- package/dist/cards/impl/minion/silithid-burrower.js +18 -0
- package/dist/cards/impl/minion/silithid-burrower.js.map +1 -0
- package/dist/cards/impl/minion/silky-shimmermoth.d.ts +2 -0
- package/dist/cards/impl/minion/silky-shimmermoth.js +20 -0
- package/dist/cards/impl/minion/silky-shimmermoth.js.map +1 -0
- package/dist/cards/impl/minion/silver-handed-recruit.js +2 -1
- package/dist/cards/impl/minion/silver-handed-recruit.js.map +1 -1
- package/dist/cards/impl/minion/skulking-bristlemane.d.ts +2 -0
- package/dist/cards/impl/minion/skulking-bristlemane.js +17 -0
- package/dist/cards/impl/minion/skulking-bristlemane.js.map +1 -0
- package/dist/cards/impl/minion/slumber-sorcerer.d.ts +2 -0
- package/dist/cards/impl/minion/slumber-sorcerer.js +13 -0
- package/dist/cards/impl/minion/slumber-sorcerer.js.map +1 -0
- package/dist/cards/impl/minion/smolderwing.js +2 -1
- package/dist/cards/impl/minion/smolderwing.js.map +1 -1
- package/dist/cards/impl/minion/soul-rewinder.js +5 -1
- package/dist/cards/impl/minion/soul-rewinder.js.map +1 -1
- package/dist/cards/impl/minion/spacefarer.js +1 -1
- package/dist/cards/impl/minion/spacefarer.js.map +1 -1
- package/dist/cards/impl/minion/spirited-whimsydrake.d.ts +2 -0
- package/dist/cards/impl/minion/spirited-whimsydrake.js +19 -0
- package/dist/cards/impl/minion/spirited-whimsydrake.js.map +1 -0
- package/dist/cards/impl/minion/springy-spriggan.d.ts +2 -0
- package/dist/cards/impl/minion/springy-spriggan.js +21 -0
- package/dist/cards/impl/minion/springy-spriggan.js.map +1 -0
- package/dist/cards/impl/minion/surfing-slyvar.d.ts +2 -0
- package/dist/cards/impl/minion/surfing-slyvar.js +18 -0
- package/dist/cards/impl/minion/surfing-slyvar.js.map +1 -0
- package/dist/cards/impl/minion/swampstriker.js +1 -1
- package/dist/cards/impl/minion/swampstriker.js.map +1 -1
- package/dist/cards/impl/minion/thorncaller.d.ts +2 -0
- package/dist/cards/impl/minion/thorncaller.js +19 -0
- package/dist/cards/impl/minion/thorncaller.js.map +1 -0
- package/dist/cards/impl/minion/thousandth-paper-drake.js +1 -2
- package/dist/cards/impl/minion/thousandth-paper-drake.js.map +1 -1
- package/dist/cards/impl/minion/thundering-abomination.js +1 -2
- package/dist/cards/impl/minion/thundering-abomination.js.map +1 -1
- package/dist/cards/impl/minion/turquoise-skitterer.js +1 -1
- package/dist/cards/impl/minion/turquoise-skitterer.js.map +1 -1
- package/dist/cards/impl/minion/twilight-primordium.js +2 -2
- package/dist/cards/impl/minion/twilight-primordium.js.map +1 -1
- package/dist/cards/impl/minion/ultralisk.js +1 -2
- package/dist/cards/impl/minion/ultralisk.js.map +1 -1
- package/dist/cards/impl/minion/ultraviolet-ascendant.js +1 -1
- package/dist/cards/impl/minion/ultraviolet-ascendant.js.map +1 -1
- package/dist/cards/impl/minion/vaelastrasz.js +1 -2
- package/dist/cards/impl/minion/vaelastrasz.js.map +1 -1
- package/dist/cards/impl/minion/valiant-tiger.d.ts +2 -0
- package/dist/cards/impl/minion/valiant-tiger.js +18 -0
- package/dist/cards/impl/minion/valiant-tiger.js.map +1 -0
- package/dist/cards/impl/minion/void-ray.js +2 -2
- package/dist/cards/impl/minion/void-ray.js.map +1 -1
- package/dist/cards/impl/minion/vorkai-guardian.d.ts +2 -0
- package/dist/cards/impl/minion/vorkai-guardian.js +19 -0
- package/dist/cards/impl/minion/vorkai-guardian.js.map +1 -0
- package/dist/cards/impl/minion/wandering-wight.js +1 -2
- package/dist/cards/impl/minion/wandering-wight.js.map +1 -1
- package/dist/cards/impl/minion/whelp-smuggler.js +1 -2
- package/dist/cards/impl/minion/whelp-smuggler.js.map +1 -1
- package/dist/cards/impl/minion/wisp-in-the-shell.js +2 -1
- package/dist/cards/impl/minion/wisp-in-the-shell.js.map +1 -1
- package/dist/cards/impl/quest-reward/staff-of-origination.js +1 -2
- package/dist/cards/impl/quest-reward/staff-of-origination.js.map +1 -1
- package/dist/cards/impl/trinket/all-purpose-kibble.d.ts +2 -0
- package/dist/cards/impl/trinket/all-purpose-kibble.js +14 -0
- package/dist/cards/impl/trinket/all-purpose-kibble.js.map +1 -0
- package/dist/cards/impl/trinket/arm-of-the-empire.js +1 -2
- package/dist/cards/impl/trinket/arm-of-the-empire.js.map +1 -1
- package/dist/cards/impl/trinket/baleful-incense.d.ts +2 -0
- package/dist/cards/impl/trinket/baleful-incense.js +22 -0
- package/dist/cards/impl/trinket/baleful-incense.js.map +1 -0
- package/dist/cards/impl/trinket/bassgill-portrait.d.ts +2 -0
- package/dist/cards/impl/trinket/bassgill-portrait.js +16 -0
- package/dist/cards/impl/trinket/bassgill-portrait.js.map +1 -0
- package/dist/cards/impl/trinket/battle-horn.d.ts +2 -0
- package/dist/cards/impl/trinket/battle-horn.js +20 -0
- package/dist/cards/impl/trinket/battle-horn.js.map +1 -0
- package/dist/cards/impl/trinket/beetle-band.d.ts +2 -0
- package/dist/cards/impl/trinket/beetle-band.js +18 -0
- package/dist/cards/impl/trinket/beetle-band.js.map +1 -0
- package/dist/cards/impl/trinket/bird-feeder.d.ts +2 -0
- package/dist/cards/impl/trinket/bird-feeder.js +13 -0
- package/dist/cards/impl/trinket/bird-feeder.js.map +1 -0
- package/dist/cards/impl/trinket/bronze-timepiece.js +1 -3
- package/dist/cards/impl/trinket/bronze-timepiece.js.map +1 -1
- package/dist/cards/impl/trinket/crocheted-sungill.d.ts +2 -0
- package/dist/cards/impl/trinket/crocheted-sungill.js +31 -0
- package/dist/cards/impl/trinket/crocheted-sungill.js.map +1 -0
- package/dist/cards/impl/trinket/divine-signet.d.ts +2 -0
- package/dist/cards/impl/trinket/divine-signet.js +14 -0
- package/dist/cards/impl/trinket/divine-signet.js.map +1 -0
- package/dist/cards/impl/trinket/eclectic-shrine.d.ts +2 -0
- package/dist/cards/impl/trinket/eclectic-shrine.js +36 -0
- package/dist/cards/impl/trinket/eclectic-shrine.js.map +1 -0
- package/dist/cards/impl/trinket/faerie-dragon-scale.d.ts +2 -0
- package/dist/cards/impl/trinket/faerie-dragon-scale.js +20 -0
- package/dist/cards/impl/trinket/faerie-dragon-scale.js.map +1 -0
- package/dist/cards/impl/trinket/herald-sticker.d.ts +2 -0
- package/dist/cards/impl/trinket/herald-sticker.js +21 -0
- package/dist/cards/impl/trinket/herald-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/hogwash-basin.d.ts +2 -0
- package/dist/cards/impl/trinket/hogwash-basin.js +14 -0
- package/dist/cards/impl/trinket/hogwash-basin.js.map +1 -0
- package/dist/cards/impl/trinket/rivendare-portrait.js +1 -2
- package/dist/cards/impl/trinket/rivendare-portrait.js.map +1 -1
- package/dist/cards/impl/trinket/sthara-sticker.d.ts +2 -0
- package/dist/cards/impl/trinket/sthara-sticker.js +32 -0
- package/dist/cards/impl/trinket/sthara-sticker.js.map +1 -0
- package/dist/cards/impl/trinket/tinyfin-onesie.js +1 -1
- package/dist/cards/impl/trinket/tinyfin-onesie.js.map +1 -1
- package/dist/cards/impl/trinket/unholy-sanctum.d.ts +2 -0
- package/dist/cards/impl/trinket/unholy-sanctum.js +15 -0
- package/dist/cards/impl/trinket/unholy-sanctum.js.map +1 -0
- package/dist/cards/impl/trinket/vashjir-anemone.d.ts +2 -0
- package/dist/cards/impl/trinket/vashjir-anemone.js +13 -0
- package/dist/cards/impl/trinket/vashjir-anemone.js.map +1 -0
- package/dist/cards/impl/trinket/yulon-sticker.d.ts +2 -0
- package/dist/cards/impl/trinket/yulon-sticker.js +20 -0
- package/dist/cards/impl/trinket/yulon-sticker.js.map +1 -0
- package/dist/keywords/divine-shield.js +19 -6
- package/dist/keywords/divine-shield.js.map +1 -1
- package/dist/keywords/venomous.js +1 -1
- package/dist/keywords/venomous.js.map +1 -1
- package/dist/services/utils.d.ts +3 -0
- package/dist/services/utils.js.map +1 -1
- package/dist/simulate-bgs-battle.js +2 -0
- package/dist/simulate-bgs-battle.js.map +1 -1
- package/dist/simulation/add-minion-to-board.js +48 -29
- package/dist/simulation/add-minion-to-board.js.map +1 -1
- package/dist/simulation/after-attack.d.ts +11 -1
- package/dist/simulation/after-attack.js +20 -25
- package/dist/simulation/after-attack.js.map +1 -1
- package/dist/simulation/attack.d.ts +8 -0
- package/dist/simulation/attack.js +16 -3
- package/dist/simulation/attack.js.map +1 -1
- package/dist/simulation/auras.js +14 -12
- package/dist/simulation/auras.js.map +1 -1
- package/dist/simulation/avenge.js +12 -13
- package/dist/simulation/avenge.js.map +1 -1
- package/dist/simulation/battlecries.d.ts +1 -0
- package/dist/simulation/battlecries.js +28 -36
- package/dist/simulation/battlecries.js.map +1 -1
- package/dist/simulation/blood-gems.js +8 -3
- package/dist/simulation/blood-gems.js.map +1 -1
- package/dist/simulation/cards-in-hand.js +1 -2
- package/dist/simulation/cards-in-hand.js.map +1 -1
- package/dist/simulation/damage-effects.js +4 -8
- package/dist/simulation/damage-effects.js.map +1 -1
- package/dist/simulation/death-effects.js +1 -2
- package/dist/simulation/death-effects.js.map +1 -1
- package/dist/simulation/deathrattle-effects.js +25 -55
- package/dist/simulation/deathrattle-effects.js.map +1 -1
- package/dist/simulation/deathrattle-on-trigger.js +16 -2
- package/dist/simulation/deathrattle-on-trigger.js.map +1 -1
- package/dist/simulation/deathrattle-spawns.d.ts +1 -0
- package/dist/simulation/deathrattle-spawns.js +7 -1
- package/dist/simulation/deathrattle-spawns.js.map +1 -1
- package/dist/simulation/deathrattle-utils.d.ts +2 -1
- package/dist/simulation/deathrattle-utils.js +7 -3
- package/dist/simulation/deathrattle-utils.js.map +1 -1
- package/dist/simulation/discover.js +1 -1
- package/dist/simulation/discover.js.map +1 -1
- package/dist/simulation/magnetize.d.ts +9 -1
- package/dist/simulation/magnetize.js +17 -3
- package/dist/simulation/magnetize.js.map +1 -1
- package/dist/simulation/minion-death.js +1 -2
- package/dist/simulation/minion-death.js.map +1 -1
- package/dist/simulation/minion-kill.js +3 -3
- package/dist/simulation/minion-kill.js.map +1 -1
- package/dist/simulation/on-attack.js +24 -9
- package/dist/simulation/on-attack.js.map +1 -1
- package/dist/simulation/on-being-attacked.js +5 -10
- package/dist/simulation/on-being-attacked.js.map +1 -1
- package/dist/simulation/reborn.js +2 -4
- package/dist/simulation/reborn.js.map +1 -1
- package/dist/simulation/spawn-fail.js +1 -1
- package/dist/simulation/spawn-fail.js.map +1 -1
- package/dist/simulation/start-of-combat/soc-action-processor.js +0 -4
- package/dist/simulation/start-of-combat/soc-action-processor.js.map +1 -1
- package/dist/simulation/start-of-combat/soc-illidan-hero-power.js +2 -4
- package/dist/simulation/start-of-combat/soc-illidan-hero-power.js.map +1 -1
- package/dist/simulation/start-of-combat/soc-minion.js +10 -2
- package/dist/simulation/start-of-combat/soc-minion.js.map +1 -1
- package/dist/simulation/start-of-combat/start-of-combat.js +23 -17
- package/dist/simulation/start-of-combat/start-of-combat.js.map +1 -1
- package/dist/simulation/stats.d.ts +3 -3
- package/dist/simulation/stats.js +13 -3
- package/dist/simulation/stats.js.map +1 -1
- package/dist/simulation/summon-when-space.js +13 -0
- package/dist/simulation/summon-when-space.js.map +1 -1
- package/dist/simulation/utils/golden.js +1 -1
- package/dist/simulation/utils/golden.js.map +1 -1
- package/dist/utils.js +11 -16
- package/dist/utils.js.map +1 -1
- package/package.json +2 -2
- package/dist/cards/impl/trinket/artisanal-urn.d.ts +0 -5
- package/dist/cards/impl/trinket/artisanal-urn.js +0 -13
- package/dist/cards/impl/trinket/artisanal-urn.js.map +0 -1
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BeetleBand = void 0;
|
|
4
|
+
const taunt_1 = require("../../../keywords/taunt");
|
|
5
|
+
const deathrattle_spawns_1 = require("../../../simulation/deathrattle-spawns");
|
|
6
|
+
exports.BeetleBand = {
|
|
7
|
+
cardIds: ["BG32_MagicItem_860", "BG32_MagicItem_860t"],
|
|
8
|
+
baseAvengeValue: (cardId) => (cardId === "BG32_MagicItem_860" ? 5 : 6),
|
|
9
|
+
avenge: (trinket, input) => {
|
|
10
|
+
const number = trinket.cardId === "BG32_MagicItem_860" ? 1 : 2;
|
|
11
|
+
const spawns = (0, deathrattle_spawns_1.spawnEntities)("BG28_603t", number, input.board, input.hero, input.otherBoard, input.otherHero, input.gameState, input.hero.friendly, false);
|
|
12
|
+
spawns.forEach((spawn) => {
|
|
13
|
+
(0, taunt_1.updateTaunt)(spawn, true, input.board, input.hero, input.otherHero, input.gameState);
|
|
14
|
+
});
|
|
15
|
+
return spawns;
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=beetle-band.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"beetle-band.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/beetle-band.ts"],"names":[],"mappings":";;;AAEA,mDAAsD;AAEtD,+EAAuE;AAG1D,QAAA,UAAU,GAAe;IACrC,OAAO,EAAE,6CAA+F;IACxG,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,MAAM,yBAA0C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/F,MAAM,EAAE,CAAC,OAAoB,EAAE,KAAkB,EAA0B,EAAE;QAC5E,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,yBAA0C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,MAAM,MAAM,GAAG,IAAA,kCAAa,eAE3B,MAAM,EACN,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,IAAI,CAAC,QAAQ,EACnB,KAAK,CACL,CAAC;QACF,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACxB,IAAA,mBAAW,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IACf,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { updateTaunt } from '../../../keywords/taunt';\r\nimport { AvengeInput } from '../../../simulation/avenge';\r\nimport { spawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { AvengeCard } from '../../card.interface';\r\n\r\nexport const BeetleBand: AvengeCard = {\r\n\tcardIds: [CardIds.BeetleBand_BG32_MagicItem_860, CardIds.BeetleBand_BeetleBandToken_BG32_MagicItem_860t],\r\n\tbaseAvengeValue: (cardId: string) => (cardId === CardIds.BeetleBand_BG32_MagicItem_860 ? 5 : 6),\r\n\tavenge: (trinket: BoardEntity, input: AvengeInput): readonly BoardEntity[] => {\r\n\t\tconst number = trinket.cardId === CardIds.BeetleBand_BG32_MagicItem_860 ? 1 : 2;\r\n\t\tconst spawns = spawnEntities(\r\n\t\t\tCardIds.BoonOfBeetles_BeetleToken_BG28_603t,\r\n\t\t\tnumber,\r\n\t\t\tinput.board,\r\n\t\t\tinput.hero,\r\n\t\t\tinput.otherBoard,\r\n\t\t\tinput.otherHero,\r\n\t\t\tinput.gameState,\r\n\t\t\tinput.hero.friendly,\r\n\t\t\tfalse,\r\n\t\t);\r\n\t\tspawns.forEach((spawn) => {\r\n\t\t\tupdateTaunt(spawn, true, input.board, input.hero, input.otherHero, input.gameState);\r\n\t\t});\r\n\t\treturn spawns;\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BirdFeeder = void 0;
|
|
4
|
+
const utils_1 = require("../../../utils");
|
|
5
|
+
exports.BirdFeeder = {
|
|
6
|
+
cardIds: ["BG32_MagicItem_864", "BG32_MagicItem_864t"],
|
|
7
|
+
baseAvengeValue: (cardId) => 2,
|
|
8
|
+
avenge: (minion, input) => {
|
|
9
|
+
const buff = minion.cardId === "BG32_MagicItem_864" ? 1 : 4;
|
|
10
|
+
(0, utils_1.addStatsToBoard)(input.hero, input.board, input.hero, buff, buff, input.gameState);
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=bird-feeder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bird-feeder.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/bird-feeder.ts"],"names":[],"mappings":";;;AAGA,0CAAiD;AAGpC,QAAA,UAAU,GAAe;IACrC,OAAO,EAAE,6CAA+F;IACxG,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,MAAmB,EAAE,KAAkB,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,yBAA0C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,IAAA,uBAAe,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACnF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { AvengeInput } from '../../../simulation/avenge';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { AvengeCard } from '../../card.interface';\r\n\r\nexport const BirdFeeder: AvengeCard = {\r\n\tcardIds: [CardIds.BirdFeeder_BG32_MagicItem_864, CardIds.BirdFeeder_BirdFeederToken_BG32_MagicItem_864t],\r\n\tbaseAvengeValue: (cardId: string) => 2,\r\n\tavenge: (minion: BoardEntity, input: AvengeInput) => {\r\n\t\tconst buff = minion.cardId === CardIds.BirdFeeder_BG32_MagicItem_864 ? 1 : 4;\r\n\t\taddStatsToBoard(input.hero, input.board, input.hero, buff, buff, input.gameState);\r\n\t},\r\n};\r\n"]}
|
|
@@ -6,9 +6,7 @@ exports.BronzeTimepiece = {
|
|
|
6
6
|
startOfCombat: (trinket, input) => {
|
|
7
7
|
if (input.playerBoard.length > 0) {
|
|
8
8
|
input.playerBoard.forEach((entity) => {
|
|
9
|
-
|
|
10
|
-
(0, stats_1.setEntityStats)(entity, highest, highest, input.playerBoard, input.playerEntity, input.gameState);
|
|
11
|
-
input.gameState.spectator.registerPowerTarget(trinket, entity, input.playerBoard, null, null);
|
|
9
|
+
(0, stats_1.modifyStats)(entity, trinket, 0, entity.attack, input.playerBoard, input.playerEntity, input.gameState);
|
|
12
10
|
});
|
|
13
11
|
return true;
|
|
14
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bronze-timepiece.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/bronze-timepiece.ts"],"names":[],"mappings":";;;AAEA,
|
|
1
|
+
{"version":3,"file":"bronze-timepiece.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/bronze-timepiece.ts"],"names":[],"mappings":";;;AAEA,qDAAwD;AAE3C,QAAA,eAAe,GAAG;IAC9B,aAAa,EAAE,CAAC,OAAqB,EAAE,KAAe,EAAE,EAAE;QACzD,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YACjC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACpC,IAAA,mBAAW,EAAC,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YACxG,CAAC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\n\r\nexport const BronzeTimepiece = {\r\n\tstartOfCombat: (trinket: BoardTrinket, input: SoCInput) => {\r\n\t\tif (input.playerBoard.length > 0) {\r\n\t\t\tinput.playerBoard.forEach((entity) => {\r\n\t\t\t\tmodifyStats(entity, trinket, 0, entity.attack, input.playerBoard, input.playerEntity, input.gameState);\r\n\t\t\t});\r\n\t\t\treturn true;\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CrochetedSungill = void 0;
|
|
4
|
+
const utils_1 = require("../../../services/utils");
|
|
5
|
+
const deathrattle_spawns_1 = require("../../../simulation/deathrattle-spawns");
|
|
6
|
+
const spawns_1 = require("../../../simulation/spawns");
|
|
7
|
+
exports.CrochetedSungill = {
|
|
8
|
+
cardIds: ["BG32_MagicItem_960"],
|
|
9
|
+
defaultScriptDataNum: (cardId) => 1,
|
|
10
|
+
onAfterDeath: (trinket, input) => {
|
|
11
|
+
var _a, _b;
|
|
12
|
+
if (input.board.length > 0 || trinket.scriptDataNum1 <= 0) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
const hand = (_b = (_a = input.hero.hand) === null || _a === void 0 ? void 0 : _a.filter((e) => !!(e === null || e === void 0 ? void 0 : e.cardId))) !== null && _b !== void 0 ? _b : [];
|
|
16
|
+
const highestHealth = Math.max(...hand.filter((c) => c.health).map((c) => c.health));
|
|
17
|
+
const highestHealthMinions = highestHealth ? hand.filter((c) => c.health === highestHealth) : null;
|
|
18
|
+
const candidate = !!(highestHealthMinions === null || highestHealthMinions === void 0 ? void 0 : highestHealthMinions.length)
|
|
19
|
+
? (0, utils_1.pickRandom)(highestHealthMinions)
|
|
20
|
+
: hand.filter((c) => c.cardId).length
|
|
21
|
+
? (0, utils_1.pickRandom)(hand.filter((c) => c.cardId))
|
|
22
|
+
: null;
|
|
23
|
+
if (!candidate) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
const spawns = (0, deathrattle_spawns_1.spawnEntities)(candidate.cardId, 1, input.board, input.hero, input.otherBoard, input.otherHero, input.gameState, input.hero.friendly, false, false, true, { ...candidate });
|
|
27
|
+
(0, spawns_1.performEntitySpawns)(spawns, input.board, input.hero, input.hero, 0, input.otherBoard, input.otherHero, input.gameState);
|
|
28
|
+
trinket.scriptDataNum1--;
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=crocheted-sungill.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crocheted-sungill.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/crocheted-sungill.ts"],"names":[],"mappings":";;;AAGA,mDAAqD;AAErD,+EAAuE;AACvE,uDAAiE;AAGpD,QAAA,gBAAgB,GAAgD;IAC5E,OAAO,EAAE,sBAA6C;IACtD,oBAAoB,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IAC3C,YAAY,EAAE,CAAC,OAAqB,EAAE,KAAwB,EAAE,EAAE;;QACjE,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,cAAc,IAAI,CAAC,EAAE;YAC1D,OAAO;SACP;QACD,MAAM,IAAI,GACT,MAAA,MAAA,KAAK,CAAC,IAAI,CAAC,IAAI,0CAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,MAAM,CAAA,CAAC,mCAE3C,EAAE,CAAC;QACJ,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACrF,MAAM,oBAAoB,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACnG,MAAM,SAAS,GAAG,CAAC,CAAC,CAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,MAAM,CAAA;YAC/C,CAAC,CAAC,IAAA,kBAAU,EAAC,oBAAoB,CAAC;YAClC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM;gBACrC,CAAC,CAAC,IAAA,kBAAU,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBAC1C,CAAC,CAAC,IAAI,CAAC;QACR,IAAI,CAAC,SAAS,EAAE;YACf,OAAO;SACP;QACD,MAAM,MAAM,GAAG,IAAA,kCAAa,EAC3B,SAAS,CAAC,MAAM,EAChB,CAAC,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,IAAI,CAAC,QAAQ,EACnB,KAAK,EACL,KAAK,EACL,IAAI,EACJ,EAAE,GAAG,SAAS,EAAiB,CAC/B,CAAC;QACF,IAAA,4BAAmB,EAClB,MAAM,EACN,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,IAAI,EACV,CAAC,EACD,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,CACf,CAAC;QACF,OAAO,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { OnAfterDeathInput } from '../../../simulation/attack';\r\nimport { spawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { performEntitySpawns } from '../../../simulation/spawns';\r\nimport { DefaultScriptDataNumCard, OnAfterDeathCard } from '../../card.interface';\r\n\r\nexport const CrochetedSungill: OnAfterDeathCard & DefaultScriptDataNumCard = {\r\n\tcardIds: [CardIds.CrochetedSungill_BG32_MagicItem_960],\r\n\tdefaultScriptDataNum: (cardId: string) => 1,\r\n\tonAfterDeath: (trinket: BoardTrinket, input: OnAfterDeathInput) => {\r\n\t\tif (input.board.length > 0 || trinket.scriptDataNum1 <= 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst hand =\r\n\t\t\tinput.hero.hand?.filter((e) => !!e?.cardId) ??\r\n\t\t\t// .filter((e) => !e.locked) // Not sure about this\r\n\t\t\t[];\r\n\t\tconst highestHealth = Math.max(...hand.filter((c) => c.health).map((c) => c.health));\r\n\t\tconst highestHealthMinions = highestHealth ? hand.filter((c) => c.health === highestHealth) : null;\r\n\t\tconst candidate = !!highestHealthMinions?.length\r\n\t\t\t? pickRandom(highestHealthMinions)\r\n\t\t\t: hand.filter((c) => c.cardId).length\r\n\t\t\t? pickRandom(hand.filter((c) => c.cardId))\r\n\t\t\t: null;\r\n\t\tif (!candidate) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst spawns = spawnEntities(\r\n\t\t\tcandidate.cardId,\r\n\t\t\t1,\r\n\t\t\tinput.board,\r\n\t\t\tinput.hero,\r\n\t\t\tinput.otherBoard,\r\n\t\t\tinput.otherHero,\r\n\t\t\tinput.gameState,\r\n\t\t\tinput.hero.friendly,\r\n\t\t\tfalse,\r\n\t\t\tfalse,\r\n\t\t\ttrue,\r\n\t\t\t{ ...candidate } as BoardEntity,\r\n\t\t);\r\n\t\tperformEntitySpawns(\r\n\t\t\tspawns,\r\n\t\t\tinput.board,\r\n\t\t\tinput.hero,\r\n\t\t\tinput.hero,\r\n\t\t\t0,\r\n\t\t\tinput.otherBoard,\r\n\t\t\tinput.otherHero,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t\ttrinket.scriptDataNum1--;\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DivineSignet = void 0;
|
|
4
|
+
const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
|
|
5
|
+
exports.DivineSignet = {
|
|
6
|
+
cardIds: ["BG32_MagicItem_171"],
|
|
7
|
+
onDivineShieldUpdated: (trinket, input) => {
|
|
8
|
+
if (trinket.scriptDataNum1 > 0) {
|
|
9
|
+
(0, cards_in_hand_1.addCardsInHand)(input.hero, input.board, [input.gameState.cardsData.getRandomTavernSpell()], input.gameState);
|
|
10
|
+
trinket.scriptDataNum1--;
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=divine-signet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"divine-signet.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/divine-signet.ts"],"names":[],"mappings":";;;AAGA,qEAAmE;AAGtD,QAAA,YAAY,GAA8B;IACtD,OAAO,EAAE,sBAAyC;IAClD,qBAAqB,EAAE,CAAC,OAAqB,EAAE,KAAiC,EAAE,EAAE;QACnF,IAAI,OAAO,CAAC,cAAc,GAAG,CAAC,EAAE;YAC/B,IAAA,8BAAc,EACb,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,KAAK,EACX,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,oBAAoB,EAAE,CAAC,EAClD,KAAK,CAAC,SAAS,CACf,CAAC;YACF,OAAO,CAAC,cAAc,EAAE,CAAC;SACzB;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { OnDivineShieldUpdatedInput } from '../../../keywords/divine-shield';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { OnDivineShieldUpdatedCard } from '../../card.interface';\r\n\r\nexport const DivineSignet: OnDivineShieldUpdatedCard = {\r\n\tcardIds: [CardIds.DivineSignet_BG32_MagicItem_171],\r\n\tonDivineShieldUpdated: (trinket: BoardTrinket, input: OnDivineShieldUpdatedInput) => {\r\n\t\tif (trinket.scriptDataNum1 > 0) {\r\n\t\t\taddCardsInHand(\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tinput.board,\r\n\t\t\t\t[input.gameState.cardsData.getRandomTavernSpell()],\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t\ttrinket.scriptDataNum1--;\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EclecticShrine = void 0;
|
|
4
|
+
const reference_data_1 = require("@firestone-hs/reference-data");
|
|
5
|
+
const stats_1 = require("../../../simulation/stats");
|
|
6
|
+
const utils_1 = require("../../../utils");
|
|
7
|
+
const wax_warband_1 = require("../hero-power/wax-warband");
|
|
8
|
+
exports.EclecticShrine = {
|
|
9
|
+
startOfCombatTiming: 'pre-combat',
|
|
10
|
+
cardIds: ["BG32_MagicItem_280"],
|
|
11
|
+
startOfCombat: (trinket, input) => {
|
|
12
|
+
var _a;
|
|
13
|
+
if (input.playerBoard.length > 0) {
|
|
14
|
+
const boardWithTribes = input.playerBoard.filter((e) => !!(0, utils_1.getEffectiveTribesForEntity)(e, input.playerEntity, input.gameState.anomalies, input.gameState.allCards).length);
|
|
15
|
+
const boardWithoutAll = boardWithTribes.filter((e) => {
|
|
16
|
+
var _a;
|
|
17
|
+
return !((_a = (0, utils_1.getEffectiveTribesForEntity)(e, input.playerEntity, input.gameState.anomalies, input.gameState.allCards)) === null || _a === void 0 ? void 0 : _a.includes(reference_data_1.Race.ALL));
|
|
18
|
+
});
|
|
19
|
+
const selectedMinions = (0, wax_warband_1.selectMinions)(boardWithoutAll, reference_data_1.ALL_BG_RACES, input.gameState.allCards);
|
|
20
|
+
const allMinions = [
|
|
21
|
+
...selectedMinions,
|
|
22
|
+
...boardWithTribes.filter((e) => {
|
|
23
|
+
var _a;
|
|
24
|
+
return (_a = (0, utils_1.getEffectiveTribesForEntity)(e, input.playerEntity, input.gameState.anomalies, input.gameState.allCards)) === null || _a === void 0 ? void 0 : _a.includes(reference_data_1.Race.ALL);
|
|
25
|
+
}),
|
|
26
|
+
];
|
|
27
|
+
const stats = 2 * ((_a = trinket.scriptDataNum1) !== null && _a !== void 0 ? _a : 1);
|
|
28
|
+
allMinions.forEach((e) => {
|
|
29
|
+
(0, stats_1.modifyStats)(e, trinket, stats, stats, input.playerBoard, input.playerEntity, input.gameState);
|
|
30
|
+
});
|
|
31
|
+
trinket.scriptDataNum1++;
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=eclectic-shrine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eclectic-shrine.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/eclectic-shrine.ts"],"names":[],"mappings":";;;AAAA,iEAA2E;AAG3E,qDAAwD;AACxD,0CAA6D;AAE7D,2DAA0D;AAE7C,QAAA,cAAc,GAAsB;IAChD,mBAAmB,EAAE,YAAY;IACjC,OAAO,EAAE,sBAA2C;IACpD,aAAa,EAAE,CAAC,OAAqB,EAAE,KAAe,EAAE,EAAE;;QACzD,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YACjC,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAC/C,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,IAAA,mCAA2B,EAC5B,CAAC,EACD,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,CAAC,MAAM,CACT,CAAC;YACF,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,EAAE;;gBACL,OAAA,CAAC,CAAA,MAAA,IAAA,mCAA2B,EAC3B,CAAC,EACD,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,0CAAE,QAAQ,CAAC,qBAAI,CAAC,GAAG,CAAC,CAAA,CAAA;aAAA,CACtB,CAAC;YACF,MAAM,eAAe,GAAG,IAAA,2BAAa,EAAC,eAAe,EAAE,6BAAY,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC/F,MAAM,UAAU,GAAG;gBAClB,GAAG,eAAe;gBAClB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;;oBAC/B,OAAA,MAAA,IAAA,mCAA2B,EAC1B,CAAC,EACD,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,0CAAE,QAAQ,CAAC,qBAAI,CAAC,GAAG,CAAC,CAAA;iBAAA,CACrB;aACD,CAAC;YACF,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,MAAA,OAAO,CAAC,cAAc,mCAAI,CAAC,CAAC,CAAC;YAChD,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACxB,IAAA,mBAAW,EAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YAC/F,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,cAAc,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;CACD,CAAC","sourcesContent":["import { ALL_BG_RACES, CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { getEffectiveTribesForEntity } from '../../../utils';\r\nimport { StartOfCombatCard } from '../../card.interface';\r\nimport { selectMinions } from '../hero-power/wax-warband';\r\n\r\nexport const EclecticShrine: StartOfCombatCard = {\r\n\tstartOfCombatTiming: 'pre-combat',\r\n\tcardIds: [CardIds.EclecticShrine_BG32_MagicItem_280],\r\n\tstartOfCombat: (trinket: BoardTrinket, input: SoCInput) => {\r\n\t\tif (input.playerBoard.length > 0) {\r\n\t\t\tconst boardWithTribes = input.playerBoard.filter(\r\n\t\t\t\t(e) =>\r\n\t\t\t\t\t!!getEffectiveTribesForEntity(\r\n\t\t\t\t\t\te,\r\n\t\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t\t\tinput.gameState.allCards,\r\n\t\t\t\t\t).length,\r\n\t\t\t);\r\n\t\t\tconst boardWithoutAll = boardWithTribes.filter(\r\n\t\t\t\t(e) =>\r\n\t\t\t\t\t!getEffectiveTribesForEntity(\r\n\t\t\t\t\t\te,\r\n\t\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t\t\tinput.gameState.allCards,\r\n\t\t\t\t\t)?.includes(Race.ALL),\r\n\t\t\t);\r\n\t\t\tconst selectedMinions = selectMinions(boardWithoutAll, ALL_BG_RACES, input.gameState.allCards);\r\n\t\t\tconst allMinions = [\r\n\t\t\t\t...selectedMinions,\r\n\t\t\t\t...boardWithTribes.filter((e) =>\r\n\t\t\t\t\tgetEffectiveTribesForEntity(\r\n\t\t\t\t\t\te,\r\n\t\t\t\t\t\tinput.playerEntity,\r\n\t\t\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t\t\tinput.gameState.allCards,\r\n\t\t\t\t\t)?.includes(Race.ALL),\r\n\t\t\t\t),\r\n\t\t\t];\r\n\t\t\tconst stats = 2 * (trinket.scriptDataNum1 ?? 1);\r\n\t\t\tallMinions.forEach((e) => {\r\n\t\t\t\tmodifyStats(e, trinket, stats, stats, input.playerBoard, input.playerEntity, input.gameState);\r\n\t\t\t});\r\n\t\t\ttrinket.scriptDataNum1++;\r\n\t\t\treturn true;\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FaerieDragonScale = void 0;
|
|
4
|
+
const reference_data_1 = require("@firestone-hs/reference-data");
|
|
5
|
+
const divine_shield_1 = require("../../../keywords/divine-shield");
|
|
6
|
+
const utils_1 = require("../../../utils");
|
|
7
|
+
exports.FaerieDragonScale = {
|
|
8
|
+
cardIds: ["BG32_MagicItem_363"],
|
|
9
|
+
defaultScriptDataNum: (cardId) => 3,
|
|
10
|
+
onAnyMinionAttack: (trinket, input) => {
|
|
11
|
+
if (trinket.scriptDataNum1 > 0) {
|
|
12
|
+
if ((0, utils_1.hasCorrectTribe)(input.attacker, input.attackingHero, reference_data_1.Race.DRAGON, input.gameState.anomalies, input.gameState.allCards)) {
|
|
13
|
+
(0, divine_shield_1.updateDivineShield)(input.attacker, input.attackingBoard, input.attackingHero, input.defendingHero, true, input.gameState);
|
|
14
|
+
trinket.scriptDataNum1--;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=faerie-dragon-scale.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"faerie-dragon-scale.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/faerie-dragon-scale.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAE7D,mEAAqE;AAErE,0CAAiD;AAGpC,QAAA,iBAAiB,GAA4C;IACzE,OAAO,EAAE,sBAA8C;IACvD,oBAAoB,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IAC3C,iBAAiB,EAAE,CAClB,OAAqB,EACrB,KAAoB,EACuC,EAAE;QAC7D,IAAI,OAAO,CAAC,cAAc,GAAG,CAAC,EAAE;YAC/B,IACC,IAAA,uBAAe,EACd,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,aAAa,EACnB,qBAAI,CAAC,MAAM,EACX,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,EACA;gBACD,IAAA,kCAAkB,EACjB,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,aAAa,EACnB,IAAI,EACJ,KAAK,CAAC,SAAS,CACf,CAAC;gBACF,OAAO,CAAC,cAAc,EAAE,CAAC;aACzB;SACD;QACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { updateDivineShield } from '../../../keywords/divine-shield';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { DefaultScriptDataNumCard, OnAttackCard } from '../../card.interface';\r\n\r\nexport const FaerieDragonScale: OnAttackCard & DefaultScriptDataNumCard = {\r\n\tcardIds: [CardIds.FaerieDragonScale_BG32_MagicItem_363],\r\n\tdefaultScriptDataNum: (cardId: string) => 3,\r\n\tonAnyMinionAttack: (\r\n\t\ttrinket: BoardTrinket,\r\n\t\tinput: OnAttackInput,\r\n\t): { dmgDoneByAttacker: number; dmgDoneByDefender: number } => {\r\n\t\tif (trinket.scriptDataNum1 > 0) {\r\n\t\t\tif (\r\n\t\t\t\thasCorrectTribe(\r\n\t\t\t\t\tinput.attacker,\r\n\t\t\t\t\tinput.attackingHero,\r\n\t\t\t\t\tRace.DRAGON,\r\n\t\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t\tinput.gameState.allCards,\r\n\t\t\t\t)\r\n\t\t\t) {\r\n\t\t\t\tupdateDivineShield(\r\n\t\t\t\t\tinput.attacker,\r\n\t\t\t\t\tinput.attackingBoard,\r\n\t\t\t\t\tinput.attackingHero,\r\n\t\t\t\t\tinput.defendingHero,\r\n\t\t\t\t\ttrue,\r\n\t\t\t\t\tinput.gameState,\r\n\t\t\t\t);\r\n\t\t\t\ttrinket.scriptDataNum1--;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HeraldSticker = void 0;
|
|
4
|
+
const deathrattle_orchestration_1 = require("../../../simulation/deathrattle-orchestration");
|
|
5
|
+
const deathrattle_utils_1 = require("../../../simulation/deathrattle-utils");
|
|
6
|
+
exports.HeraldSticker = {
|
|
7
|
+
cardIds: ["BG32_MagicItem_306"],
|
|
8
|
+
startOfCombat: (trinket, input) => {
|
|
9
|
+
const candidates = (0, deathrattle_utils_1.getValidDeathrattles)(input.playerBoard, input.playerEntity, input.gameState).slice(0, 2);
|
|
10
|
+
for (const entity of candidates) {
|
|
11
|
+
input.gameState.spectator.registerPowerTarget(trinket, entity, input.playerBoard, input.playerEntity, input.opponentEntity);
|
|
12
|
+
const board = entity.friendly
|
|
13
|
+
? input.gameState.gameState.player.board
|
|
14
|
+
: input.gameState.gameState.opponent.board;
|
|
15
|
+
const indexFromRight = board.length - (board.indexOf(entity) + 1);
|
|
16
|
+
(0, deathrattle_orchestration_1.processDeathrattleForMinion)(entity, indexFromRight, [entity], entity.friendly ? input.gameState.gameState.player : input.gameState.gameState.opponent, entity.friendly ? input.gameState.gameState.opponent : input.gameState.gameState.player, input.gameState, false);
|
|
17
|
+
}
|
|
18
|
+
return true;
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=herald-sticker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"herald-sticker.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/herald-sticker.ts"],"names":[],"mappings":";;;AAEA,6FAA4F;AAC5F,6EAA6E;AAIhE,QAAA,aAAa,GAAsB;IAC/C,OAAO,EAAE,sBAA0C;IACnD,aAAa,EAAE,CAAC,OAAqB,EAAE,KAAe,EAAE,EAAE;QACzD,MAAM,UAAU,GAAG,IAAA,wCAAoB,EAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5G,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE;YAChC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAC5C,OAAO,EACP,MAAM,EACN,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,cAAc,CACpB,CAAC;YACF,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ;gBAC5B,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK;gBACxC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC5C,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAClE,IAAA,uDAA2B,EAC1B,MAAM,EACN,cAAc,EACd,CAAC,MAAM,CAAC,EACR,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,EACvF,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,EACvF,KAAK,CAAC,SAAS,EACf,KAAK,CACL,CAAC;SACF;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { processDeathrattleForMinion } from '../../../simulation/deathrattle-orchestration';\r\nimport { getValidDeathrattles } from '../../../simulation/deathrattle-utils';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { StartOfCombatCard } from '../../card.interface';\r\n\r\nexport const HeraldSticker: StartOfCombatCard = {\r\n\tcardIds: [CardIds.HeraldSticker_BG32_MagicItem_306],\r\n\tstartOfCombat: (trinket: BoardTrinket, input: SoCInput) => {\r\n\t\tconst candidates = getValidDeathrattles(input.playerBoard, input.playerEntity, input.gameState).slice(0, 2);\r\n\t\tfor (const entity of candidates) {\r\n\t\t\tinput.gameState.spectator.registerPowerTarget(\r\n\t\t\t\ttrinket,\r\n\t\t\t\tentity,\r\n\t\t\t\tinput.playerBoard,\r\n\t\t\t\tinput.playerEntity,\r\n\t\t\t\tinput.opponentEntity,\r\n\t\t\t);\r\n\t\t\tconst board = entity.friendly\r\n\t\t\t\t? input.gameState.gameState.player.board\r\n\t\t\t\t: input.gameState.gameState.opponent.board;\r\n\t\t\tconst indexFromRight = board.length - (board.indexOf(entity) + 1);\r\n\t\t\tprocessDeathrattleForMinion(\r\n\t\t\t\tentity,\r\n\t\t\t\tindexFromRight,\r\n\t\t\t\t[entity],\r\n\t\t\t\tentity.friendly ? input.gameState.gameState.player : input.gameState.gameState.opponent,\r\n\t\t\t\tentity.friendly ? input.gameState.gameState.opponent : input.gameState.gameState.player,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t\tfalse,\r\n\t\t\t);\r\n\t\t}\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HogwashBasin = void 0;
|
|
4
|
+
const blood_gems_1 = require("../../../simulation/blood-gems");
|
|
5
|
+
exports.HogwashBasin = {
|
|
6
|
+
cardIds: ["BG32_MagicItem_904"],
|
|
7
|
+
startOfCombat: (trinket, input) => {
|
|
8
|
+
for (const target of input.playerBoard) {
|
|
9
|
+
(0, blood_gems_1.playBloodGemsOn)(trinket, target, 4, input.playerBoard, input.playerEntity, input.gameState);
|
|
10
|
+
}
|
|
11
|
+
return { hasTriggered: true, shouldRecomputeCurrentAttacker: false };
|
|
12
|
+
},
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=hogwash-basin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hogwash-basin.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/hogwash-basin.ts"],"names":[],"mappings":";;;AAEA,+DAAiE;AAIpD,QAAA,YAAY,GAAsB;IAC9C,OAAO,EAAE,sBAAyC;IAClD,aAAa,EAAE,CAAC,OAAqB,EAAE,KAAe,EAAE,EAAE;QACzD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,WAAW,EAAE;YACvC,IAAA,4BAAe,EAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC5F;QACD,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,8BAA8B,EAAE,KAAK,EAAE,CAAC;IACtE,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { playBloodGemsOn } from '../../../simulation/blood-gems';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { StartOfCombatCard } from '../../card.interface';\r\n\r\nexport const HogwashBasin: StartOfCombatCard = {\r\n\tcardIds: [CardIds.HogwashBasin_BG32_MagicItem_904],\r\n\tstartOfCombat: (trinket: BoardTrinket, input: SoCInput) => {\r\n\t\tfor (const target of input.playerBoard) {\r\n\t\t\tplayBloodGemsOn(trinket, target, 4, input.playerBoard, input.playerEntity, input.gameState);\r\n\t\t}\r\n\t\treturn { hasTriggered: true, shouldRecomputeCurrentAttacker: false };\r\n\t},\r\n};\r\n"]}
|
|
@@ -10,8 +10,7 @@ exports.RivendarePortrait = {
|
|
|
10
10
|
input.playerBoard
|
|
11
11
|
.filter((e) => e.cardId === "BG25_354" || e.cardId === "BG25_354_G")
|
|
12
12
|
.forEach((e) => {
|
|
13
|
-
(0, stats_1.modifyStats)(e, 0, buffBonus * e.health, input.playerBoard, input.playerEntity, input.gameState);
|
|
14
|
-
input.gameState.spectator.registerPowerTarget(trinket, e, input.playerBoard, null, null);
|
|
13
|
+
(0, stats_1.modifyStats)(e, trinket, 0, buffBonus * e.health, input.playerBoard, input.playerEntity, input.gameState);
|
|
15
14
|
});
|
|
16
15
|
rivendareTrinkets.forEach((t) => (t.scriptDataNum1 = 99));
|
|
17
16
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rivendare-portrait.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/rivendare-portrait.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAE3C,QAAA,iBAAiB,GAAG;IAChC,aAAa,EAAE,CAAC,OAAqB,EAAE,KAAe,EAAE,EAAE;QAGzD,IAAI,OAAO,CAAC,cAAc,IAAI,EAAE,EAAE;YACjC,MAAM,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAC3D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,yBAAiD,CAChE,CAAC;YACF,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC;YAC3C,KAAK,CAAC,WAAW;iBACf,MAAM,CACN,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,MAAM,eAAoC,IAAI,CAAC,CAAC,MAAM,iBAAsC,CAC/F;iBACA,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACd,IAAA,mBAAW,
|
|
1
|
+
{"version":3,"file":"rivendare-portrait.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/rivendare-portrait.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAE3C,QAAA,iBAAiB,GAAG;IAChC,aAAa,EAAE,CAAC,OAAqB,EAAE,KAAe,EAAE,EAAE;QAGzD,IAAI,OAAO,CAAC,cAAc,IAAI,EAAE,EAAE;YACjC,MAAM,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAC3D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,yBAAiD,CAChE,CAAC;YACF,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC;YAC3C,KAAK,CAAC,WAAW;iBACf,MAAM,CACN,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,MAAM,eAAoC,IAAI,CAAC,CAAC,MAAM,iBAAsC,CAC/F;iBACA,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACd,IAAA,mBAAW,EACV,CAAC,EACD,OAAO,EACP,CAAC,EACD,SAAS,GAAG,CAAC,CAAC,MAAM,EACpB,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CACf,CAAC;YACH,CAAC,CAAC,CAAC;YACJ,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\n\r\nexport const RivendarePortrait = {\r\n\tstartOfCombat: (trinket: BoardTrinket, input: SoCInput) => {\r\n\t\t// Portraits are a bit weird, as having 2 of them makes stats go x3 instead of x4,\r\n\t\t// so we process them all in one go\r\n\t\tif (trinket.scriptDataNum1 != 99) {\r\n\t\t\tconst rivendareTrinkets = input.playerEntity.trinkets.filter(\r\n\t\t\t\t(t) => t.cardId === CardIds.RivendarePortrait_BG30_MagicItem_310,\r\n\t\t\t);\r\n\t\t\tconst buffBonus = rivendareTrinkets.length;\r\n\t\t\tinput.playerBoard\r\n\t\t\t\t.filter(\r\n\t\t\t\t\t(e) =>\r\n\t\t\t\t\t\te.cardId === CardIds.TitusRivendare_BG25_354 || e.cardId === CardIds.TitusRivendare_BG25_354_G,\r\n\t\t\t\t)\r\n\t\t\t\t.forEach((e) => {\r\n\t\t\t\t\tmodifyStats(\r\n\t\t\t\t\t\te,\r\n\t\t\t\t\t\ttrinket,\r\n\t\t\t\t\t\t0,\r\n\t\t\t\t\t\tbuffBonus * e.health,\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.gameState,\r\n\t\t\t\t\t);\r\n\t\t\t\t});\r\n\t\t\trivendareTrinkets.forEach((t) => (t.scriptDataNum1 = 99));\r\n\t\t\treturn true;\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StharaSticker = void 0;
|
|
4
|
+
const reference_data_1 = require("@firestone-hs/reference-data");
|
|
5
|
+
const deathrattle_spawns_1 = require("../../../simulation/deathrattle-spawns");
|
|
6
|
+
const spawns_1 = require("../../../simulation/spawns");
|
|
7
|
+
const utils_1 = require("../../../utils");
|
|
8
|
+
exports.StharaSticker = {
|
|
9
|
+
cardIds: ["BG32_MagicItem_907"],
|
|
10
|
+
defaultScriptDataNum: (cardId) => 1,
|
|
11
|
+
onAfterDeath: (trinket, input) => {
|
|
12
|
+
if (input.board.length > 0 || trinket.scriptDataNum1 <= 0) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
const candidate = input.gameState.sharedState.deaths
|
|
16
|
+
.filter((entity) => entity.friendly === input.hero.friendly)
|
|
17
|
+
.filter((entity) => (0, utils_1.hasCorrectTribe)(entity, input.hero, reference_data_1.Race.DEMON, input.gameState.anomalies, input.gameState.allCards))[0];
|
|
18
|
+
if (!candidate) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const spawns = (0, deathrattle_spawns_1.spawnEntities)(candidate.cardId, 1, input.board, input.hero, input.otherBoard, input.otherHero, input.gameState, input.hero.friendly, false).map((e) => ({
|
|
22
|
+
...e,
|
|
23
|
+
attack: candidate.maxAttack,
|
|
24
|
+
health: candidate.maxHealth,
|
|
25
|
+
maxHealth: candidate.maxHealth,
|
|
26
|
+
maxAttack: candidate.maxAttack,
|
|
27
|
+
}));
|
|
28
|
+
(0, spawns_1.performEntitySpawns)(spawns, input.board, input.hero, input.hero, 0, input.otherBoard, input.otherHero, input.gameState);
|
|
29
|
+
trinket.scriptDataNum1--;
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=sthara-sticker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sthara-sticker.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/sthara-sticker.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,+EAAuE;AACvE,uDAAiE;AACjE,0CAAiD;AAGpC,QAAA,aAAa,GAAgD;IACzE,OAAO,EAAE,sBAA0C;IACnD,oBAAoB,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IAC3C,YAAY,EAAE,CAAC,OAAqB,EAAE,KAAwB,EAAE,EAAE;QACjE,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,cAAc,IAAI,CAAC,EAAE;YAC1D,OAAO;SACP;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM;aAClD,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC3D,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAClB,IAAA,uBAAe,EAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CACpG,CAAC,CAAC,CAAC,CAAC;QACN,IAAI,CAAC,SAAS,EAAE;YACf,OAAO;SACP;QACD,MAAM,MAAM,GAAG,IAAA,kCAAa,EAC3B,SAAS,CAAC,MAAM,EAChB,CAAC,EACD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,IAAI,CAAC,QAAQ,EACnB,KAAK,CACL,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACb,GAAG,CAAC;YACJ,MAAM,EAAE,SAAS,CAAC,SAAS;YAC3B,MAAM,EAAE,SAAS,CAAC,SAAS;YAC3B,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,SAAS,EAAE,SAAS,CAAC,SAAS;SAC9B,CAAC,CAAC,CAAC;QACJ,IAAA,4BAAmB,EAClB,MAAM,EACN,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,IAAI,EACV,CAAC,EACD,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,CACf,CAAC;QACF,OAAO,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { OnAfterDeathInput } from '../../../simulation/attack';\r\nimport { spawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { performEntitySpawns } from '../../../simulation/spawns';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { DefaultScriptDataNumCard, OnAfterDeathCard } from '../../card.interface';\r\n\r\nexport const StharaSticker: OnAfterDeathCard & DefaultScriptDataNumCard = {\r\n\tcardIds: [CardIds.StharaSticker_BG32_MagicItem_907],\r\n\tdefaultScriptDataNum: (cardId: string) => 1,\r\n\tonAfterDeath: (trinket: BoardTrinket, input: OnAfterDeathInput) => {\r\n\t\tif (input.board.length > 0 || trinket.scriptDataNum1 <= 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst candidate = input.gameState.sharedState.deaths\r\n\t\t\t.filter((entity) => entity.friendly === input.hero.friendly)\r\n\t\t\t.filter((entity) =>\r\n\t\t\t\thasCorrectTribe(entity, input.hero, Race.DEMON, input.gameState.anomalies, input.gameState.allCards),\r\n\t\t\t)[0];\r\n\t\tif (!candidate) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst spawns = spawnEntities(\r\n\t\t\tcandidate.cardId,\r\n\t\t\t1,\r\n\t\t\tinput.board,\r\n\t\t\tinput.hero,\r\n\t\t\tinput.otherBoard,\r\n\t\t\tinput.otherHero,\r\n\t\t\tinput.gameState,\r\n\t\t\tinput.hero.friendly,\r\n\t\t\tfalse,\r\n\t\t).map((e) => ({\r\n\t\t\t...e,\r\n\t\t\tattack: candidate.maxAttack,\r\n\t\t\thealth: candidate.maxHealth,\r\n\t\t\tmaxHealth: candidate.maxHealth,\r\n\t\t\tmaxAttack: candidate.maxAttack,\r\n\t\t}));\r\n\t\tperformEntitySpawns(\r\n\t\t\tspawns,\r\n\t\t\tinput.board,\r\n\t\t\tinput.hero,\r\n\t\t\tinput.hero,\r\n\t\t\t0,\r\n\t\t\tinput.otherBoard,\r\n\t\t\tinput.otherHero,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t\ttrinket.scriptDataNum1--;\r\n\t},\r\n};\r\n"]}
|
|
@@ -7,7 +7,7 @@ exports.TinyfinOnesie = {
|
|
|
7
7
|
var _a;
|
|
8
8
|
const highestHealthMinionInHand = (_a = input.playerEntity.hand) === null || _a === void 0 ? void 0 : _a.sort((a, b) => b.health - a.health)[0];
|
|
9
9
|
if (highestHealthMinionInHand && input.playerBoard.length > 0) {
|
|
10
|
-
(0, stats_1.modifyStats)(input.playerBoard[0], highestHealthMinionInHand.attack, highestHealthMinionInHand.health, input.playerBoard, input.playerEntity, input.gameState);
|
|
10
|
+
(0, stats_1.modifyStats)(input.playerBoard[0], trinket, highestHealthMinionInHand.attack, highestHealthMinionInHand.health, input.playerBoard, input.playerEntity, input.gameState);
|
|
11
11
|
return true;
|
|
12
12
|
}
|
|
13
13
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tinyfin-onesie.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/tinyfin-onesie.ts"],"names":[],"mappings":";;;AAEA,qDAAwD;AAE3C,QAAA,aAAa,GAAG;IAC5B,aAAa,EAAE,CAAC,OAAqB,EAAE,KAAe,EAAE,EAAE;;QACzD,MAAM,yBAAyB,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,IAAI,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAClG,IAAI,yBAAyB,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9D,IAAA,mBAAW,EACV,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EACpB,yBAAyB,CAAC,MAAM,EAChC,yBAAyB,CAAC,MAAM,EAChC,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CACf,CAAC;YACF,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\n\r\nexport const TinyfinOnesie = {\r\n\tstartOfCombat: (trinket: BoardTrinket, input: SoCInput) => {\r\n\t\tconst highestHealthMinionInHand = input.playerEntity.hand?.sort((a, b) => b.health - a.health)[0];\r\n\t\tif (highestHealthMinionInHand && input.playerBoard.length > 0) {\r\n\t\t\tmodifyStats(\r\n\t\t\t\tinput.playerBoard[0],\r\n\t\t\t\thighestHealthMinionInHand.attack,\r\n\t\t\t\thighestHealthMinionInHand.health,\r\n\t\t\t\tinput.playerBoard,\r\n\t\t\t\tinput.playerEntity,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t\treturn true;\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
1
|
+
{"version":3,"file":"tinyfin-onesie.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/tinyfin-onesie.ts"],"names":[],"mappings":";;;AAEA,qDAAwD;AAE3C,QAAA,aAAa,GAAG;IAC5B,aAAa,EAAE,CAAC,OAAqB,EAAE,KAAe,EAAE,EAAE;;QACzD,MAAM,yBAAyB,GAAG,MAAA,KAAK,CAAC,YAAY,CAAC,IAAI,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAClG,IAAI,yBAAyB,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9D,IAAA,mBAAW,EACV,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EACpB,OAAO,EACP,yBAAyB,CAAC,MAAM,EAChC,yBAAyB,CAAC,MAAM,EAChC,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,SAAS,CACf,CAAC;YACF,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { modifyStats } from '../../../simulation/stats';\r\n\r\nexport const TinyfinOnesie = {\r\n\tstartOfCombat: (trinket: BoardTrinket, input: SoCInput) => {\r\n\t\tconst highestHealthMinionInHand = input.playerEntity.hand?.sort((a, b) => b.health - a.health)[0];\r\n\t\tif (highestHealthMinionInHand && input.playerBoard.length > 0) {\r\n\t\t\tmodifyStats(\r\n\t\t\t\tinput.playerBoard[0],\r\n\t\t\t\ttrinket,\r\n\t\t\t\thighestHealthMinionInHand.attack,\r\n\t\t\t\thighestHealthMinionInHand.health,\r\n\t\t\t\tinput.playerBoard,\r\n\t\t\t\tinput.playerEntity,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t\treturn true;\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UnholySanctum = void 0;
|
|
4
|
+
const stats_1 = require("../../../simulation/stats");
|
|
5
|
+
exports.UnholySanctum = {
|
|
6
|
+
cardIds: ["BG32_MagicItem_862", "BG32_MagicItem_862t"],
|
|
7
|
+
onDeathrattleTriggered: (trinket, input) => {
|
|
8
|
+
const mult = trinket.cardId === "BG32_MagicItem_862" ? 1 : 2;
|
|
9
|
+
const target = input.boardWithDeadEntity[input.boardWithDeadEntity.length - 1];
|
|
10
|
+
if (!!target) {
|
|
11
|
+
(0, stats_1.modifyStats)(target, trinket, 3 * mult, 3 * mult, input.boardWithDeadEntity, input.boardWithDeadEntityHero, input.gameState);
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=unholy-sanctum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unholy-sanctum.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/unholy-sanctum.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,aAAa,GAA6B;IACtD,OAAO,EAAE,6CAAwG;IACjH,sBAAsB,EAAE,CAAC,OAAqB,EAAE,KAAgC,EAAE,EAAE;QACnF,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,yBAA6C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjF,MAAM,MAAM,GAAG,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,CAAC,MAAM,EAAE;YACb,IAAA,mBAAW,EACV,MAAM,EACN,OAAO,EACP,CAAC,GAAG,IAAI,EACR,CAAC,GAAG,IAAI,EACR,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,KAAK,CAAC,SAAS,CACf,CAAC;SACF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { DeathrattleTriggeredCard } from '../../card.interface';\r\n\r\nexport const UnholySanctum: DeathrattleTriggeredCard = {\r\n\tcardIds: [CardIds.UnholySanctum_BG32_MagicItem_862, CardIds.UnholySanctum_UnholySanctumToken_BG32_MagicItem_862t],\r\n\tonDeathrattleTriggered: (trinket: BoardTrinket, input: DeathrattleTriggeredInput) => {\r\n\t\tconst mult = trinket.cardId === CardIds.UnholySanctum_BG32_MagicItem_862 ? 1 : 2;\r\n\t\tconst target = input.boardWithDeadEntity[input.boardWithDeadEntity.length - 1];\r\n\t\tif (!!target) {\r\n\t\t\tmodifyStats(\r\n\t\t\t\ttarget,\r\n\t\t\t\ttrinket,\r\n\t\t\t\t3 * mult,\r\n\t\t\t\t3 * mult,\r\n\t\t\t\tinput.boardWithDeadEntity,\r\n\t\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.VashjirAnemone = void 0;
|
|
4
|
+
const utils_1 = require("../../../utils");
|
|
5
|
+
exports.VashjirAnemone = {
|
|
6
|
+
cardIds: ["BG32_MagicItem_932"],
|
|
7
|
+
startOfCombat: (trinket, input) => {
|
|
8
|
+
const buff = trinket.scriptDataNum1 || 1;
|
|
9
|
+
(0, utils_1.addStatsToBoard)(trinket, input.playerBoard, input.playerEntity, 0, buff, input.gameState);
|
|
10
|
+
return true;
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=vashjir-anemone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vashjir-anemone.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/vashjir-anemone.ts"],"names":[],"mappings":";;;AAGA,0CAAiD;AAGpC,QAAA,cAAc,GAAsB;IAChD,OAAO,EAAE,sBAA2C;IACpD,aAAa,EAAE,CAAC,OAAqB,EAAE,KAAe,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC;QACzC,IAAA,uBAAe,EAAC,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAC1F,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { StartOfCombatCard } from '../../card.interface';\r\n\r\nexport const VashjirAnemone: StartOfCombatCard = {\r\n\tcardIds: [CardIds.VashjirAnemone_BG32_MagicItem_932],\r\n\tstartOfCombat: (trinket: BoardTrinket, input: SoCInput) => {\r\n\t\tconst buff = trinket.scriptDataNum1 || 1;\r\n\t\taddStatsToBoard(trinket, input.playerBoard, input.playerEntity, 0, buff, input.gameState);\r\n\t\treturn true;\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.YulonSticker = void 0;
|
|
4
|
+
const utils_1 = require("../../../services/utils");
|
|
5
|
+
const golden_1 = require("../../../simulation/utils/golden");
|
|
6
|
+
const utils_2 = require("../../../utils");
|
|
7
|
+
exports.YulonSticker = {
|
|
8
|
+
cardIds: ["BG32_MagicItem_419"],
|
|
9
|
+
startOfCombat: (minion, input) => {
|
|
10
|
+
const candidateBoard = input.playerBoard.filter((e) => !(0, utils_2.isGolden)(e.cardId, input.gameState.allCards));
|
|
11
|
+
const randomBoard = (0, utils_1.shuffleArray)(candidateBoard);
|
|
12
|
+
const candidates = randomBoard.sort((a, b) => input.gameState.cardsData.getTavernLevel(a.cardId) - input.gameState.cardsData.getTavernLevel(b.cardId));
|
|
13
|
+
const target = candidates[0];
|
|
14
|
+
if (!!target) {
|
|
15
|
+
(0, golden_1.makeMinionGolden)(target, minion, input.playerBoard, input.playerEntity, input.opponentBoard, input.opponentEntity, input.gameState);
|
|
16
|
+
}
|
|
17
|
+
return { hasTriggered: true, shouldRecomputeCurrentAttacker: false };
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=yulon-sticker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yulon-sticker.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/yulon-sticker.ts"],"names":[],"mappings":";;;AAEA,mDAAuD;AAEvD,6DAAoE;AACpE,0CAA0C;AAG7B,QAAA,YAAY,GAAsB;IAC9C,OAAO,EAAE,sBAAyC;IAClD,aAAa,EAAE,CAAC,MAAmB,EAAE,KAAe,EAAE,EAAE;QACvD,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,gBAAQ,EAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEtG,MAAM,WAAW,GAAG,IAAA,oBAAY,EAAC,cAAc,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAClC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACR,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CACxG,CAAC;QACF,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,CAAC,MAAM,EAAE;YACb,IAAA,yBAAgB,EACf,MAAM,EACN,MAAM,EACN,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,SAAS,CACf,CAAC;SACF;QACD,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,8BAA8B,EAAE,KAAK,EAAE,CAAC;IACtE,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { shuffleArray } from '../../../services/utils';\r\nimport { SoCInput } from '../../../simulation/start-of-combat/start-of-combat-input';\r\nimport { makeMinionGolden } from '../../../simulation/utils/golden';\r\nimport { isGolden } from '../../../utils';\r\nimport { StartOfCombatCard } from '../../card.interface';\r\n\r\nexport const YulonSticker: StartOfCombatCard = {\r\n\tcardIds: [CardIds.YulonSticker_BG32_MagicItem_419],\r\n\tstartOfCombat: (minion: BoardEntity, input: SoCInput) => {\r\n\t\tconst candidateBoard = input.playerBoard.filter((e) => !isGolden(e.cardId, input.gameState.allCards));\r\n\t\t// Because we pick one at random from all the ones that have the lowest tier\r\n\t\tconst randomBoard = shuffleArray(candidateBoard);\r\n\t\tconst candidates = randomBoard.sort(\r\n\t\t\t(a, b) =>\r\n\t\t\t\tinput.gameState.cardsData.getTavernLevel(a.cardId) - input.gameState.cardsData.getTavernLevel(b.cardId),\r\n\t\t);\r\n\t\tconst target = candidates[0];\r\n\t\tif (!!target) {\r\n\t\t\tmakeMinionGolden(\r\n\t\t\t\ttarget,\r\n\t\t\t\tminion,\r\n\t\t\t\tinput.playerBoard,\r\n\t\t\t\tinput.playerEntity,\r\n\t\t\t\tinput.opponentBoard,\r\n\t\t\t\tinput.opponentEntity,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t}\r\n\t\treturn { hasTriggered: true, shouldRecomputeCurrentAttacker: false };\r\n\t},\r\n};\r\n"]}
|
|
@@ -9,7 +9,7 @@ const cards_in_hand_1 = require("../simulation/cards-in-hand");
|
|
|
9
9
|
const stats_1 = require("../simulation/stats");
|
|
10
10
|
const utils_2 = require("../utils");
|
|
11
11
|
const updateDivineShield = (entity, board, hero, otherHero, newValue, gameState) => {
|
|
12
|
-
var _a;
|
|
12
|
+
var _a, _b;
|
|
13
13
|
entity.hadDivineShield = newValue || entity.divineShield || entity.hadDivineShield;
|
|
14
14
|
entity.divineShield = newValue;
|
|
15
15
|
if (entity.divineShield) {
|
|
@@ -32,6 +32,19 @@ const updateDivineShield = (entity, board, hero, otherHero, newValue, gameState)
|
|
|
32
32
|
(0, exports.updateDivineShield)(entity, board, hero, otherHero, true, gameState);
|
|
33
33
|
adapter.scriptDataNum1--;
|
|
34
34
|
}
|
|
35
|
+
for (const trinket of (_a = hero.trinkets) !== null && _a !== void 0 ? _a : []) {
|
|
36
|
+
const onDivineShieldUpdatedImpl = _card_mappings_1.cardMappings[trinket.cardId];
|
|
37
|
+
if ((0, card_interface_1.hasOnDivineShieldUpdated)(onDivineShieldUpdatedImpl)) {
|
|
38
|
+
onDivineShieldUpdatedImpl.onDivineShieldUpdated(trinket, {
|
|
39
|
+
board: board,
|
|
40
|
+
hero: hero,
|
|
41
|
+
otherHero: otherHero,
|
|
42
|
+
gameState: gameState,
|
|
43
|
+
target: entity,
|
|
44
|
+
previousValue: entity.hadDivineShield,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
}
|
|
35
48
|
for (const boardEntity of board) {
|
|
36
49
|
const onDivineShieldUpdatedImpl = _card_mappings_1.cardMappings[boardEntity.cardId];
|
|
37
50
|
if ((0, card_interface_1.hasOnDivineShieldUpdated)(onDivineShieldUpdatedImpl)) {
|
|
@@ -47,19 +60,19 @@ const updateDivineShield = (entity, board, hero, otherHero, newValue, gameState)
|
|
|
47
60
|
}
|
|
48
61
|
for (let i = 0; i < board.length; i++) {
|
|
49
62
|
if (board[i].cardId === "ICC_858") {
|
|
50
|
-
(0, stats_1.modifyStats)(board[i], 2, 0, board, hero, gameState);
|
|
63
|
+
(0, stats_1.modifyStats)(board[i], board[i], 2, 0, board, hero, gameState);
|
|
51
64
|
gameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);
|
|
52
65
|
}
|
|
53
66
|
else if (board[i].cardId === "TB_BaconUps_047") {
|
|
54
|
-
(0, stats_1.modifyStats)(board[i], 4, 0, board, hero, gameState);
|
|
67
|
+
(0, stats_1.modifyStats)(board[i], board[i], 4, 0, board, hero, gameState);
|
|
55
68
|
gameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);
|
|
56
69
|
}
|
|
57
70
|
else if (board[i].cardId === "BGS_067") {
|
|
58
|
-
(0, stats_1.modifyStats)(board[i], 2, 2, board, hero, gameState);
|
|
71
|
+
(0, stats_1.modifyStats)(board[i], board[i], 2, 2, board, hero, gameState);
|
|
59
72
|
gameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);
|
|
60
73
|
}
|
|
61
74
|
else if (board[i].cardId === "TB_BaconUps_117") {
|
|
62
|
-
(0, stats_1.modifyStats)(board[i], 4, 4, board, hero, gameState);
|
|
75
|
+
(0, stats_1.modifyStats)(board[i], board[i], 4, 4, board, hero, gameState);
|
|
63
76
|
gameState.spectator.registerPowerTarget(board[i], board[i], board, hero, otherHero);
|
|
64
77
|
}
|
|
65
78
|
else if (board[i].entityId !== entity.entityId &&
|
|
@@ -75,7 +88,7 @@ const updateDivineShield = (entity, board, hero, otherHero, newValue, gameState)
|
|
|
75
88
|
}
|
|
76
89
|
else if (board[i].cardId === "BG24_008" ||
|
|
77
90
|
board[i].cardId === "BG24_008_G") {
|
|
78
|
-
if ((
|
|
91
|
+
if ((_b = board[i]) === null || _b === void 0 ? void 0 : _b.friendly) {
|
|
79
92
|
const buff = board[i].cardId === "BG24_008_G" ? 2 : 1;
|
|
80
93
|
(0, utils_2.grantRandomStats)(board[i], hero.hand.filter((e) => { var _a; return ((_a = gameState.allCards.getCard(e.cardId).type) === null || _a === void 0 ? void 0 : _a.toUpperCase()) === reference_data_1.CardType[reference_data_1.CardType.MINION]; }), hero, buff, buff, null, true, gameState);
|
|
81
94
|
}
|