@firestone-hs/reference-data 0.1.216 → 0.1.219
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/card-ids.js.map +1 -1
- package/dist/enums/board.js.map +1 -1
- package/dist/enums/dungeon-crawl-option-type.js.map +1 -1
- package/dist/enums/game-tags.js.map +1 -1
- package/dist/enums/race.js.map +1 -1
- package/dist/enums/scenario-id.js.map +1 -1
- package/dist/enums/village-visitor-type.js.map +1 -1
- package/dist/services/all-cards.service.js +24 -35
- package/dist/services/all-cards.service.js.map +1 -1
- package/dist/services/duels-utils.d.ts +2 -1
- package/dist/services/duels-utils.js +31 -78
- package/dist/services/duels-utils.js.map +1 -1
- package/dist/services/utils.js +12 -25
- package/dist/services/utils.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.duelsHeroConfigs = exports.
|
|
3
|
+
exports.allDuelsSignatureTreasures = exports.duelsHeroConfigs = exports.normalizeDuelsHeroCardIdForDeckCode = exports.normalizeDuelsHeroCardId = exports.allDuelsHeroes = exports.allDuelsTreasureCardIds = exports.duelsActivePool2UltraRare = exports.duelsActivePool2 = exports.duelsActivePool1 = exports.duelsPassivePool2UltraRare = exports.duelsPassivePool2 = exports.duelsPassivePool1 = void 0;
|
|
4
4
|
exports.duelsPassivePool1 = [
|
|
5
5
|
"PVPDR_SCH_Passive18",
|
|
6
6
|
"PVPDR_BAR_Passive17",
|
|
@@ -76,7 +76,6 @@ exports.duelsPassivePool2 = [
|
|
|
76
76
|
"PVPDR_AV_Passive17",
|
|
77
77
|
"PVPDR_AV_Passive20",
|
|
78
78
|
"LOOTA_824",
|
|
79
|
-
"PVPDR_SW_Passive_06",
|
|
80
79
|
"PVPDR_SW_Passive_04",
|
|
81
80
|
"PVPDR_AV_Passive19",
|
|
82
81
|
"ULDA_005",
|
|
@@ -90,7 +89,6 @@ exports.duelsPassivePool2 = [
|
|
|
90
89
|
"PVPDR_BAR_Passive11",
|
|
91
90
|
"PVPDR_BAR_Passive15",
|
|
92
91
|
"PVPDR_AV_Passive34",
|
|
93
|
-
"PVPDR_AV_Passive13",
|
|
94
92
|
];
|
|
95
93
|
exports.duelsPassivePool2UltraRare = [
|
|
96
94
|
"PVPDR_BAR_Passive28",
|
|
@@ -98,6 +96,7 @@ exports.duelsPassivePool2UltraRare = [
|
|
|
98
96
|
"LOOTA_828",
|
|
99
97
|
"PVPDR_SW_Passive_09",
|
|
100
98
|
"PVPDR_AV_Passive06",
|
|
99
|
+
"PVPDR_SW_Passive_06",
|
|
101
100
|
"PVPDR_SCH_Passive28",
|
|
102
101
|
"PVPDR_AV_Passive07",
|
|
103
102
|
"LOOTA_825",
|
|
@@ -105,6 +104,7 @@ exports.duelsPassivePool2UltraRare = [
|
|
|
105
104
|
"PVPDR_AV_Passive04",
|
|
106
105
|
"DALA_736",
|
|
107
106
|
"LOOTA_845",
|
|
107
|
+
"PVPDR_AV_Passive13",
|
|
108
108
|
];
|
|
109
109
|
exports.duelsActivePool1 = [
|
|
110
110
|
"PVPDR_SCH_Active44",
|
|
@@ -220,81 +220,33 @@ const normalizeDuelsHeroCardId = (heroCardId) => {
|
|
|
220
220
|
}
|
|
221
221
|
};
|
|
222
222
|
exports.normalizeDuelsHeroCardId = normalizeDuelsHeroCardId;
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
"PVPDR_DMF_Paladint1",
|
|
251
|
-
"PVPDR_SCH_Paladint1",
|
|
252
|
-
"PVPDR_YOP_WarPalT1",
|
|
253
|
-
"PVPDR_DMF_Priestt2",
|
|
254
|
-
"PVPDR_SCH_Priestt1",
|
|
255
|
-
"PVPDR_YOP_PriestT2",
|
|
256
|
-
"PVPDR_YOP_LocPriT1",
|
|
257
|
-
"PVPDR_DMF_Priestt1",
|
|
258
|
-
"PVPDR_YOP_PriestT1",
|
|
259
|
-
"PVPDR_SCH_Roguet1",
|
|
260
|
-
"PVPDR_DMF_Roguet2",
|
|
261
|
-
"PVPDR_SCH_Roguet2",
|
|
262
|
-
"PVPDR_YOP_RogueT1",
|
|
263
|
-
"PVPDR_DMF_Roguet1",
|
|
264
|
-
"PVPDR_YOP_ShamanT2",
|
|
265
|
-
"PVPDR_SCH_Shamant2",
|
|
266
|
-
"PVPDR_DMF_Shamant2",
|
|
267
|
-
"PVPDR_YOP_ShamanT1",
|
|
268
|
-
"PVPDR_DMF_Shamant1",
|
|
269
|
-
"PVPDR_SCH_Warlockt4",
|
|
270
|
-
"PVPDR_SCH_Warlockt5",
|
|
271
|
-
"PVPDR_DMF_Warlockt3",
|
|
272
|
-
"PVPDR_022",
|
|
273
|
-
"PVPDR_SCH_Warlockt2",
|
|
274
|
-
"PVPDR_SCH_Warriort1",
|
|
275
|
-
"PVPDR_DMF_Warriort2",
|
|
276
|
-
"PVPDR_DMF_Warriort1",
|
|
277
|
-
"PVPDR_YOP_WarriorT1",
|
|
278
|
-
"PVPDR_SCH_Warriort2",
|
|
279
|
-
"PVPDR_GUEST_Diablot3",
|
|
280
|
-
"PVPDR_GUEST_Diablot1",
|
|
281
|
-
"PVPDR_GUEST_Diablot2",
|
|
282
|
-
"PVPDR_GUEST_Diablot5",
|
|
283
|
-
"PVPDR_GUEST_Diablot4",
|
|
284
|
-
"PVPDR_GUEST_Diablot6s4",
|
|
285
|
-
"PVPDR_AV_Neutralt7",
|
|
286
|
-
"PVPDR_AV_Neutralt8",
|
|
287
|
-
"PVPDR_AV_Neutralt9",
|
|
288
|
-
"PVPDR_AV_Neutralt10",
|
|
289
|
-
"PVPDR_AV_Neutralt11",
|
|
290
|
-
"PVPDR_AV_Neutralt12",
|
|
291
|
-
"PVPDR_AV_Neutralt1",
|
|
292
|
-
"PVPDR_AV_Neutralt2",
|
|
293
|
-
"PVPDR_AV_Neutralt3",
|
|
294
|
-
"PVPDR_AV_Neutralt4",
|
|
295
|
-
"PVPDR_AV_Neutralt5",
|
|
296
|
-
"PVPDR_AV_Neutralt6",
|
|
297
|
-
];
|
|
223
|
+
const normalizeDuelsHeroCardIdForDeckCode = (heroCardId) => {
|
|
224
|
+
switch (heroCardId) {
|
|
225
|
+
case "PVPDR_Hero_Vanndarv1":
|
|
226
|
+
return "HERO_10";
|
|
227
|
+
case "PVPDR_Hero_Vanndarv2":
|
|
228
|
+
return "HERO_05";
|
|
229
|
+
case "PVPDR_Hero_Vanndarv3":
|
|
230
|
+
return "HERO_04";
|
|
231
|
+
case "PVPDR_Hero_Vanndarv4":
|
|
232
|
+
return "HERO_09";
|
|
233
|
+
case "PVPDR_Hero_Vanndarv5":
|
|
234
|
+
return "HERO_03";
|
|
235
|
+
case "PVPDR_Hero_DrekTharv1":
|
|
236
|
+
return "HERO_06";
|
|
237
|
+
case "PVPDR_Hero_DrekTharv2":
|
|
238
|
+
return "HERO_08";
|
|
239
|
+
case "PVPDR_Hero_DrekTharv3":
|
|
240
|
+
return "HERO_02";
|
|
241
|
+
case "PVPDR_Hero_DrekTharv4":
|
|
242
|
+
return "HERO_07";
|
|
243
|
+
case "PVPDR_Hero_DrekTharv5":
|
|
244
|
+
return "HERO_01";
|
|
245
|
+
default:
|
|
246
|
+
return heroCardId;
|
|
247
|
+
}
|
|
248
|
+
};
|
|
249
|
+
exports.normalizeDuelsHeroCardIdForDeckCode = normalizeDuelsHeroCardIdForDeckCode;
|
|
298
250
|
exports.duelsHeroConfigs = [
|
|
299
251
|
{
|
|
300
252
|
hero: "PVPDR_Hero_Stelina",
|
|
@@ -547,4 +499,5 @@ exports.duelsHeroConfigs = [
|
|
|
547
499
|
],
|
|
548
500
|
},
|
|
549
501
|
];
|
|
502
|
+
exports.allDuelsSignatureTreasures = exports.duelsHeroConfigs.flatMap((info) => info.signatureTreasures);
|
|
550
503
|
//# sourceMappingURL=duels-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duels-utils.js","sourceRoot":"","sources":["../../src/services/duels-utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { CardIds } from '../card-ids';\r\n\r\nexport const duelsPassivePool1 = [\r\n\tCardIds.AllShallServeTavernBrawl,\r\n\tCardIds.ArcaneFluxTavernBrawl,\r\n\tCardIds.ArcaniteCrystalTavernBrawl,\r\n\tCardIds.ArcticArmorTavernBrawl,\r\n\tCardIds.BeckoningBicornTavernBrawl,\r\n\tCardIds.BitterColdTavernBrawl,\r\n\tCardIds.BookOfWonders,\r\n\tCardIds.CannibalismTavernBrawl,\r\n\tCardIds.CoilCastingTavernBrawl,\r\n\tCardIds.CookiesLadleTavernBrawl,\r\n\t// CardIds.ConduitOfTheStormsTavernBrawl,\r\n\tCardIds.CrystalGemTavernBrawl,\r\n\tCardIds.DivineIlluminationTavernBrawl,\r\n\tCardIds.DragonbloodTavernBrawl,\r\n\tCardIds.DragonAffinityTavernBrawl,\r\n\tCardIds.EdgeOfDredgeTavernBrawl,\r\n\t// CardIds.EverChangingElixirTavernBrawl,\r\n\tCardIds.FirekeepersIdolTavernBrawl,\r\n\t// CardIds.FireshaperTavernBrawl,\r\n\tCardIds.ForgottenDepthsTavernBrawl,\r\n\tCardIds.FreezeSolidTavernBrawl,\r\n\tCardIds.FromTheSwampTavernBrawl,\r\n\tCardIds.GrommashsArmguardsTavernBrawl,\r\n\tCardIds.HoldTheLineTavernBrawl,\r\n\tCardIds.InspiringPresenceTavernBrawl,\r\n\tCardIds.InvigoratingLightTavernBrawl,\r\n\tCardIds.KindlingFlameTavernBrawl,\r\n\tCardIds.MendingPoolsTavernBrawl,\r\n\tCardIds.MysteriousTomeTavernBrawl,\r\n\tCardIds.NaturalForceTavernBrawl,\r\n\tCardIds.OpenTheDoorwaysTavernBrawl,\r\n\tCardIds.OptimizedPolarityTavernBrawl,\r\n\tCardIds.PillageTheFallenTavernBrawl,\r\n\tCardIds.PlaguebringerTavernBrawl,\r\n\tCardIds.PotionOfSparkingTavernBrawl,\r\n\tCardIds.RecyclingTavernBrawl,\r\n\t// CardIds.RhoninsScryingOrbTavernBrawl,\r\n\tCardIds.RighteousReservesTavernBrawl,\r\n\tCardIds.RingOfPhaseshiftingTavernBrawl,\r\n\tCardIds.RobeOfTheApprenticeTavernBrawl,\r\n\tCardIds.RobesOfShrinkingTavernBrawl,\r\n\tCardIds.RocketBackpacksTavernBrawl,\r\n\t// CardIds.ScatteredCaltropsTavernBrawl,\r\n\tCardIds.SmallBackpacksTavernBrawl,\r\n\t// CardIds.SmallPouchesTavernBrawl,\r\n\tCardIds.StaffOfPainTavernBrawl,\r\n\tCardIds.StakingAClaimTavernBrawl,\r\n\tCardIds.StarvingTavernBrawl,\r\n\tCardIds.StickyFingersTavernBrawl,\r\n\tCardIds.TheFloorIsLavaTavernBrawl,\r\n\tCardIds.UnholyGiftTavernBrawl,\r\n\tCardIds.UnlockedPotential,\r\n\tCardIds.WitherTheWeakTavernBrawl,\r\n];\r\n\r\nexport const duelsPassivePool2 = [\r\n\tCardIds.AllTogetherNowTavernBrawl,\r\n\tCardIds.AvengingArmamentsTavernBrawl,\r\n\tCardIds.BattleStanceTavernBrawl,\r\n\t// CardIds.Caltrops,\r\n\tCardIds.BronzeSignetTavernBrawl,\r\n\tCardIds.CloakOfEmeraldDreamsTavernBrawl,\r\n\tCardIds.CorruptedFelstoneTavernBrawl,\r\n\tCardIds.DeathlyDeathTavernBrawl,\r\n\tCardIds.DoubleTime,\r\n\tCardIds.DraconicDreamTavernBrawl,\r\n\tCardIds.DragonboneRitualTavernBrawl,\r\n\tCardIds.EerieStoneTavernBrawl,\r\n\tCardIds.ElixirOfVigorTavernBrawl,\r\n\tCardIds.EmeraldGogglesTavernBrawl,\r\n\tCardIds.EnduranceTrainingTavernBrawl,\r\n\tCardIds.FlamesOfTheKirinTorTavernBrawl,\r\n\tCardIds.FlameWavesTavernBrawl,\r\n\tCardIds.GlacialDownpourTavernBrawl,\r\n\tCardIds.GreedyGainsTavernBrawl,\r\n\tCardIds.GuardianLightTavernBrawl,\r\n\tCardIds.HagathasEmbraceTavernBrawl,\r\n\tCardIds.HeavyArmorTavernBrawl,\r\n\tCardIds.IdolsOfEluneTavernBrawl,\r\n\tCardIds.ImpCredibleTrousersTavernBrawl,\r\n\tCardIds.IronRootsTavernBrawl,\r\n\tCardIds.KhadgarsScryingOrb,\r\n\tCardIds.LegendaryLootTavernBrawl,\r\n\tCardIds.MeekMasteryTavernBrawl,\r\n\tCardIds.MulchMadnessTavernBrawl,\r\n\tCardIds.MummyMagic,\r\n\tCardIds.OopsAllSpellsTavernBrawl,\r\n\tCardIds.OrbOfRevelationTavernBrawl,\r\n\tCardIds.PartyReplacementTavernBrawl,\r\n\tCardIds.RallyTheTroopsTavernBrawl,\r\n\tCardIds.RingOfBlackIceTavernBrawl,\r\n\tCardIds.RingOfRefreshmentTavernBrawl,\r\n\tCardIds.RunicHelmTavernBrawl,\r\n\tCardIds.SpecialDeliveryTavernBrawl,\r\n\tCardIds.SpreadingSaplingsTavernBrawl,\r\n\tCardIds.SunstridersCrownTavernBrawl,\r\n\tCardIds.UnstableMagicTavernBrawl,\r\n];\r\n\r\nexport const duelsPassivePool2UltraRare = [\r\n\tCardIds.BandOfBeesTavernBrawl,\r\n\tCardIds.BattleTotem2,\r\n\tCardIds.CapturedFlag,\r\n\tCardIds.DisksOfLegendTavernBrawl,\r\n\tCardIds.ExpeditedBurialTavernBrawl,\r\n\tCardIds.ManastormTavernBrawl,\r\n\tCardIds.MantleOfIgnitionTavernBrawl,\r\n\tCardIds.RobeOfTheMagi,\r\n\tCardIds.ScepterOfSummoning,\r\n\tCardIds.Shadowcasting101TavernBrawl,\r\n\tCardIds.Stargazing,\r\n\tCardIds.TotemOfTheDead2,\r\n];\r\n\r\nexport const duelsActivePool1 = [\r\n\tCardIds.AmalgamateTavernBrawl,\r\n\tCardIds.AstralPortalTavernBrawl,\r\n\tCardIds.BeastlyBeautyTavernBrawl,\r\n\tCardIds.BubbaTavernBrawl,\r\n\tCardIds.ButchTavernBrawl,\r\n\tCardIds.BladeOfQueldelarTavernBrawl,\r\n\tCardIds.BloodMoonTavernBrawl,\r\n\tCardIds.ClockworkAssistantTavernBrawl,\r\n\tCardIds.CoinPouchTavernBrawl,\r\n\tCardIds.CreepyCurioTavernBrawl,\r\n\tCardIds.CrustyTheCrustaceanTavernBrawl,\r\n\tCardIds.Queldelar_HiltOfQueldelar,\r\n\tCardIds.Deathcharger,\r\n\tCardIds.Enrage,\r\n\tCardIds.GentlemansTopHat,\r\n\tCardIds.GoldenKobold,\r\n\tCardIds.GreedyPickaxeTavernBrawl,\r\n\tCardIds.HolyBookTavernBrawl,\r\n\tCardIds.HuntersInsightTavernBrawl,\r\n\tCardIds.JawsTavernBrawl,\r\n\tCardIds.LoyalHenchmanTavernBrawl,\r\n\tCardIds.LoyalSidekickTavernBrawl,\r\n\tCardIds.LoomingPresence1,\r\n\tCardIds.MageArmorTavernBrawl,\r\n\tCardIds.MaskOfMimicryTavernBrawl,\r\n\tCardIds.MindpocalypseTavernBrawl,\r\n\tCardIds.MurlocHolmesTavernBrawl,\r\n\tCardIds.MutatingInjection1,\r\n\tCardIds.NecroticPoisonTavernBrawl,\r\n\tCardIds.OldMilitiaHornTavernBrawl,\r\n\tCardIds.PartyPortalTavernBrawl2,\r\n\tCardIds.PrincessTavernBrawl,\r\n\tCardIds.PureColdTavernBrawl,\r\n\tCardIds.PuzzleBoxTavernBrawl,\r\n\tCardIds.RoyalGift,\r\n\tCardIds.SowTheSeedsTavernBrawl,\r\n\tCardIds.SpyglassTavernBrawl,\r\n\tCardIds.SuperchargeTavernBrawl,\r\n\tCardIds.SurlyMobTavernBrawl,\r\n\tCardIds.TheExorcisorTavernBrawl,\r\n\tCardIds.VampiricFangsToken,\r\n\tCardIds.WorshipperHeroic,\r\n];\r\n\r\nexport const duelsActivePool2 = [\r\n\tCardIds.ArchmageStaffTavernBrawl,\r\n\tCardIds.BagOfCoinsTavernBrawl,\r\n\tCardIds.BookOfTheDeadTavernBrawl,\r\n\tCardIds.GrimmerPatron1,\r\n\tCardIds.HyperblasterTavernBrawl,\r\n\tCardIds.AncientReflectionsTavernBrawl,\r\n\tCardIds.BagOfStuffingTavernBrawl,\r\n\tCardIds.Questionquestionquestion_BlackSoulstoneTavernBrawl,\r\n\tCardIds.BladeOfTheBurningSun,\r\n\tCardIds.GnomishArmyKnife1,\r\n\tCardIds.BananaSplitTavernBrawl,\r\n\tCardIds.CanopicJarsTavernBrawl,\r\n\tCardIds.PhaorisBlade1,\r\n\tCardIds.StaffOfScales1,\r\n\tCardIds.WandOfDisintegrationTavernBrawl,\r\n];\r\n\r\nexport const duelsActivePool2UltraRare = [\r\n\tCardIds.ChaosTheoryTavernBrawl,\r\n\tCardIds.OverpoweredTavernBrawl,\r\n\tCardIds.DreamgroveRing,\r\n\tCardIds.EmbersOfRagnarosTavernBrawl,\r\n\tCardIds.WaxRager1,\r\n\tCardIds.WishTavernBrawl,\r\n];\r\n\r\nexport const allDuelsTreasureCardIds = [\r\n\t...duelsPassivePool1,\r\n\t...duelsPassivePool2,\r\n\t...duelsPassivePool2UltraRare,\r\n\t...duelsActivePool1,\r\n\t...duelsActivePool2,\r\n\t...duelsActivePool2UltraRare,\r\n];\r\n\r\nexport const allDuelsHeroes = [\r\n\tCardIds.MindrenderIlluciaTavernBrawl,\r\n\tCardIds.RattlegoreTavernBrawl,\r\n\tCardIds.TuralyonTheTenuredTavernBrawl,\r\n\tCardIds.StarStudentStelinaTavernBrawl,\r\n\tCardIds.ProfessorSlateTavernBrawl,\r\n\tCardIds.ForestWardenOmuTavernBrawl,\r\n\tCardIds.MozakiMasterDuelistTavernBrawl,\r\n\tCardIds.ArchwitchWillowTavernBrawl,\r\n\tCardIds.InstructorFireheartTavernBrawlToken,\r\n\tCardIds.InfiltratorLilianTavernBrawl,\r\n\tCardIds.VanndarStormpikeTavernBrawl,\r\n\tCardIds.DrektharTavernBrawl,\r\n\tCardIds.RenoJacksonTavernBrawl5,\r\n\tCardIds.SirFinleyTavernBrawl5,\r\n\tCardIds.EliseStarseekerTavernBrawl4,\r\n\tCardIds.BrannBronzebeardTavernBrawl5,\r\n];\r\n\r\nexport const normalizeDuelsHeroCardId = (heroCardId: string): string => {\r\n\tswitch (heroCardId) {\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl1:\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl2:\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl3:\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl4:\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl5:\r\n\t\t\treturn CardIds.VanndarStormpikeTavernBrawl;\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl1:\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl2:\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl3:\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl4:\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl5:\r\n\t\t\treturn CardIds.DrektharTavernBrawl;\r\n\t\tdefault:\r\n\t\t\treturn heroCardId;\r\n\t}\r\n};\r\n\r\nexport const allDuelsSignatureTreasures = [\r\n\tCardIds.BladeOfQuickeningTavernBrawlToken,\r\n\tCardIds.BindingChainsTavernBrawlToken,\r\n\tCardIds.GiftOfTheLegionTavernBrawl,\r\n\tCardIds.MoargOutcastTavernBrawlToken,\r\n\tCardIds.SummoningRitualTavernBrawlToken,\r\n\tCardIds.AwakenedAncientTavernBrawl,\r\n\tCardIds.HerdingHornTavernBrawlToken,\r\n\tCardIds.MarvelousMyceliumTavernBrawlToken,\r\n\tCardIds.MoonbeastTavernBrawlToken,\r\n\tCardIds.WardensInsightTavernBrawlToken,\r\n\tCardIds.ZukaraTheWildTavernBrawl,\r\n\tCardIds.BonecrusherTavernBrawlToken,\r\n\tCardIds.CarrotOnAStickTavernBrawl,\r\n\tCardIds.DeathstriderTavernBrawl,\r\n\tCardIds.SlatesSyringeTavernBrawl,\r\n\tCardIds.StalkingPrideTavernBrawlToken,\r\n\tCardIds.TraktamerAelessaTavernBrawl,\r\n\tCardIds.BritzBlazebucketTavernBrawl,\r\n\tCardIds.ElementalLearningTavernBrawl,\r\n\tCardIds.EmbercasterTavernBrawl,\r\n\tCardIds.InfiniteArcaneTavernBrawlToken,\r\n\tCardIds.WandOfDuelingTavernBrawlToken,\r\n\tCardIds.YoggTasticTastiesTavernBrawl,\r\n\tCardIds.DrocomurchanicasTavernBrawlToken,\r\n\tCardIds.FavoredRacerTavernBrawl,\r\n\tCardIds.HumbleBlessingsTavernBrawl,\r\n\tCardIds.MenAtArmsTavernBrawlToken,\r\n\tCardIds.RoyalGreatswordTavernBrawlToken,\r\n\tCardIds.SuLeadfootTavernBrawl,\r\n\tCardIds.DropletOfInsanityTavernBrawlToken,\r\n\tCardIds.FracturedSpiritsTavernBrawlToken,\r\n\tCardIds.HeraldOfTheScaledOnesTavernBrawl,\r\n\tCardIds.JorasThuldoomTavernBrawl,\r\n\tCardIds.ScionOfTheDeepTavernBrawlToken,\r\n\tCardIds.ShadowWordVoidTavernBrawl,\r\n\tCardIds.AceInTheHoleTavernBrawlToken,\r\n\tCardIds.AcquiredAlliesTavernBrawlToken,\r\n\tCardIds.DeadlyWeapons101TavernBrawlToken,\r\n\tCardIds.GreenTortollanShellTavernBrawl,\r\n\tCardIds.NerubianPeddlerTavernBrawlToken,\r\n\tCardIds.ChaosStormTavernBrawl,\r\n\tCardIds.FluctuatingTotemTavernBrawlToken,\r\n\tCardIds.InvokeTheVoidTavernBrawlToken,\r\n\tCardIds.PayloadTotemSpecialistTavernBrawl,\r\n\tCardIds.TempestsFuryTavernBrawlToken,\r\n\tCardIds.Demonology101TavernBrawlToken,\r\n\tCardIds.DemonizerTavernBrawlToken,\r\n\tCardIds.GiftOfTheOldGodsTavernBrawlToken,\r\n\tCardIds.ImpishAidTavernBrawl,\r\n\tCardIds.KillmoxTheBanishedOneTavernBrawlToken,\r\n\tCardIds.AutoArmamentsTavernBrawlToken,\r\n\tCardIds.BrewsterTheBrutalTavernBrawlToken,\r\n\tCardIds.CollectorsIreTavernBrawlToken,\r\n\tCardIds.ScrapmetalDemolitionistTavernBrawl,\r\n\tCardIds.SpikedArmsTavernBrawlToken,\r\n\r\n\tCardIds.ApocalypseTavernBrawlToken,\r\n\tCardIds.ClawsOfTerrorTavernBrawlToken,\r\n\tCardIds.FireStompTavernBrawlToken,\r\n\tCardIds.HornsOfFlameTavernBrawlToken,\r\n\tCardIds.SoulstoneTrapTavernBrawlToken,\r\n\tCardIds.Questionquestionquestion_BlackSoulstoneTavernBrawl,\r\n\r\n\tCardIds.ValorousDisplayTavernBrawlToken,\r\n\tCardIds.ElementalChaosTavernBrawlToken,\r\n\tCardIds.PactOfTheLichTavernBrawlToken,\r\n\tCardIds.MagisterUnchainedTavernBrawlToken,\r\n\tCardIds.GiftOfTheHeartTavernBrawlToken,\r\n\tCardIds.ForTheHordeTavernBrawlToken,\r\n\tCardIds.ForgeInLightTavernBrawlToken,\r\n\tCardIds.SpymastersGambitTavernBrawlToken,\r\n\tCardIds.StalkersSuppliesTavernBrawlToken,\r\n\tCardIds.RendingAmbushTavernBrawlToken,\r\n\tCardIds.DevoutBlessingsTavernBrawlToken,\r\n\tCardIds.ForTheAllianceTavernBrawlToken,\r\n];\r\n\r\n// Maybe it's possible to extract this from the game files or memory somehow?\r\n// Since it doesn't change often it's ok to maintain it manually, at least for now\r\nexport const duelsHeroConfigs = [\r\n\t{\r\n\t\thero: CardIds.StarStudentStelinaTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.InfernalStrikeTavernBrawl,\r\n\t\t\tCardIds.OutlanderTavernBrawl,\r\n\t\t\tCardIds.IllidariStrikeTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.SummoningRitualTavernBrawlToken,\r\n\t\t\tCardIds.MoargOutcastTavernBrawlToken,\r\n\t\t\tCardIds.GiftOfTheLegionTavernBrawl,\r\n\t\t\tCardIds.BindingChainsTavernBrawlToken,\r\n\t\t\tCardIds.BladeOfQuickeningTavernBrawlToken,\r\n\t\t\tCardIds.TraktamerAelessaTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.ForestWardenOmuTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.NaturesGiftsTavernBrawl,\r\n\t\t\tCardIds.InvigoratingBloomTavernBrawl,\r\n\t\t\tCardIds.HarvestTimeTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.WardensInsightTavernBrawlToken,\r\n\t\t\tCardIds.MoonbeastTavernBrawlToken,\r\n\t\t\tCardIds.HerdingHornTavernBrawlToken,\r\n\t\t\tCardIds.MarvelousMyceliumTavernBrawlToken,\r\n\t\t\tCardIds.AwakenedAncientTavernBrawl,\r\n\t\t\tCardIds.ZukaraTheWildTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.ProfessorSlateTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.SurvivalTrainingTavernBrawl,\r\n\t\t\tCardIds.DeathGamesTavernBrawl,\r\n\t\t\tCardIds.SavageSecretsTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.SlatesSyringeTavernBrawl,\r\n\t\t\tCardIds.BonecrusherTavernBrawlToken,\r\n\t\t\tCardIds.StalkingPrideTavernBrawlToken,\r\n\t\t\tCardIds.DeathstriderTavernBrawl,\r\n\t\t\tCardIds.CarrotOnAStickTavernBrawl,\r\n\t\t\tCardIds.TraktamerAelessaTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.MozakiMasterDuelistTavernBrawl,\r\n\t\theroPowers: [CardIds.WyrmBoltTavernBrawl, CardIds.SecretStudiesTavernBrawl, CardIds.FrostShardsTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.WandOfDuelingTavernBrawlToken,\r\n\t\t\tCardIds.ElementalLearningTavernBrawl,\r\n\t\t\tCardIds.InfiniteArcaneTavernBrawlToken,\r\n\t\t\tCardIds.EmbercasterTavernBrawl,\r\n\t\t\tCardIds.YoggTasticTastiesTavernBrawl,\r\n\t\t\tCardIds.BritzBlazebucketTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.TuralyonTheTenuredTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.FromGoldenLightTavernBrawl,\r\n\t\t\tCardIds.BringOnRecruitsTavernBrawl,\r\n\t\t\tCardIds.ModestAspirationsTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.RoyalGreatswordTavernBrawlToken,\r\n\t\t\tCardIds.MenAtArmsTavernBrawlToken,\r\n\t\t\tCardIds.DrocomurchanicasTavernBrawlToken,\r\n\t\t\tCardIds.FavoredRacerTavernBrawl,\r\n\t\t\tCardIds.HumbleBlessingsTavernBrawl,\r\n\t\t\tCardIds.SuLeadfootTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.MindrenderIlluciaTavernBrawl,\r\n\t\theroPowers: [CardIds.ShadowMendTavernBrawl, CardIds.MindTetherTavernBrawl, CardIds.CallOfMadnessTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.FracturedSpiritsTavernBrawlToken,\r\n\t\t\tCardIds.DropletOfInsanityTavernBrawlToken,\r\n\t\t\tCardIds.ScionOfTheDeepTavernBrawlToken,\r\n\t\t\tCardIds.ShadowWordVoidTavernBrawl,\r\n\t\t\tCardIds.HeraldOfTheScaledOnesTavernBrawl,\r\n\t\t\tCardIds.JorasThuldoomTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.InfiltratorLilianTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.RoguishManeuversTavernBrawl,\r\n\t\t\tCardIds.ConnectionsTavernBrawl,\r\n\t\t\tCardIds.VileConcoctionTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.DeadlyWeapons101TavernBrawlToken,\r\n\t\t\tCardIds.NerubianPeddlerTavernBrawlToken,\r\n\t\t\tCardIds.AcquiredAlliesTavernBrawlToken,\r\n\t\t\tCardIds.AceInTheHoleTavernBrawlToken,\r\n\t\t\tCardIds.GreenTortollanShellTavernBrawl,\r\n\t\t\tCardIds.BritzBlazebucketTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.InstructorFireheartTavernBrawlToken,\r\n\t\theroPowers: [CardIds.StormcatcherTavernBrawl, CardIds.TotemicPowerTavernBrawl, CardIds.FavoredRacerTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.ChaosStormTavernBrawl,\r\n\t\t\tCardIds.FluctuatingTotemTavernBrawlToken,\r\n\t\t\tCardIds.InvokeTheVoidTavernBrawlToken,\r\n\t\t\tCardIds.PayloadTotemSpecialistTavernBrawl,\r\n\t\t\tCardIds.TempestsFuryTavernBrawlToken,\r\n\t\t\tCardIds.ZukaraTheWildTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.ArchwitchWillowTavernBrawl,\r\n\t\theroPowers: [CardIds.DarkArtsTavernBrawl, CardIds.DemonBloodTavernBrawl, CardIds.SoulcialStudiesTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.ImpishAidTavernBrawl,\r\n\t\t\tCardIds.GiftOfTheOldGodsTavernBrawlToken,\r\n\t\t\tCardIds.KillmoxTheBanishedOneTavernBrawlToken,\r\n\t\t\tCardIds.DemonizerTavernBrawlToken,\r\n\t\t\tCardIds.Demonology101TavernBrawlToken,\r\n\t\t\tCardIds.JorasThuldoomTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.DiabloTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.DoomChargeTavernBrawl,\r\n\t\t\tCardIds.PrimalPowerTavernBrawl,\r\n\t\t\tCardIds.DemonicTransformationTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.ClawsOfTerrorTavernBrawlToken,\r\n\t\t\tCardIds.FireStompTavernBrawlToken,\r\n\t\t\tCardIds.ApocalypseTavernBrawlToken,\r\n\t\t\tCardIds.SoulstoneTrapTavernBrawlToken,\r\n\t\t\tCardIds.HornsOfFlameTavernBrawlToken,\r\n\t\t\tCardIds.QuestionquestionquestionTavernBrawlToken,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.RattlegoreTavernBrawl,\r\n\t\theroPowers: [CardIds.NoGutsNoGloryTavernBrawl, CardIds.BruisingTavernBrawl, CardIds.MagneticMinesTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.AutoArmamentsTavernBrawlToken,\r\n\t\t\tCardIds.CollectorsIreTavernBrawlToken,\r\n\t\t\tCardIds.BrewsterTheBrutalTavernBrawlToken,\r\n\t\t\tCardIds.ScrapmetalDemolitionistTavernBrawl,\r\n\t\t\tCardIds.SpikedArmsTavernBrawlToken,\r\n\t\t\tCardIds.SuLeadfootTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.DrektharTavernBrawl,\r\n\t\talternateHeroes: [\r\n\t\t\tCardIds.Drekthar_DrektharTavernBrawl1,\r\n\t\t\tCardIds.Drekthar_DrektharTavernBrawl2,\r\n\t\t\tCardIds.Drekthar_DrektharTavernBrawl3,\r\n\t\t\tCardIds.Drekthar_DrektharTavernBrawl4,\r\n\t\t\tCardIds.Drekthar_DrektharTavernBrawl5,\r\n\t\t],\r\n\t\theroPowers: [\r\n\t\t\tCardIds.WarmastersFrenzyTavernBrawl,\r\n\t\t\tCardIds.HarnessTheElementsTavernBrawl,\r\n\t\t\tCardIds.WarCommandsTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.ValorousDisplayTavernBrawlToken,\r\n\t\t\tCardIds.ElementalChaosTavernBrawlToken,\r\n\t\t\tCardIds.PactOfTheLichTavernBrawlToken,\r\n\t\t\tCardIds.MagisterUnchainedTavernBrawlToken,\r\n\t\t\tCardIds.GiftOfTheHeartTavernBrawlToken,\r\n\t\t\tCardIds.ForTheHordeTavernBrawlToken,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.VanndarStormpikeTavernBrawl,\r\n\t\talternateHeroes: [\r\n\t\t\tCardIds.VanndarStormpike_VanndarStormpikeTavernBrawl1,\r\n\t\t\tCardIds.VanndarStormpike_VanndarStormpikeTavernBrawl2,\r\n\t\t\tCardIds.VanndarStormpike_VanndarStormpikeTavernBrawl3,\r\n\t\t\tCardIds.VanndarStormpike_VanndarStormpikeTavernBrawl4,\r\n\t\t\tCardIds.VanndarStormpike_VanndarStormpikeTavernBrawl5,\r\n\t\t],\r\n\t\theroPowers: [CardIds.PromoteTavernBrawl, CardIds.SendInTheScoutTavernBrawl, CardIds.BattleTacticsTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.ForgeInLightTavernBrawlToken,\r\n\t\t\tCardIds.SpymastersGambitTavernBrawlToken,\r\n\t\t\tCardIds.StalkersSuppliesTavernBrawlToken,\r\n\t\t\tCardIds.RendingAmbushTavernBrawlToken,\r\n\t\t\tCardIds.DevoutBlessingsTavernBrawlToken,\r\n\t\t\tCardIds.ForTheAllianceTavernBrawlToken,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.RenoJacksonTavernBrawl5,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.AmateurMageTavernBrawl,\r\n\t\t\tCardIds.RelicologistTavernBrawl,\r\n\t\t\tCardIds.ArcaneCraftinessTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.RenosLuckyHatTavernBrawl,\r\n\t\t\tCardIds.RenosCraftyLassoTavernBrawl,\r\n\t\t\tCardIds.RenosMagicalTorchTavernBrawl,\r\n\t\t\tCardIds.SrTombDiverTavernBrawl,\r\n\t\t\tCardIds.LeiFlamepawTavernBrawl,\r\n\t\t\tCardIds.TheGatlingWandTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.SirFinleyTavernBrawl5,\r\n\t\theroPowers: [CardIds.NewRecruitsTavernBrawl, CardIds.BubbleBlowerTavernBrawl, CardIds.PowerUpTavernBrawl2],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.FinleysPithHelmetTavernBrawl,\r\n\t\t\tCardIds.MaxwellMightySteedTavernBrawl,\r\n\t\t\tCardIds.TruesilverLanceTavernBrawl,\r\n\t\t\tCardIds.SrScoutTavernBrawl,\r\n\t\t\tCardIds.KarlTheLostTavernBrawl,\r\n\t\t\tCardIds.ScalesOfJusticeTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.EliseStarseekerTavernBrawl4,\r\n\t\theroPowers: [CardIds.ElisesMightTavernBrawl, CardIds.DruidicTeachingTavernBrawl, CardIds.StarseekerTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.StarseekersToolsTavernBrawl,\r\n\t\t\tCardIds.ElisesMacheteTavernBrawl,\r\n\t\t\tCardIds.AddarahTavernBrawl,\r\n\t\t\tCardIds.SrNavigatorTavernBrawl,\r\n\t\t\tCardIds.AcademicResearchTavernBrawl,\r\n\t\t\tCardIds.StaffOfRenewalTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.BrannBronzebeardTavernBrawl5,\r\n\t\theroPowers: [CardIds.SpreadShotTavernBrawl, CardIds.WellEquippedTavernBrawl2, CardIds.DinoTrackingTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.OlFaithfulTavernBrawl,\r\n\t\t\tCardIds.BrannsSaddleTavernBrawl,\r\n\t\t\tCardIds.TitanForgedGrapnelTavernBrawl,\r\n\t\t\tCardIds.SrExcavatorTavernBrawl,\r\n\t\t\tCardIds.FloSlatebrandTavernBrawl,\r\n\t\t\tCardIds.BrannsEpicEggTavernBrawl,\r\n\t\t],\r\n\t},\r\n];\r\n"]}
|
|
1
|
+
{"version":3,"file":"duels-utils.js","sourceRoot":"","sources":["../../src/services/duels-utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { CardIds } from '../card-ids';\r\n\r\nexport const duelsPassivePool1 = [\r\n\tCardIds.AllShallServeTavernBrawl,\r\n\tCardIds.ArcaneFluxTavernBrawl,\r\n\tCardIds.ArcaniteCrystalTavernBrawl,\r\n\tCardIds.ArcticArmorTavernBrawl,\r\n\tCardIds.BeckoningBicornTavernBrawl,\r\n\tCardIds.BitterColdTavernBrawl,\r\n\tCardIds.BookOfWonders,\r\n\tCardIds.CannibalismTavernBrawl,\r\n\tCardIds.CoilCastingTavernBrawl,\r\n\tCardIds.CookiesLadleTavernBrawl,\r\n\t// CardIds.ConduitOfTheStormsTavernBrawl,\r\n\tCardIds.CrystalGemTavernBrawl,\r\n\tCardIds.DivineIlluminationTavernBrawl,\r\n\tCardIds.DragonbloodTavernBrawl,\r\n\tCardIds.DragonAffinityTavernBrawl,\r\n\tCardIds.EdgeOfDredgeTavernBrawl,\r\n\t// CardIds.EverChangingElixirTavernBrawl,\r\n\tCardIds.FirekeepersIdolTavernBrawl,\r\n\t// CardIds.FireshaperTavernBrawl,\r\n\tCardIds.ForgottenDepthsTavernBrawl,\r\n\tCardIds.FreezeSolidTavernBrawl,\r\n\tCardIds.FromTheSwampTavernBrawl,\r\n\tCardIds.GrommashsArmguardsTavernBrawl,\r\n\tCardIds.HoldTheLineTavernBrawl,\r\n\tCardIds.InspiringPresenceTavernBrawl,\r\n\tCardIds.InvigoratingLightTavernBrawl,\r\n\tCardIds.KindlingFlameTavernBrawl,\r\n\tCardIds.MendingPoolsTavernBrawl,\r\n\tCardIds.MysteriousTomeTavernBrawl,\r\n\tCardIds.NaturalForceTavernBrawl,\r\n\tCardIds.OpenTheDoorwaysTavernBrawl,\r\n\tCardIds.OptimizedPolarityTavernBrawl,\r\n\tCardIds.PillageTheFallenTavernBrawl,\r\n\tCardIds.PlaguebringerTavernBrawl,\r\n\tCardIds.PotionOfSparkingTavernBrawl,\r\n\tCardIds.RecyclingTavernBrawl,\r\n\t// CardIds.RhoninsScryingOrbTavernBrawl,\r\n\tCardIds.RighteousReservesTavernBrawl,\r\n\tCardIds.RingOfPhaseshiftingTavernBrawl,\r\n\tCardIds.RobeOfTheApprenticeTavernBrawl,\r\n\tCardIds.RobesOfShrinkingTavernBrawl,\r\n\tCardIds.RocketBackpacksTavernBrawl,\r\n\t// CardIds.ScatteredCaltropsTavernBrawl,\r\n\tCardIds.SmallBackpacksTavernBrawl,\r\n\t// CardIds.SmallPouchesTavernBrawl,\r\n\tCardIds.StaffOfPainTavernBrawl,\r\n\tCardIds.StakingAClaimTavernBrawl,\r\n\tCardIds.StarvingTavernBrawl,\r\n\tCardIds.StickyFingersTavernBrawl,\r\n\tCardIds.TheFloorIsLavaTavernBrawl,\r\n\tCardIds.UnholyGiftTavernBrawl,\r\n\tCardIds.UnlockedPotential,\r\n\tCardIds.WitherTheWeakTavernBrawl,\r\n];\r\n\r\nexport const duelsPassivePool2 = [\r\n\tCardIds.AllTogetherNowTavernBrawl,\r\n\tCardIds.AvengingArmamentsTavernBrawl,\r\n\tCardIds.BattleStanceTavernBrawl,\r\n\t// CardIds.Caltrops,\r\n\tCardIds.BronzeSignetTavernBrawl,\r\n\tCardIds.CloakOfEmeraldDreamsTavernBrawl,\r\n\tCardIds.CorruptedFelstoneTavernBrawl,\r\n\tCardIds.DeathlyDeathTavernBrawl,\r\n\tCardIds.DoubleTime,\r\n\tCardIds.DraconicDreamTavernBrawl,\r\n\tCardIds.DragonboneRitualTavernBrawl,\r\n\tCardIds.EerieStoneTavernBrawl,\r\n\tCardIds.ElixirOfVigorTavernBrawl,\r\n\tCardIds.EmeraldGogglesTavernBrawl,\r\n\tCardIds.EnduranceTrainingTavernBrawl,\r\n\tCardIds.FlamesOfTheKirinTorTavernBrawl,\r\n\tCardIds.FlameWavesTavernBrawl,\r\n\tCardIds.GlacialDownpourTavernBrawl,\r\n\tCardIds.GreedyGainsTavernBrawl,\r\n\tCardIds.GuardianLightTavernBrawl,\r\n\tCardIds.HagathasEmbraceTavernBrawl,\r\n\tCardIds.HeavyArmorTavernBrawl,\r\n\tCardIds.IdolsOfEluneTavernBrawl,\r\n\tCardIds.ImpCredibleTrousersTavernBrawl,\r\n\tCardIds.IronRootsTavernBrawl,\r\n\tCardIds.KhadgarsScryingOrb,\r\n\tCardIds.MeekMasteryTavernBrawl,\r\n\tCardIds.MulchMadnessTavernBrawl,\r\n\tCardIds.MummyMagic,\r\n\tCardIds.OopsAllSpellsTavernBrawl,\r\n\tCardIds.OrbOfRevelationTavernBrawl,\r\n\tCardIds.PartyReplacementTavernBrawl,\r\n\tCardIds.RallyTheTroopsTavernBrawl,\r\n\tCardIds.RingOfBlackIceTavernBrawl,\r\n\tCardIds.RingOfRefreshmentTavernBrawl,\r\n\tCardIds.RunicHelmTavernBrawl,\r\n\tCardIds.SpecialDeliveryTavernBrawl,\r\n\tCardIds.SpreadingSaplingsTavernBrawl,\r\n\tCardIds.SunstridersCrownTavernBrawl,\r\n];\r\n\r\nexport const duelsPassivePool2UltraRare = [\r\n\tCardIds.BandOfBeesTavernBrawl,\r\n\tCardIds.BattleTotem2,\r\n\tCardIds.CapturedFlag,\r\n\tCardIds.DisksOfLegendTavernBrawl,\r\n\tCardIds.ExpeditedBurialTavernBrawl,\r\n\tCardIds.LegendaryLootTavernBrawl,\r\n\tCardIds.ManastormTavernBrawl,\r\n\tCardIds.MantleOfIgnitionTavernBrawl,\r\n\tCardIds.RobeOfTheMagi,\r\n\tCardIds.ScepterOfSummoning,\r\n\tCardIds.Shadowcasting101TavernBrawl,\r\n\tCardIds.Stargazing,\r\n\tCardIds.TotemOfTheDead2,\r\n\tCardIds.UnstableMagicTavernBrawl,\r\n];\r\n\r\nexport const duelsActivePool1 = [\r\n\tCardIds.AmalgamateTavernBrawl,\r\n\tCardIds.AstralPortalTavernBrawl,\r\n\tCardIds.BeastlyBeautyTavernBrawl,\r\n\tCardIds.BubbaTavernBrawl,\r\n\tCardIds.ButchTavernBrawl,\r\n\tCardIds.BladeOfQueldelarTavernBrawl,\r\n\tCardIds.BloodMoonTavernBrawl,\r\n\tCardIds.ClockworkAssistantTavernBrawl,\r\n\tCardIds.CoinPouchTavernBrawl,\r\n\tCardIds.CreepyCurioTavernBrawl,\r\n\tCardIds.CrustyTheCrustaceanTavernBrawl,\r\n\tCardIds.Queldelar_HiltOfQueldelar,\r\n\tCardIds.Deathcharger,\r\n\tCardIds.Enrage,\r\n\tCardIds.GentlemansTopHat,\r\n\tCardIds.GoldenKobold,\r\n\tCardIds.GreedyPickaxeTavernBrawl,\r\n\tCardIds.HolyBookTavernBrawl,\r\n\tCardIds.HuntersInsightTavernBrawl,\r\n\tCardIds.JawsTavernBrawl,\r\n\tCardIds.LoyalHenchmanTavernBrawl,\r\n\tCardIds.LoyalSidekickTavernBrawl,\r\n\tCardIds.LoomingPresence1,\r\n\tCardIds.MageArmorTavernBrawl,\r\n\tCardIds.MaskOfMimicryTavernBrawl,\r\n\tCardIds.MindpocalypseTavernBrawl,\r\n\tCardIds.MurlocHolmesTavernBrawl,\r\n\tCardIds.MutatingInjection1,\r\n\tCardIds.NecroticPoisonTavernBrawl,\r\n\tCardIds.OldMilitiaHornTavernBrawl,\r\n\tCardIds.PartyPortalTavernBrawl2,\r\n\tCardIds.PrincessTavernBrawl,\r\n\tCardIds.PureColdTavernBrawl,\r\n\tCardIds.PuzzleBoxTavernBrawl,\r\n\tCardIds.RoyalGift,\r\n\tCardIds.SowTheSeedsTavernBrawl,\r\n\tCardIds.SpyglassTavernBrawl,\r\n\tCardIds.SuperchargeTavernBrawl,\r\n\tCardIds.SurlyMobTavernBrawl,\r\n\tCardIds.TheExorcisorTavernBrawl,\r\n\tCardIds.VampiricFangsToken,\r\n\tCardIds.WorshipperHeroic,\r\n];\r\n\r\nexport const duelsActivePool2 = [\r\n\tCardIds.ArchmageStaffTavernBrawl,\r\n\tCardIds.BagOfCoinsTavernBrawl,\r\n\tCardIds.BookOfTheDeadTavernBrawl,\r\n\tCardIds.GrimmerPatron1,\r\n\tCardIds.HyperblasterTavernBrawl,\r\n\tCardIds.AncientReflectionsTavernBrawl,\r\n\tCardIds.BagOfStuffingTavernBrawl,\r\n\tCardIds.Questionquestionquestion_BlackSoulstoneTavernBrawl,\r\n\tCardIds.BladeOfTheBurningSun,\r\n\tCardIds.GnomishArmyKnife1,\r\n\tCardIds.BananaSplitTavernBrawl,\r\n\tCardIds.CanopicJarsTavernBrawl,\r\n\tCardIds.PhaorisBlade1,\r\n\tCardIds.StaffOfScales1,\r\n\tCardIds.WandOfDisintegrationTavernBrawl,\r\n];\r\n\r\nexport const duelsActivePool2UltraRare = [\r\n\tCardIds.ChaosTheoryTavernBrawl,\r\n\tCardIds.OverpoweredTavernBrawl,\r\n\tCardIds.DreamgroveRing,\r\n\tCardIds.EmbersOfRagnarosTavernBrawl,\r\n\tCardIds.WaxRager1,\r\n\tCardIds.WishTavernBrawl,\r\n];\r\n\r\nexport const allDuelsTreasureCardIds = [\r\n\t...duelsPassivePool1,\r\n\t...duelsPassivePool2,\r\n\t...duelsPassivePool2UltraRare,\r\n\t...duelsActivePool1,\r\n\t...duelsActivePool2,\r\n\t...duelsActivePool2UltraRare,\r\n];\r\n\r\nexport const allDuelsHeroes = [\r\n\tCardIds.MindrenderIlluciaTavernBrawl,\r\n\tCardIds.RattlegoreTavernBrawl,\r\n\tCardIds.TuralyonTheTenuredTavernBrawl,\r\n\tCardIds.StarStudentStelinaTavernBrawl,\r\n\tCardIds.ProfessorSlateTavernBrawl,\r\n\tCardIds.ForestWardenOmuTavernBrawl,\r\n\tCardIds.MozakiMasterDuelistTavernBrawl,\r\n\tCardIds.ArchwitchWillowTavernBrawl,\r\n\tCardIds.InstructorFireheartTavernBrawlToken,\r\n\tCardIds.InfiltratorLilianTavernBrawl,\r\n\tCardIds.VanndarStormpikeTavernBrawl,\r\n\tCardIds.DrektharTavernBrawl,\r\n\tCardIds.RenoJacksonTavernBrawl5,\r\n\tCardIds.SirFinleyTavernBrawl5,\r\n\tCardIds.EliseStarseekerTavernBrawl4,\r\n\tCardIds.BrannBronzebeardTavernBrawl5,\r\n];\r\n\r\nexport const normalizeDuelsHeroCardId = (heroCardId: string): string => {\r\n\tswitch (heroCardId) {\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl1:\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl2:\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl3:\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl4:\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl5:\r\n\t\t\treturn CardIds.VanndarStormpikeTavernBrawl;\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl1:\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl2:\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl3:\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl4:\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl5:\r\n\t\t\treturn CardIds.DrektharTavernBrawl;\r\n\t\tdefault:\r\n\t\t\treturn heroCardId;\r\n\t}\r\n};\r\n\r\nexport const normalizeDuelsHeroCardIdForDeckCode = (heroCardId: string): string => {\r\n\tswitch (heroCardId) {\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl1:\r\n\t\t\treturn CardIds.IllidanStormrageHeroSkins;\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl2:\r\n\t\t\treturn CardIds.RexxarHeroSkins;\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl3:\r\n\t\t\treturn CardIds.UtherLightbringerHeroSkins;\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl4:\r\n\t\t\treturn CardIds.AnduinWrynnHeroSkins;\r\n\t\tcase CardIds.VanndarStormpike_VanndarStormpikeTavernBrawl5:\r\n\t\t\treturn CardIds.ValeeraSanguinarHeroSkins;\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl1:\r\n\t\t\treturn CardIds.MalfurionStormrageHeroSkins;\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl2:\r\n\t\t\treturn CardIds.JainaProudmooreHeroSkins;\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl3:\r\n\t\t\treturn CardIds.ThrallHeroSkins;\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl4:\r\n\t\t\treturn CardIds.GuldanHeroSkins;\r\n\t\tcase CardIds.Drekthar_DrektharTavernBrawl5:\r\n\t\t\treturn CardIds.GarroshHellscreamHeroSkins;\r\n\t\tdefault:\r\n\t\t\treturn heroCardId;\r\n\t}\r\n};\r\n\r\n// Maybe it's possible to extract this from the game files or memory somehow?\r\n// Since it doesn't change often it's ok to maintain it manually, at least for now\r\nexport const duelsHeroConfigs = [\r\n\t{\r\n\t\thero: CardIds.StarStudentStelinaTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.InfernalStrikeTavernBrawl,\r\n\t\t\tCardIds.OutlanderTavernBrawl,\r\n\t\t\tCardIds.IllidariStrikeTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.SummoningRitualTavernBrawlToken,\r\n\t\t\tCardIds.MoargOutcastTavernBrawlToken,\r\n\t\t\tCardIds.GiftOfTheLegionTavernBrawl,\r\n\t\t\tCardIds.BindingChainsTavernBrawlToken,\r\n\t\t\tCardIds.BladeOfQuickeningTavernBrawlToken,\r\n\t\t\tCardIds.TraktamerAelessaTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.ForestWardenOmuTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.NaturesGiftsTavernBrawl,\r\n\t\t\tCardIds.InvigoratingBloomTavernBrawl,\r\n\t\t\tCardIds.HarvestTimeTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.WardensInsightTavernBrawlToken,\r\n\t\t\tCardIds.MoonbeastTavernBrawlToken,\r\n\t\t\tCardIds.HerdingHornTavernBrawlToken,\r\n\t\t\tCardIds.MarvelousMyceliumTavernBrawlToken,\r\n\t\t\tCardIds.AwakenedAncientTavernBrawl,\r\n\t\t\tCardIds.ZukaraTheWildTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.ProfessorSlateTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.SurvivalTrainingTavernBrawl,\r\n\t\t\tCardIds.DeathGamesTavernBrawl,\r\n\t\t\tCardIds.SavageSecretsTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.SlatesSyringeTavernBrawl,\r\n\t\t\tCardIds.BonecrusherTavernBrawlToken,\r\n\t\t\tCardIds.StalkingPrideTavernBrawlToken,\r\n\t\t\tCardIds.DeathstriderTavernBrawl,\r\n\t\t\tCardIds.CarrotOnAStickTavernBrawl,\r\n\t\t\tCardIds.TraktamerAelessaTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.MozakiMasterDuelistTavernBrawl,\r\n\t\theroPowers: [CardIds.WyrmBoltTavernBrawl, CardIds.SecretStudiesTavernBrawl, CardIds.FrostShardsTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.WandOfDuelingTavernBrawlToken,\r\n\t\t\tCardIds.ElementalLearningTavernBrawl,\r\n\t\t\tCardIds.InfiniteArcaneTavernBrawlToken,\r\n\t\t\tCardIds.EmbercasterTavernBrawl,\r\n\t\t\tCardIds.YoggTasticTastiesTavernBrawl,\r\n\t\t\tCardIds.BritzBlazebucketTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.TuralyonTheTenuredTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.FromGoldenLightTavernBrawl,\r\n\t\t\tCardIds.BringOnRecruitsTavernBrawl,\r\n\t\t\tCardIds.ModestAspirationsTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.RoyalGreatswordTavernBrawlToken,\r\n\t\t\tCardIds.MenAtArmsTavernBrawlToken,\r\n\t\t\tCardIds.DrocomurchanicasTavernBrawlToken,\r\n\t\t\tCardIds.FavoredRacerTavernBrawl,\r\n\t\t\tCardIds.HumbleBlessingsTavernBrawl,\r\n\t\t\tCardIds.SuLeadfootTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.MindrenderIlluciaTavernBrawl,\r\n\t\theroPowers: [CardIds.ShadowMendTavernBrawl, CardIds.MindTetherTavernBrawl, CardIds.CallOfMadnessTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.FracturedSpiritsTavernBrawlToken,\r\n\t\t\tCardIds.DropletOfInsanityTavernBrawlToken,\r\n\t\t\tCardIds.ScionOfTheDeepTavernBrawlToken,\r\n\t\t\tCardIds.ShadowWordVoidTavernBrawl,\r\n\t\t\tCardIds.HeraldOfTheScaledOnesTavernBrawl,\r\n\t\t\tCardIds.JorasThuldoomTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.InfiltratorLilianTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.RoguishManeuversTavernBrawl,\r\n\t\t\tCardIds.ConnectionsTavernBrawl,\r\n\t\t\tCardIds.VileConcoctionTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.DeadlyWeapons101TavernBrawlToken,\r\n\t\t\tCardIds.NerubianPeddlerTavernBrawlToken,\r\n\t\t\tCardIds.AcquiredAlliesTavernBrawlToken,\r\n\t\t\tCardIds.AceInTheHoleTavernBrawlToken,\r\n\t\t\tCardIds.GreenTortollanShellTavernBrawl,\r\n\t\t\tCardIds.BritzBlazebucketTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.InstructorFireheartTavernBrawlToken,\r\n\t\theroPowers: [CardIds.StormcatcherTavernBrawl, CardIds.TotemicPowerTavernBrawl, CardIds.FavoredRacerTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.ChaosStormTavernBrawl,\r\n\t\t\tCardIds.FluctuatingTotemTavernBrawlToken,\r\n\t\t\tCardIds.InvokeTheVoidTavernBrawlToken,\r\n\t\t\tCardIds.PayloadTotemSpecialistTavernBrawl,\r\n\t\t\tCardIds.TempestsFuryTavernBrawlToken,\r\n\t\t\tCardIds.ZukaraTheWildTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.ArchwitchWillowTavernBrawl,\r\n\t\theroPowers: [CardIds.DarkArtsTavernBrawl, CardIds.DemonBloodTavernBrawl, CardIds.SoulcialStudiesTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.ImpishAidTavernBrawl,\r\n\t\t\tCardIds.GiftOfTheOldGodsTavernBrawlToken,\r\n\t\t\tCardIds.KillmoxTheBanishedOneTavernBrawlToken,\r\n\t\t\tCardIds.DemonizerTavernBrawlToken,\r\n\t\t\tCardIds.Demonology101TavernBrawlToken,\r\n\t\t\tCardIds.JorasThuldoomTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.DiabloTavernBrawl,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.DoomChargeTavernBrawl,\r\n\t\t\tCardIds.PrimalPowerTavernBrawl,\r\n\t\t\tCardIds.DemonicTransformationTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.ClawsOfTerrorTavernBrawlToken,\r\n\t\t\tCardIds.FireStompTavernBrawlToken,\r\n\t\t\tCardIds.ApocalypseTavernBrawlToken,\r\n\t\t\tCardIds.SoulstoneTrapTavernBrawlToken,\r\n\t\t\tCardIds.HornsOfFlameTavernBrawlToken,\r\n\t\t\tCardIds.QuestionquestionquestionTavernBrawlToken,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.RattlegoreTavernBrawl,\r\n\t\theroPowers: [CardIds.NoGutsNoGloryTavernBrawl, CardIds.BruisingTavernBrawl, CardIds.MagneticMinesTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.AutoArmamentsTavernBrawlToken,\r\n\t\t\tCardIds.CollectorsIreTavernBrawlToken,\r\n\t\t\tCardIds.BrewsterTheBrutalTavernBrawlToken,\r\n\t\t\tCardIds.ScrapmetalDemolitionistTavernBrawl,\r\n\t\t\tCardIds.SpikedArmsTavernBrawlToken,\r\n\t\t\tCardIds.SuLeadfootTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.DrektharTavernBrawl,\r\n\t\talternateHeroes: [\r\n\t\t\tCardIds.Drekthar_DrektharTavernBrawl1,\r\n\t\t\tCardIds.Drekthar_DrektharTavernBrawl2,\r\n\t\t\tCardIds.Drekthar_DrektharTavernBrawl3,\r\n\t\t\tCardIds.Drekthar_DrektharTavernBrawl4,\r\n\t\t\tCardIds.Drekthar_DrektharTavernBrawl5,\r\n\t\t],\r\n\t\theroPowers: [\r\n\t\t\tCardIds.WarmastersFrenzyTavernBrawl,\r\n\t\t\tCardIds.HarnessTheElementsTavernBrawl,\r\n\t\t\tCardIds.WarCommandsTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.ValorousDisplayTavernBrawlToken,\r\n\t\t\tCardIds.ElementalChaosTavernBrawlToken,\r\n\t\t\tCardIds.PactOfTheLichTavernBrawlToken,\r\n\t\t\tCardIds.MagisterUnchainedTavernBrawlToken,\r\n\t\t\tCardIds.GiftOfTheHeartTavernBrawlToken,\r\n\t\t\tCardIds.ForTheHordeTavernBrawlToken,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.VanndarStormpikeTavernBrawl,\r\n\t\talternateHeroes: [\r\n\t\t\tCardIds.VanndarStormpike_VanndarStormpikeTavernBrawl1,\r\n\t\t\tCardIds.VanndarStormpike_VanndarStormpikeTavernBrawl2,\r\n\t\t\tCardIds.VanndarStormpike_VanndarStormpikeTavernBrawl3,\r\n\t\t\tCardIds.VanndarStormpike_VanndarStormpikeTavernBrawl4,\r\n\t\t\tCardIds.VanndarStormpike_VanndarStormpikeTavernBrawl5,\r\n\t\t],\r\n\t\theroPowers: [CardIds.PromoteTavernBrawl, CardIds.SendInTheScoutTavernBrawl, CardIds.BattleTacticsTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.ForgeInLightTavernBrawlToken,\r\n\t\t\tCardIds.SpymastersGambitTavernBrawlToken,\r\n\t\t\tCardIds.StalkersSuppliesTavernBrawlToken,\r\n\t\t\tCardIds.RendingAmbushTavernBrawlToken,\r\n\t\t\tCardIds.DevoutBlessingsTavernBrawlToken,\r\n\t\t\tCardIds.ForTheAllianceTavernBrawlToken,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.RenoJacksonTavernBrawl5,\r\n\t\theroPowers: [\r\n\t\t\tCardIds.AmateurMageTavernBrawl,\r\n\t\t\tCardIds.RelicologistTavernBrawl,\r\n\t\t\tCardIds.ArcaneCraftinessTavernBrawl,\r\n\t\t],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.RenosLuckyHatTavernBrawl,\r\n\t\t\tCardIds.RenosCraftyLassoTavernBrawl,\r\n\t\t\tCardIds.RenosMagicalTorchTavernBrawl,\r\n\t\t\tCardIds.SrTombDiverTavernBrawl,\r\n\t\t\tCardIds.LeiFlamepawTavernBrawl,\r\n\t\t\tCardIds.TheGatlingWandTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.SirFinleyTavernBrawl5,\r\n\t\theroPowers: [CardIds.NewRecruitsTavernBrawl, CardIds.BubbleBlowerTavernBrawl, CardIds.PowerUpTavernBrawl2],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.FinleysPithHelmetTavernBrawl,\r\n\t\t\tCardIds.MaxwellMightySteedTavernBrawl,\r\n\t\t\tCardIds.TruesilverLanceTavernBrawl,\r\n\t\t\tCardIds.SrScoutTavernBrawl,\r\n\t\t\tCardIds.KarlTheLostTavernBrawl,\r\n\t\t\tCardIds.ScalesOfJusticeTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.EliseStarseekerTavernBrawl4,\r\n\t\theroPowers: [CardIds.ElisesMightTavernBrawl, CardIds.DruidicTeachingTavernBrawl, CardIds.StarseekerTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.StarseekersToolsTavernBrawl,\r\n\t\t\tCardIds.ElisesMacheteTavernBrawl,\r\n\t\t\tCardIds.AddarahTavernBrawl,\r\n\t\t\tCardIds.SrNavigatorTavernBrawl,\r\n\t\t\tCardIds.AcademicResearchTavernBrawl,\r\n\t\t\tCardIds.StaffOfRenewalTavernBrawl,\r\n\t\t],\r\n\t},\r\n\t{\r\n\t\thero: CardIds.BrannBronzebeardTavernBrawl5,\r\n\t\theroPowers: [CardIds.SpreadShotTavernBrawl, CardIds.WellEquippedTavernBrawl2, CardIds.DinoTrackingTavernBrawl],\r\n\t\tsignatureTreasures: [\r\n\t\t\tCardIds.OlFaithfulTavernBrawl,\r\n\t\t\tCardIds.BrannsSaddleTavernBrawl,\r\n\t\t\tCardIds.TitanForgedGrapnelTavernBrawl,\r\n\t\t\tCardIds.SrExcavatorTavernBrawl,\r\n\t\t\tCardIds.FloSlatebrandTavernBrawl,\r\n\t\t\tCardIds.BrannsEpicEggTavernBrawl,\r\n\t\t],\r\n\t},\r\n];\r\n\r\nexport const allDuelsSignatureTreasures = duelsHeroConfigs.flatMap((info) => info.signatureTreasures);\r\n"]}
|
package/dist/services/utils.js
CHANGED
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
4
|
};
|
|
@@ -23,26 +14,22 @@ function partitionArray(array, partitionSize) {
|
|
|
23
14
|
return result;
|
|
24
15
|
}
|
|
25
16
|
exports.partitionArray = partitionArray;
|
|
26
|
-
function http(request) {
|
|
27
|
-
return
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
resolve(body);
|
|
37
|
-
});
|
|
17
|
+
async function http(request) {
|
|
18
|
+
return new Promise((resolve) => {
|
|
19
|
+
cross_fetch_1.default(request)
|
|
20
|
+
.then((response) => {
|
|
21
|
+
return response.text();
|
|
22
|
+
}, (error) => {
|
|
23
|
+
console.warn('could not load cards', error, error.message);
|
|
24
|
+
})
|
|
25
|
+
.then((body) => {
|
|
26
|
+
resolve(body);
|
|
38
27
|
});
|
|
39
28
|
});
|
|
40
29
|
}
|
|
41
30
|
exports.http = http;
|
|
42
|
-
function sleep(ms) {
|
|
43
|
-
return
|
|
44
|
-
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
45
|
-
});
|
|
31
|
+
async function sleep(ms) {
|
|
32
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
46
33
|
}
|
|
47
34
|
exports.sleep = sleep;
|
|
48
35
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/services/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/services/utils.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAgC;AAEhC,SAAS,cAAc,CAAI,KAAmB,EAAE,aAAqB;IACpE,MAAM,WAAW,GAAQ,CAAC,GAAG,KAAK,CAAC,CAAC;IACpC,MAAM,MAAM,GAAU,EAAE,CAAC;IACzB,OAAO,WAAW,CAAC,MAAM,EAAE;QAC1B,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC;KAClD;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAyBQ,wCAAc;AAvBvB,KAAK,UAAU,IAAI,CAAC,OAAe;IAClC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,qBAAK,CAAC,OAAO,CAAC;aACZ,IAAI,CACJ,CAAC,QAAQ,EAAE,EAAE;YAEZ,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACT,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5D,CAAC,CACD;aACA,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YAEd,OAAO,CAAC,IAAI,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACJ,CAAC;AAMwB,oBAAI;AAJ7B,KAAK,UAAU,KAAK,CAAC,EAAE;IACtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC1D,CAAC;AAE8B,sBAAK","sourcesContent":["import fetch from 'cross-fetch';\r\n\r\nfunction partitionArray<T>(array: readonly T[], partitionSize: number): readonly T[][] {\r\n\tconst workingCopy: T[] = [...array];\r\n\tconst result: T[][] = [];\r\n\twhile (workingCopy.length) {\r\n\t\tresult.push(workingCopy.splice(0, partitionSize));\r\n\t}\r\n\treturn result;\r\n}\r\n\r\nasync function http(request: string): Promise<any> {\r\n\treturn new Promise((resolve) => {\r\n\t\tfetch(request)\r\n\t\t\t.then(\r\n\t\t\t\t(response) => {\r\n\t\t\t\t\t// console.log('received response, reading text body');\r\n\t\t\t\t\treturn response.text();\r\n\t\t\t\t},\r\n\t\t\t\t(error) => {\r\n\t\t\t\t\tconsole.warn('could not load cards', error, error.message);\r\n\t\t\t\t},\r\n\t\t\t)\r\n\t\t\t.then((body) => {\r\n\t\t\t\t// console.log('sending back body', body && body.length);\r\n\t\t\t\tresolve(body);\r\n\t\t\t});\r\n\t});\r\n}\r\n\r\nasync function sleep(ms) {\r\n\treturn new Promise((resolve) => setTimeout(resolve, ms));\r\n}\r\n\r\nexport { partitionArray, http, sleep };\r\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@firestone-hs/reference-data",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.219",
|
|
4
4
|
"description": "",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"lint": "eslint --color --fix --ext .ts .",
|
|
@@ -39,4 +39,4 @@
|
|
|
39
39
|
"ts-node": "~7.0.0",
|
|
40
40
|
"typescript": "^4.2.4"
|
|
41
41
|
}
|
|
42
|
-
}
|
|
42
|
+
}
|