@firestone-hs/simulate-bgs-battle 1.1.693 → 1.1.695
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bgs-battle-info.d.ts +1 -1
- package/dist/bgs-battle-info.js.map +1 -1
- package/dist/cards/card.interface.d.ts +5 -1
- package/dist/cards/card.interface.js +3 -1
- package/dist/cards/card.interface.js.map +1 -1
- package/dist/cards/cards-data.d.ts +1 -1
- package/dist/cards/cards-data.js +16 -1
- package/dist/cards/cards-data.js.map +1 -1
- package/dist/cards/impl/_card-mappings.js +4 -0
- package/dist/cards/impl/_card-mappings.js.map +1 -1
- package/dist/cards/impl/minion/apexis-guardian.js +8 -2
- package/dist/cards/impl/minion/apexis-guardian.js.map +1 -1
- package/dist/cards/impl/minion/blue-volumizer.js +3 -1
- package/dist/cards/impl/minion/blue-volumizer.js.map +1 -1
- package/dist/cards/impl/minion/dramaloc.d.ts +2 -2
- package/dist/cards/impl/minion/dramaloc.js +12 -7
- package/dist/cards/impl/minion/dramaloc.js.map +1 -1
- package/dist/cards/impl/minion/gleaming-trader.js +5 -3
- package/dist/cards/impl/minion/gleaming-trader.js.map +1 -1
- package/dist/cards/impl/minion/goldgrubber.js +1 -1
- package/dist/cards/impl/minion/goldgrubber.js.map +1 -1
- package/dist/cards/impl/minion/grease-bot.js +4 -2
- package/dist/cards/impl/minion/grease-bot.js.map +1 -1
- package/dist/cards/impl/minion/green-volumizer.js +3 -1
- package/dist/cards/impl/minion/green-volumizer.js.map +1 -1
- package/dist/cards/impl/minion/icesnarl-the-mighty.d.ts +2 -0
- package/dist/cards/impl/minion/icesnarl-the-mighty.js +15 -0
- package/dist/cards/impl/minion/icesnarl-the-mighty.js.map +1 -0
- package/dist/cards/impl/minion/mechagnome-interpreter.js +1 -1
- package/dist/cards/impl/minion/mechagnome-interpreter.js.map +1 -1
- package/dist/cards/impl/minion/metal-dispenser.js +1 -1
- package/dist/cards/impl/minion/metal-dispenser.js.map +1 -1
- package/dist/cards/impl/minion/polarizing-beatboxer.d.ts +2 -0
- package/dist/cards/impl/minion/polarizing-beatboxer.js +18 -0
- package/dist/cards/impl/minion/polarizing-beatboxer.js.map +1 -0
- package/dist/cards/impl/minion/red-volumizer.js +3 -1
- package/dist/cards/impl/minion/red-volumizer.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/scourfin.js +1 -1
- package/dist/cards/impl/minion/scourfin.js.map +1 -1
- package/dist/cards/impl/minion/silky-shimmermoth.js +1 -1
- package/dist/cards/impl/minion/silky-shimmermoth.js.map +1 -1
- package/dist/cards/impl/minion/stalwart-kodo.d.ts +2 -2
- package/dist/cards/impl/minion/stalwart-kodo.js +1 -1
- package/dist/cards/impl/minion/stalwart-kodo.js.map +1 -1
- package/dist/cards/impl/minion/stellar-freebooter.js +1 -1
- package/dist/cards/impl/minion/stellar-freebooter.js.map +1 -1
- package/dist/cards/impl/minion/timewarped-caretaker.js +1 -1
- package/dist/cards/impl/minion/timewarped-caretaker.js.map +1 -1
- package/dist/cards/impl/minion/timewarped-duskmaw.js +1 -1
- package/dist/cards/impl/minion/timewarped-duskmaw.js.map +1 -1
- package/dist/cards/impl/minion/timewarped-grease-bot.js +4 -2
- package/dist/cards/impl/minion/timewarped-grease-bot.js.map +1 -1
- package/dist/cards/impl/minion/timewarped-probius.d.ts +2 -2
- package/dist/cards/impl/minion/timewarped-probius.js +1 -1
- package/dist/cards/impl/minion/timewarped-probius.js.map +1 -1
- package/dist/cards/impl/minion/timewarped-wargear.d.ts +2 -2
- package/dist/cards/impl/minion/timewarped-wargear.js +1 -1
- package/dist/cards/impl/minion/timewarped-wargear.js.map +1 -1
- package/dist/cards/impl/minion/turquoise-skitterer.js +2 -2
- package/dist/cards/impl/minion/turquoise-skitterer.js.map +1 -1
- package/dist/cards/impl/minion/twilight-watcher.js +1 -1
- package/dist/cards/impl/minion/twilight-watcher.js.map +1 -1
- package/dist/cards/impl/trinket/divine-signet.js +1 -1
- package/dist/cards/impl/trinket/divine-signet.js.map +1 -1
- package/dist/debug-state.d.ts +2 -0
- package/dist/debug-state.js.map +1 -1
- package/dist/keywords/divine-shield.js +32 -28
- package/dist/keywords/divine-shield.js.map +1 -1
- package/dist/services/utils.js +3 -1
- package/dist/services/utils.js.map +1 -1
- package/dist/simulate-bgs-battle.js +6 -8
- package/dist/simulate-bgs-battle.js.map +1 -1
- package/dist/simulation/add-minion-to-board.d.ts +2 -2
- package/dist/simulation/add-minion-to-board.js +3 -12
- package/dist/simulation/add-minion-to-board.js.map +1 -1
- package/dist/simulation/attack.js.map +1 -1
- package/dist/simulation/deathrattle-effects.js +0 -8
- package/dist/simulation/deathrattle-effects.js.map +1 -1
- package/dist/simulation/magnetize.d.ts +3 -1
- package/dist/simulation/magnetize.js +22 -5
- package/dist/simulation/magnetize.js.map +1 -1
- package/dist/simulation/spawns.js +2 -1
- package/dist/simulation/spawns.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,7 +5,7 @@ exports.MechagnomeInterpreter = {
|
|
|
5
5
|
cardIds: ["BG31_177", "BG31_177_G"],
|
|
6
6
|
onBeforeMagnetize: (entity, input) => {
|
|
7
7
|
const mult = entity.cardId === "BG31_177_G" ? 2 : 1;
|
|
8
|
-
input.magnetizedCard.attack +=
|
|
8
|
+
input.magnetizedCard.attack += 3 * mult;
|
|
9
9
|
input.magnetizedCard.health += 1 * mult;
|
|
10
10
|
},
|
|
11
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mechagnome-interpreter.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/mechagnome-interpreter.ts"],"names":[],"mappings":";;;AAKa,QAAA,qBAAqB,GAA0B;IAC3D,OAAO,EAAE,0BAAkF;IAC3F,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAA6B,EAAE,EAAE;QACzE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA6C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,KAAK,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;QACxC,KAAK,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;IACzC,CAAC;CACD,CAAC","sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"mechagnome-interpreter.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/mechagnome-interpreter.ts"],"names":[],"mappings":";;;AAKa,QAAA,qBAAqB,GAA0B;IAC3D,OAAO,EAAE,0BAAkF;IAC3F,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAA6B,EAAE,EAAE;QACzE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA6C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,KAAK,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;QACxC,KAAK,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;IACzC,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { OnBeforeMagnetizeInput } from '../../../simulation/magnetize';\r\nimport { OnBeforeMagnetizeCard } from '../../card.interface';\r\n\r\nexport const MechagnomeInterpreter: OnBeforeMagnetizeCard = {\r\n\tcardIds: [CardIds.MechagnomeInterpreter_BG31_177, CardIds.MechagnomeInterpreter_BG31_177_G],\r\n\tonBeforeMagnetize: (entity: BoardEntity, input: OnBeforeMagnetizeInput) => {\r\n\t\tconst mult = entity.cardId === CardIds.MechagnomeInterpreter_BG31_177_G ? 2 : 1;\r\n\t\tinput.magnetizedCard.attack += 3 * mult;\r\n\t\tinput.magnetizedCard.health += 1 * mult;\r\n\t},\r\n};\r\n"]}
|
|
@@ -5,7 +5,7 @@ const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
|
|
|
5
5
|
const magnetize_1 = require("../../../simulation/magnetize");
|
|
6
6
|
exports.MetalDispenser = {
|
|
7
7
|
cardIds: ["BG34_176", "BG34_176_G"],
|
|
8
|
-
baseAvengeValue: (cardId) =>
|
|
8
|
+
baseAvengeValue: (cardId) => 4,
|
|
9
9
|
avenge: (minion, input) => {
|
|
10
10
|
const loops = minion.cardId === "BG34_176_G" ? 2 : 1;
|
|
11
11
|
for (let i = 0; i < loops; i++) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metal-dispenser.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/metal-dispenser.ts"],"names":[],"mappings":";;;AAGA,qEAAmE;AACnE,6DAAkE;AAGrD,QAAA,cAAc,GAAe;IACzC,OAAO,EAAE,0BAAoE;IAC7E,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,MAAmB,EAAE,KAAkB,EAAE,EAAE;QACnD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,iBAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,0BAA0B,CAClE,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,CAAC,CACD,CAAC;YACF,IAAA,6BAAiB,EAChB,CAAC,MAAM,CAAC,EACR,MAAM,EACN,CAAC,MAAM,CAAC,EACR,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,CACf,CAAC;YACF,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACnE;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { AvengeInput } from '../../../simulation/avenge';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { magnetizeToTarget } from '../../../simulation/magnetize';\r\nimport { AvengeCard } from '../../card.interface';\r\n\r\nexport const MetalDispenser: AvengeCard = {\r\n\tcardIds: [CardIds.MetalDispenser_BG34_176, CardIds.MetalDispenser_BG34_176_G],\r\n\tbaseAvengeValue: (cardId: string) =>
|
|
1
|
+
{"version":3,"file":"metal-dispenser.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/metal-dispenser.ts"],"names":[],"mappings":";;;AAGA,qEAAmE;AACnE,6DAAkE;AAGrD,QAAA,cAAc,GAAe;IACzC,OAAO,EAAE,0BAAoE;IAC7E,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,MAAmB,EAAE,KAAkB,EAAE,EAAE;QACnD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,iBAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,0BAA0B,CAClE,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,CAAC,CACD,CAAC;YACF,IAAA,6BAAiB,EAChB,CAAC,MAAM,CAAC,EACR,MAAM,EACN,CAAC,MAAM,CAAC,EACR,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,CACf,CAAC;YACF,IAAA,8BAAc,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACnE;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { AvengeInput } from '../../../simulation/avenge';\r\nimport { addCardsInHand } from '../../../simulation/cards-in-hand';\r\nimport { magnetizeToTarget } from '../../../simulation/magnetize';\r\nimport { AvengeCard } from '../../card.interface';\r\n\r\nexport const MetalDispenser: AvengeCard = {\r\n\tcardIds: [CardIds.MetalDispenser_BG34_176, CardIds.MetalDispenser_BG34_176_G],\r\n\tbaseAvengeValue: (cardId: string) => 4,\r\n\tavenge: (minion: BoardEntity, input: AvengeInput) => {\r\n\t\tconst loops = minion.cardId === CardIds.MetalDispenser_BG34_176_G ? 2 : 1;\r\n\t\tfor (let i = 0; i < loops; i++) {\r\n\t\t\tconst cardId = input.gameState.cardsData.getRandomMagneticVolumizer(\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t6,\r\n\t\t\t);\r\n\t\t\tmagnetizeToTarget(\r\n\t\t\t\t[minion],\r\n\t\t\t\tminion,\r\n\t\t\t\t[cardId],\r\n\t\t\t\tinput.board,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tinput.otherBoard,\r\n\t\t\t\tinput.otherHero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t\taddCardsInHand(input.hero, input.board, [cardId], input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PolarizingBeatboxer = void 0;
|
|
4
|
+
const magnetize_1 = require("../../../simulation/magnetize");
|
|
5
|
+
exports.PolarizingBeatboxer = {
|
|
6
|
+
cardIds: ["BG26_149", "BG26_149_G"],
|
|
7
|
+
onAfterMagnetize: (entity, input) => {
|
|
8
|
+
if (exports.PolarizingBeatboxer.cardIds.includes(input.source.cardId)) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
const mult = entity.cardId === "BG26_149_G" ? 2 : 1;
|
|
12
|
+
for (let i = 0; i < mult; i++) {
|
|
13
|
+
(0, magnetize_1.magnetizeToTarget)([entity], entity, [input.magnetizedCard], input.board, input.hero, input.otherBoard, input.otherHero, input.gameState, false);
|
|
14
|
+
input.gameState.spectator.registerPowerTarget(entity, input.magnetizeTarget, input.board, input.hero, input.otherHero);
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=polarizing-beatboxer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polarizing-beatboxer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/polarizing-beatboxer.ts"],"names":[],"mappings":";;;AAEA,6DAAyF;AAG5E,QAAA,mBAAmB,GAAyB;IACxD,OAAO,EAAE,0BAA8E;IACvF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAA4B,EAAE,EAAE;QACvE,IAAI,2BAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YAC9D,OAAO;SACP;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA2C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC9B,IAAA,6BAAiB,EAChB,CAAC,MAAM,CAAC,EACR,MAAM,EACN,CAAC,KAAK,CAAC,cAAc,CAAC,EACtB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,EAEf,KAAK,CACL,CAAC;YACF,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAC5C,MAAM,EACN,KAAK,CAAC,eAAe,EACrB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CACf,CAAC;SACF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { magnetizeToTarget, OnAfterMagnetizeInput } from '../../../simulation/magnetize';\r\nimport { OnAfterMagnetizeCard } from '../../card.interface';\r\n\r\nexport const PolarizingBeatboxer: OnAfterMagnetizeCard = {\r\n\tcardIds: [CardIds.PolarizingBeatboxer_BG26_149, CardIds.PolarizingBeatboxer_BG26_149_G],\r\n\tonAfterMagnetize: (entity: BoardEntity, input: OnAfterMagnetizeInput) => {\r\n\t\tif (PolarizingBeatboxer.cardIds.includes(input.source.cardId)) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst mult = entity.cardId === CardIds.PolarizingBeatboxer_BG26_149_G ? 2 : 1;\r\n\t\tfor (let i = 0; i < mult; i++) {\r\n\t\t\tmagnetizeToTarget(\r\n\t\t\t\t[entity],\r\n\t\t\t\tentity,\r\n\t\t\t\t[input.magnetizedCard],\r\n\t\t\t\tinput.board,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tinput.otherBoard,\r\n\t\t\t\tinput.otherHero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t\t// Don't retrigger effects that say \"the first time you magnetize this\"\r\n\t\t\t\tfalse,\r\n\t\t\t);\r\n\t\t\tinput.gameState.spectator.registerPowerTarget(\r\n\t\t\t\tentity,\r\n\t\t\t\tinput.magnetizeTarget,\r\n\t\t\t\tinput.board,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tinput.otherHero,\r\n\t\t\t);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -9,7 +9,9 @@ exports.RedVolumizer = {
|
|
|
9
9
|
const mult = entity.cardId === "BG34_170t_G" ? 2 : 1;
|
|
10
10
|
const buff = 3 * mult;
|
|
11
11
|
(0, stats_1.modifyStats)(entity, entity, input.hero.globalInfo.VolumizerAttackBuff, input.hero.globalInfo.VolumizerHealthBuff, input.board, input.hero, input.gameState);
|
|
12
|
-
|
|
12
|
+
if (input.isFirstTimeMagnetize) {
|
|
13
|
+
(0, player_global_effects_1.updateVolumizerBuffs)(input.hero, input.board, buff, 0, input.gameState);
|
|
14
|
+
}
|
|
13
15
|
},
|
|
14
16
|
};
|
|
15
17
|
//# sourceMappingURL=red-volumizer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"red-volumizer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/red-volumizer.ts"],"names":[],"mappings":";;;AACA,oFAAgF;AAGhF,qDAAwD;AAG3C,QAAA,YAAY,GAA8B;IACtD,OAAO,EAAE,4BAAuF;IAChG,qBAAqB,EAAE,CAAC,MAAmB,EAAE,KAAiC,EAAE,EAAE;QACjF,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,kBAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;QACtB,IAAA,mBAAW,EACV,MAAM,EACN,MAAM,EACN,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,EACzC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,EACzC,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CACf,CAAC;QAEF,IAAA,4CAAoB,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"red-volumizer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/red-volumizer.ts"],"names":[],"mappings":";;;AACA,oFAAgF;AAGhF,qDAAwD;AAG3C,QAAA,YAAY,GAA8B;IACtD,OAAO,EAAE,4BAAuF;IAChG,qBAAqB,EAAE,CAAC,MAAmB,EAAE,KAAiC,EAAE,EAAE;QACjF,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,kBAAqC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;QACtB,IAAA,mBAAW,EACV,MAAM,EACN,MAAM,EACN,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,EACzC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,EACzC,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CACf,CAAC;QAEF,IAAI,KAAK,CAAC,oBAAoB,EAAE;YAC/B,IAAA,4CAAoB,EAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACxE;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { updateVolumizerBuffs } from '../../../mechanics/player-global-effects';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { OnBeforeMagnetizeSelfInput } from '../../../simulation/magnetize';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { OnBeforeMagnetizeSelfCard } from '../../card.interface';\r\n\r\nexport const RedVolumizer: OnBeforeMagnetizeSelfCard = {\r\n\tcardIds: [CardIds.AutoAccelerator_RedVolumizerToken_BG34_170t, CardIds.RedVolumizer_BG34_170t_G],\r\n\tonBeforeMagnetizeSelf: (entity: BoardEntity, input: OnBeforeMagnetizeSelfInput) => {\r\n\t\tconst mult = entity.cardId === CardIds.RedVolumizer_BG34_170t_G ? 2 : 1;\r\n\t\tconst buff = 3 * mult;\r\n\t\tmodifyStats(\r\n\t\t\tentity,\r\n\t\t\tentity,\r\n\t\t\tinput.hero.globalInfo.VolumizerAttackBuff,\r\n\t\t\tinput.hero.globalInfo.VolumizerHealthBuff,\r\n\t\t\tinput.board,\r\n\t\t\tinput.hero,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t\t// The aura buff is not applied to itself\r\n\t\tif (input.isFirstTimeMagnetize) {\r\n\t\t\tupdateVolumizerBuffs(input.hero, input.board, buff, 0, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -12,7 +12,7 @@ exports.RunedProgenitor = {
|
|
|
12
12
|
},
|
|
13
13
|
avenge: (minion, input) => {
|
|
14
14
|
const mult = minion.cardId === "BG31_808_G" ? 2 : 1;
|
|
15
|
-
input.hero.globalInfo.BeetleAttackBuff = input.hero.globalInfo.BeetleAttackBuff +
|
|
15
|
+
input.hero.globalInfo.BeetleAttackBuff = input.hero.globalInfo.BeetleAttackBuff + 3 * mult;
|
|
16
16
|
input.hero.globalInfo.BeetleHealthBuff = input.hero.globalInfo.BeetleHealthBuff + 2 * mult;
|
|
17
17
|
input.board
|
|
18
18
|
.filter((e) => ["BG28_603t", "BG28_603t_G"].includes(e.cardId))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runed-progenitor.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/runed-progenitor.ts"],"names":[],"mappings":";;;AAIA,+EAAiF;AACjF,qDAAwD;AAG3C,QAAA,eAAe,GAAsC;IACjE,OAAO,EAAE,0BAAsE;IAC/E,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACtC,gBAAgB,EAAE,CAAC,UAAuB,EAAE,KAAgC,EAA0B,EAAE;QACvG,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxF,OAAO,IAAA,4CAAuB,eAA8C,cAAc,EAAE,KAAK,CAAC,CAAC;IACpG,CAAC;IACD,MAAM,EAAE,CAAC,MAAmB,EAAE,KAAkB,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC;QAC3F,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC;QAC3F,KAAK,CAAC,KAAK;aACT,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,4BAAyE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAiB,CAAC,CACvG;aACA,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,IAAA,mBAAW,EAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;IACL,CAAC;CACD,CAAC","sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"runed-progenitor.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/runed-progenitor.ts"],"names":[],"mappings":";;;AAIA,+EAAiF;AACjF,qDAAwD;AAG3C,QAAA,eAAe,GAAsC;IACjE,OAAO,EAAE,0BAAsE;IAC/E,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACtC,gBAAgB,EAAE,CAAC,UAAuB,EAAE,KAAgC,EAA0B,EAAE;QACvG,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxF,OAAO,IAAA,4CAAuB,eAA8C,cAAc,EAAE,KAAK,CAAC,CAAC;IACpG,CAAC;IACD,MAAM,EAAE,CAAC,MAAmB,EAAE,KAAkB,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC;QAC3F,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC;QAC3F,KAAK,CAAC,KAAK;aACT,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,4BAAyE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAiB,CAAC,CACvG;aACA,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,IAAA,mBAAW,EAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;IACL,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { AvengeInput } from '../../../simulation/avenge';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { AvengeCard, DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const RunedProgenitor: DeathrattleSpawnCard & AvengeCard = {\r\n\tcardIds: [CardIds.RunedProgenitor_BG31_808, CardIds.RunedProgenitor_BG31_808_G],\r\n\tbaseAvengeValue: (cardId: string) => 3,\r\n\tdeathrattleSpawn: (deadEntity: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst numberOfSpawns = deadEntity.cardId === CardIds.RunedProgenitor_BG31_808_G ? 2 : 1;\r\n\t\treturn simplifiedSpawnEntities(CardIds.BoonOfBeetles_BeetleToken_BG28_603t, numberOfSpawns, input);\r\n\t},\r\n\tavenge: (minion: BoardEntity, input: AvengeInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.RunedProgenitor_BG31_808_G ? 2 : 1;\r\n\t\tinput.hero.globalInfo.BeetleAttackBuff = input.hero.globalInfo.BeetleAttackBuff + 3 * mult;\r\n\t\tinput.hero.globalInfo.BeetleHealthBuff = input.hero.globalInfo.BeetleHealthBuff + 2 * mult;\r\n\t\tinput.board\r\n\t\t\t.filter((e) =>\r\n\t\t\t\t[CardIds.BoonOfBeetles_BeetleToken_BG28_603t, CardIds.Beetle_BG28_603t_G].includes(e.cardId as CardIds),\r\n\t\t\t)\r\n\t\t\t.forEach((e) => {\r\n\t\t\t\tmodifyStats(e, minion, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);\r\n\t\t\t});\r\n\t},\r\n};\r\n"]}
|
|
@@ -7,7 +7,7 @@ exports.Scourfin = {
|
|
|
7
7
|
cardIds: ["BG26_360", "BG26_360_G"],
|
|
8
8
|
deathrattleSpawn: (minion, input) => {
|
|
9
9
|
const mult = minion.cardId === "BG26_360_G" ? 2 : 1;
|
|
10
|
-
(0, utils_1.grantRandomStats)(input.deadEntity, input.boardWithDeadEntityHero.hand.filter((e) => { var _a; return ((_a = input.gameState.allCards.getCard(e.cardId).type) === null || _a === void 0 ? void 0 : _a.toUpperCase()) === reference_data_1.CardType[reference_data_1.CardType.MINION]; }), input.boardWithDeadEntityHero,
|
|
10
|
+
(0, utils_1.grantRandomStats)(input.deadEntity, input.boardWithDeadEntityHero.hand.filter((e) => { var _a; return ((_a = input.gameState.allCards.getCard(e.cardId).type) === null || _a === void 0 ? void 0 : _a.toUpperCase()) === reference_data_1.CardType[reference_data_1.CardType.MINION]; }), input.boardWithDeadEntityHero, 7 * mult, 7 * mult, null, true, input.gameState);
|
|
11
11
|
return [];
|
|
12
12
|
},
|
|
13
13
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scourfin.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/scourfin.ts"],"names":[],"mappings":";;;AAAA,iEAAwD;AAIxD,0CAAkD;AAGrC,QAAA,QAAQ,GAAyB;IAC7C,OAAO,EAAE,0BAAwD;IACjE,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAgC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,IAAA,wBAAgB,EACf,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CACxC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,CAAA,MAAA,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,0CAAE,WAAW,EAAE,MAAK,yBAAQ,CAAC,yBAAQ,CAAC,MAAM,CAAC,CAAA,EAAA,CACnG,EACD,KAAK,CAAC,uBAAuB,EAC7B,CAAC,GAAG,IAAI,EACR,CAAC,GAAG,IAAI,EACR,IAAI,EACJ,IAAI,EACJ,KAAK,CAAC,SAAS,CACf,CAAC;QACF,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { CardType } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { grantRandomStats } from '../../../utils';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const Scourfin: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.Scourfin_BG26_360, CardIds.Scourfin_BG26_360_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.Scourfin_BG26_360_G ? 2 : 1;\r\n\t\tgrantRandomStats(\r\n\t\t\tinput.deadEntity,\r\n\t\t\tinput.boardWithDeadEntityHero.hand.filter(\r\n\t\t\t\t(e) => input.gameState.allCards.getCard(e.cardId).type?.toUpperCase() === CardType[CardType.MINION],\r\n\t\t\t),\r\n\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\
|
|
1
|
+
{"version":3,"file":"scourfin.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/scourfin.ts"],"names":[],"mappings":";;;AAAA,iEAAwD;AAIxD,0CAAkD;AAGrC,QAAA,QAAQ,GAAyB;IAC7C,OAAO,EAAE,0BAAwD;IACjE,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAgC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,IAAA,wBAAgB,EACf,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CACxC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,CAAA,MAAA,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,0CAAE,WAAW,EAAE,MAAK,yBAAQ,CAAC,yBAAQ,CAAC,MAAM,CAAC,CAAA,EAAA,CACnG,EACD,KAAK,CAAC,uBAAuB,EAC7B,CAAC,GAAG,IAAI,EACR,CAAC,GAAG,IAAI,EACR,IAAI,EACJ,IAAI,EACJ,KAAK,CAAC,SAAS,CACf,CAAC;QACF,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { CardType } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { grantRandomStats } from '../../../utils';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const Scourfin: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.Scourfin_BG26_360, CardIds.Scourfin_BG26_360_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.Scourfin_BG26_360_G ? 2 : 1;\r\n\t\tgrantRandomStats(\r\n\t\t\tinput.deadEntity,\r\n\t\t\tinput.boardWithDeadEntityHero.hand.filter(\r\n\t\t\t\t(e) => input.gameState.allCards.getCard(e.cardId).type?.toUpperCase() === CardType[CardType.MINION],\r\n\t\t\t),\r\n\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\t7 * mult,\r\n\t\t\t7 * mult,\r\n\t\t\tnull,\r\n\t\t\ttrue,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
|
|
@@ -11,7 +11,7 @@ exports.SilkyShimmermoth = {
|
|
|
11
11
|
}
|
|
12
12
|
const mult = minion.cardId === "BG32_204" ? 1 : 2;
|
|
13
13
|
input.hero.globalInfo.BeetleAttackBuff += 2 * mult;
|
|
14
|
-
input.hero.globalInfo.BeetleHealthBuff +=
|
|
14
|
+
input.hero.globalInfo.BeetleHealthBuff += 1 * mult;
|
|
15
15
|
input.board
|
|
16
16
|
.filter((e) => ["BG28_603t", "BG28_603t_G"].includes(e.cardId))
|
|
17
17
|
.forEach((e) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"silky-shimmermoth.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/silky-shimmermoth.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AACjF,qDAAwD;AAG3C,QAAA,gBAAgB,GAAyC;IACrE,OAAO,EAAE,0BAAwE;IACjF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,IAAI,KAAK,CAAC,aAAa,KAAK,MAAM,EAAE;YACnC,OAAO;SACP;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,IAAI,CAAC,GAAG,IAAI,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,IAAI,CAAC,GAAG,IAAI,CAAC;QACnD,KAAK,CAAC,KAAK;aACT,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,4BAAyE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAiB,CAAC,CACvG;aACA,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,IAAA,mBAAW,EAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;IACL,CAAC;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,OAAO,IAAA,4CAAuB,eAA8C,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC;IAC9F,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { DeathrattleSpawnCard, OnDamagedCard, OnDamagedInput } from '../../card.interface';\r\n\r\nexport const SilkyShimmermoth: OnDamagedCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.SilkyShimmermoth_BG32_204, CardIds.SilkyShimmermoth_BG32_204_G],\r\n\tonDamaged: (minion: BoardEntity, input: OnDamagedInput) => {\r\n\t\tif (input.damagedEntity !== minion) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst mult = minion.cardId === CardIds.SilkyShimmermoth_BG32_204 ? 1 : 2;\r\n\t\tinput.hero.globalInfo.BeetleAttackBuff += 2 * mult;\r\n\t\tinput.hero.globalInfo.BeetleHealthBuff +=
|
|
1
|
+
{"version":3,"file":"silky-shimmermoth.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/silky-shimmermoth.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AACjF,qDAAwD;AAG3C,QAAA,gBAAgB,GAAyC;IACrE,OAAO,EAAE,0BAAwE;IACjF,SAAS,EAAE,CAAC,MAAmB,EAAE,KAAqB,EAAE,EAAE;QACzD,IAAI,KAAK,CAAC,aAAa,KAAK,MAAM,EAAE;YACnC,OAAO;SACP;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,IAAI,CAAC,GAAG,IAAI,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,IAAI,CAAC,GAAG,IAAI,CAAC;QACnD,KAAK,CAAC,KAAK;aACT,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,4BAAyE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAiB,CAAC,CACvG;aACA,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,IAAA,mBAAW,EAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;IACL,CAAC;IACD,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,eAAsC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,OAAO,IAAA,4CAAuB,eAA8C,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC;IAC9F,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { DeathrattleSpawnCard, OnDamagedCard, OnDamagedInput } from '../../card.interface';\r\n\r\nexport const SilkyShimmermoth: OnDamagedCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.SilkyShimmermoth_BG32_204, CardIds.SilkyShimmermoth_BG32_204_G],\r\n\tonDamaged: (minion: BoardEntity, input: OnDamagedInput) => {\r\n\t\tif (input.damagedEntity !== minion) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst mult = minion.cardId === CardIds.SilkyShimmermoth_BG32_204 ? 1 : 2;\r\n\t\tinput.hero.globalInfo.BeetleAttackBuff += 2 * mult;\r\n\t\tinput.hero.globalInfo.BeetleHealthBuff += 1 * mult;\r\n\t\tinput.board\r\n\t\t\t.filter((e) =>\r\n\t\t\t\t[CardIds.BoonOfBeetles_BeetleToken_BG28_603t, CardIds.Beetle_BG28_603t_G].includes(e.cardId as CardIds),\r\n\t\t\t)\r\n\t\t\t.forEach((e) => {\r\n\t\t\t\tmodifyStats(e, minion, 2 * mult, 2 * mult, input.board, input.hero, input.gameState);\r\n\t\t\t});\r\n\t},\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst mult = minion.cardId === CardIds.SilkyShimmermoth_BG32_204 ? 1 : 2;\r\n\t\treturn simplifiedSpawnEntities(CardIds.BoonOfBeetles_BeetleToken_BG28_603t, 1 * mult, input);\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const StalwartKodo:
|
|
1
|
+
import { AfterOtherSpawnedCard, DefaultChargesCard } from '../../card.interface';
|
|
2
|
+
export declare const StalwartKodo: AfterOtherSpawnedCard & DefaultChargesCard;
|
|
@@ -5,7 +5,7 @@ const stats_1 = require("../../../simulation/stats");
|
|
|
5
5
|
exports.StalwartKodo = {
|
|
6
6
|
cardIds: ["BG34_322", "BG34_322_G"],
|
|
7
7
|
defaultCharges: (entity) => 3,
|
|
8
|
-
|
|
8
|
+
afterOtherSpawned: (minion, input) => {
|
|
9
9
|
const mult = minion.cardId === "BG34_322_G" ? 2 : 1;
|
|
10
10
|
if (minion.abiityChargesLeft > 0) {
|
|
11
11
|
minion.abiityChargesLeft--;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stalwart-kodo.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/stalwart-kodo.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,YAAY,
|
|
1
|
+
{"version":3,"file":"stalwart-kodo.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/stalwart-kodo.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,YAAY,GAA+C;IACvE,OAAO,EAAE,0BAAgE;IACzE,cAAc,EAAE,CAAC,MAAmB,EAAE,EAAE,CAAC,CAAC;IAC1C,iBAAiB,EAAE,CAAC,MAAmB,EAAE,KAAwB,EAAE,EAAE;QACpE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAoC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,IAAI,MAAM,CAAC,iBAAiB,GAAG,CAAC,EAAE;YACjC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC3B,IAAA,mBAAW,EACV,KAAK,CAAC,OAAO,EACb,MAAM,EACN,MAAM,CAAC,SAAS,GAAG,IAAI,EACvB,MAAM,CAAC,SAAS,GAAG,IAAI,EACvB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CACf,CAAC;YACF,OAAO;SACP;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { OnOtherSpawnInput } from '../../../simulation/add-minion-to-board';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { AfterOtherSpawnedCard, DefaultChargesCard } from '../../card.interface';\r\n\r\nexport const StalwartKodo: AfterOtherSpawnedCard & DefaultChargesCard = {\r\n\tcardIds: [CardIds.StalwartKodo_BG34_322, CardIds.StalwartKodo_BG34_322_G],\r\n\tdefaultCharges: (entity: BoardEntity) => 3,\r\n\tafterOtherSpawned: (minion: BoardEntity, input: OnOtherSpawnInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.StalwartKodo_BG34_322_G ? 2 : 1;\r\n\t\tif (minion.abiityChargesLeft > 0) {\r\n\t\t\tminion.abiityChargesLeft--;\r\n\t\t\tmodifyStats(\r\n\t\t\t\tinput.spawned,\r\n\t\t\t\tminion,\r\n\t\t\t\tminion.maxAttack * mult,\r\n\t\t\t\tminion.maxHealth * mult,\r\n\t\t\t\tinput.board,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -8,7 +8,7 @@ exports.StellarFreebooter = {
|
|
|
8
8
|
deathrattleSpawn: (minion, input) => {
|
|
9
9
|
const loops = minion.cardId === "BG29_866_G" ? 2 : 1;
|
|
10
10
|
for (let i = 0; i < loops; i++) {
|
|
11
|
-
const target = (0, utils_1.pickRandomAlive)(input.boardWithDeadEntity);
|
|
11
|
+
const target = (0, utils_1.pickRandomAlive)(input.boardWithDeadEntity.filter((e) => !exports.StellarFreebooter.cardIds.includes(e.cardId)));
|
|
12
12
|
if (!!target) {
|
|
13
13
|
(0, stats_1.modifyStats)(target, minion, 0, minion.attack, input.boardWithDeadEntity, input.boardWithDeadEntityHero, input.gameState);
|
|
14
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stellar-freebooter.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/stellar-freebooter.ts"],"names":[],"mappings":";;;AAEA,mDAA0D;AAE1D,qDAAwD;AAG3C,QAAA,iBAAiB,GAAyB;IACtD,OAAO,EAAE,0BAA0E;IACnF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,iBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,IAAA,uBAAe,
|
|
1
|
+
{"version":3,"file":"stellar-freebooter.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/stellar-freebooter.ts"],"names":[],"mappings":";;;AAEA,mDAA0D;AAE1D,qDAAwD;AAG3C,QAAA,iBAAiB,GAAyB;IACtD,OAAO,EAAE,0BAA0E;IACnF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,iBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,IAAA,uBAAe,EAC7B,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,yBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAiB,CAAC,CAAC,CACjG,CAAC;YACF,IAAI,CAAC,CAAC,MAAM,EAAE;gBACb,IAAA,mBAAW,EACV,MAAM,EACN,MAAM,EACN,CAAC,EACD,MAAM,CAAC,MAAM,EACb,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,KAAK,CAAC,SAAS,CACf,CAAC;aACF;SACD;QACD,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { pickRandomAlive } from '../../../services/utils';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const StellarFreebooter: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.StellarFreebooter_BG29_866, CardIds.StellarFreebooter_BG29_866_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst loops = minion.cardId === CardIds.StellarFreebooter_BG29_866_G ? 2 : 1;\r\n\t\tfor (let i = 0; i < loops; i++) {\r\n\t\t\tconst target = pickRandomAlive(\r\n\t\t\t\tinput.boardWithDeadEntity.filter((e) => !StellarFreebooter.cardIds.includes(e.cardId as CardIds)),\r\n\t\t\t);\r\n\t\t\tif (!!target) {\r\n\t\t\t\tmodifyStats(\r\n\t\t\t\t\ttarget,\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\t0,\r\n\t\t\t\t\tminion.attack,\r\n\t\t\t\t\tinput.boardWithDeadEntity,\r\n\t\t\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\t\t\tinput.gameState,\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn [];\r\n\t},\r\n};\r\n"]}
|
|
@@ -8,7 +8,7 @@ exports.TimewarpedCaretaker = {
|
|
|
8
8
|
cardIds: ["BG34_Giant_618", "BG34_Giant_618_G"],
|
|
9
9
|
deathrattleSpawn: (minion, input) => {
|
|
10
10
|
const mult = minion.cardId === "BG34_Giant_618_G" ? 2 : 1;
|
|
11
|
-
const spawns = (0, deathrattle_spawns_1.simplifiedSpawnEntities)("BG_ICC_026t",
|
|
11
|
+
const spawns = (0, deathrattle_spawns_1.simplifiedSpawnEntities)("BG_ICC_026t", 5 * mult, input);
|
|
12
12
|
spawns.forEach((e) => {
|
|
13
13
|
e.onCanceledSummon = () => {
|
|
14
14
|
input.boardWithDeadEntityHero.globalInfo.UndeadAttackBonus += 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timewarped-caretaker.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/timewarped-caretaker.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAIpD,+EAAiF;AACjF,0CAAiD;AAGpC,QAAA,mBAAmB,GAAyB;IACxD,OAAO,EAAE,sCAA0F;IACnG,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,uBAAiD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpF,MAAM,MAAM,GAAG,IAAA,4CAAuB,iBAAwB,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC;QAC/E,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACpB,CAAC,CAAC,gBAAgB,GAAG,GAAG,EAAE;gBACzB,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,iBAAiB,IAAI,CAAC,CAAC;gBAChE,IAAA,uBAAe,EACd,MAAM,EACN,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,CAAC,EACD,CAAC,EACD,KAAK,CAAC,SAAS,EACf,qBAAI,CAAC,qBAAI,CAAC,MAAM,CAAC,EACjB,KAAK,CACL,CAAC;YACH,CAAC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IACf,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const TimewarpedCaretaker: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.TimewarpedCaretaker_BG34_Giant_618, CardIds.TimewarpedCaretaker_BG34_Giant_618_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst mult = minion.cardId === CardIds.TimewarpedCaretaker_BG34_Giant_618_G ? 2 : 1;\r\n\t\tconst spawns = simplifiedSpawnEntities(CardIds.SkeletonToken,
|
|
1
|
+
{"version":3,"file":"timewarped-caretaker.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/timewarped-caretaker.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAIpD,+EAAiF;AACjF,0CAAiD;AAGpC,QAAA,mBAAmB,GAAyB;IACxD,OAAO,EAAE,sCAA0F;IACnG,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAA0B,EAAE;QACnG,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,uBAAiD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpF,MAAM,MAAM,GAAG,IAAA,4CAAuB,iBAAwB,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC;QAC/E,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACpB,CAAC,CAAC,gBAAgB,GAAG,GAAG,EAAE;gBACzB,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,iBAAiB,IAAI,CAAC,CAAC;gBAChE,IAAA,uBAAe,EACd,MAAM,EACN,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,CAAC,EACD,CAAC,EACD,KAAK,CAAC,SAAS,EACf,qBAAI,CAAC,qBAAI,CAAC,MAAM,CAAC,EACjB,KAAK,CACL,CAAC;YACH,CAAC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IACf,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nexport const TimewarpedCaretaker: DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.TimewarpedCaretaker_BG34_Giant_618, CardIds.TimewarpedCaretaker_BG34_Giant_618_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput): readonly BoardEntity[] => {\r\n\t\tconst mult = minion.cardId === CardIds.TimewarpedCaretaker_BG34_Giant_618_G ? 2 : 1;\r\n\t\tconst spawns = simplifiedSpawnEntities(CardIds.SkeletonToken, 5 * mult, input);\r\n\t\tspawns.forEach((e) => {\r\n\t\t\te.onCanceledSummon = () => {\r\n\t\t\t\tinput.boardWithDeadEntityHero.globalInfo.UndeadAttackBonus += 1;\r\n\t\t\t\taddStatsToBoard(\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\tinput.boardWithDeadEntity,\r\n\t\t\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\t\t\t1,\r\n\t\t\t\t\t0,\r\n\t\t\t\t\tinput.gameState,\r\n\t\t\t\t\tRace[Race.UNDEAD],\r\n\t\t\t\t\tfalse,\r\n\t\t\t\t);\r\n\t\t\t};\r\n\t\t});\r\n\t\treturn spawns;\r\n\t},\r\n};\r\n"]}
|
|
@@ -8,7 +8,7 @@ exports.TimewarpedDuskmaw = {
|
|
|
8
8
|
baseAvengeValue: (cardId) => 1,
|
|
9
9
|
avenge: (minion, input) => {
|
|
10
10
|
const mult = minion.cardId === "BG34_PreMadeChamp_020_G" ? 2 : 1;
|
|
11
|
-
(0, utils_1.addStatsToBoard)(minion, input.board, input.hero,
|
|
11
|
+
(0, utils_1.addStatsToBoard)(minion, input.board, input.hero, 6 * mult, 4 * mult, input.gameState, reference_data_1.Race[reference_data_1.Race.DRAGON]);
|
|
12
12
|
},
|
|
13
13
|
};
|
|
14
14
|
//# sourceMappingURL=timewarped-duskmaw.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timewarped-duskmaw.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/timewarped-duskmaw.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAIpD,0CAAiD;AAGpC,QAAA,iBAAiB,GAAe;IAC5C,OAAO,EAAE,oDAAoG;IAC7G,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,MAAmB,EAAE,KAAkB,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,8BAAsD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzF,IAAA,uBAAe,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,qBAAI,CAAC,qBAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1G,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { AvengeInput } from '../../../simulation/avenge';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { AvengeCard } from '../../card.interface';\r\n\r\nexport const TimewarpedDuskmaw: AvengeCard = {\r\n\tcardIds: [CardIds.TimewarpedDuskmaw_BG34_PreMadeChamp_020, CardIds.TimewarpedDuskmaw_BG34_PreMadeChamp_020_G],\r\n\tbaseAvengeValue: (cardId: string) => 1,\r\n\tavenge: (minion: BoardEntity, input: AvengeInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.TimewarpedDuskmaw_BG34_PreMadeChamp_020_G ? 2 : 1;\r\n\t\taddStatsToBoard(minion, input.board, input.hero,
|
|
1
|
+
{"version":3,"file":"timewarped-duskmaw.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/timewarped-duskmaw.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAIpD,0CAAiD;AAGpC,QAAA,iBAAiB,GAAe;IAC5C,OAAO,EAAE,oDAAoG;IAC7G,eAAe,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,MAAmB,EAAE,KAAkB,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,8BAAsD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzF,IAAA,uBAAe,EAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,qBAAI,CAAC,qBAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1G,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { AvengeInput } from '../../../simulation/avenge';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { AvengeCard } from '../../card.interface';\r\n\r\nexport const TimewarpedDuskmaw: AvengeCard = {\r\n\tcardIds: [CardIds.TimewarpedDuskmaw_BG34_PreMadeChamp_020, CardIds.TimewarpedDuskmaw_BG34_PreMadeChamp_020_G],\r\n\tbaseAvengeValue: (cardId: string) => 1,\r\n\tavenge: (minion: BoardEntity, input: AvengeInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.TimewarpedDuskmaw_BG34_PreMadeChamp_020_G ? 2 : 1;\r\n\t\taddStatsToBoard(minion, input.board, input.hero, 6 * mult, 4 * mult, input.gameState, Race[Race.DRAGON]);\r\n\t},\r\n};\r\n"]}
|
|
@@ -5,8 +5,10 @@ const utils_1 = require("../../../utils");
|
|
|
5
5
|
exports.TimewarpedGreaseBot = {
|
|
6
6
|
cardIds: ["BG34_Giant_656", "BG34_Giant_656_G"],
|
|
7
7
|
onDivineShieldUpdated: (minion, input) => {
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
if (!input.newValue) {
|
|
9
|
+
const mult = minion.cardId === "BG34_Giant_656_G" ? 2 : 1;
|
|
10
|
+
(0, utils_1.addStatsToBoard)(input.target, input.board, input.hero, 3 * mult, 3 * mult, input.gameState);
|
|
11
|
+
}
|
|
10
12
|
},
|
|
11
13
|
};
|
|
12
14
|
//# sourceMappingURL=timewarped-grease-bot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timewarped-grease-bot.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/timewarped-grease-bot.ts"],"names":[],"mappings":";;;AAGA,0CAAiD;AAGpC,QAAA,mBAAmB,GAA8B;IAC7D,OAAO,EAAE,sCAA0F;IACnG,qBAAqB,EAAE,CAAC,MAAmB,EAAE,KAAiC,EAAE,EAAE;QACjF,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,uBAAiD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"timewarped-grease-bot.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/timewarped-grease-bot.ts"],"names":[],"mappings":";;;AAGA,0CAAiD;AAGpC,QAAA,mBAAmB,GAA8B;IAC7D,OAAO,EAAE,sCAA0F;IACnG,qBAAqB,EAAE,CAAC,MAAmB,EAAE,KAAiC,EAAE,EAAE;QACjF,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACpB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,uBAAiD,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpF,IAAA,uBAAe,EAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC5F;IACF,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { OnDivineShieldUpdatedInput } from '../../../keywords/divine-shield';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { addStatsToBoard } from '../../../utils';\r\nimport { OnDivineShieldUpdatedCard } from '../../card.interface';\r\n\r\nexport const TimewarpedGreaseBot: OnDivineShieldUpdatedCard = {\r\n\tcardIds: [CardIds.TimewarpedGreaseBot_BG34_Giant_656, CardIds.TimewarpedGreaseBot_BG34_Giant_656_G],\r\n\tonDivineShieldUpdated: (minion: BoardEntity, input: OnDivineShieldUpdatedInput) => {\r\n\t\tif (!input.newValue) {\r\n\t\t\tconst mult = minion.cardId === CardIds.TimewarpedGreaseBot_BG34_Giant_656_G ? 2 : 1;\r\n\t\t\taddStatsToBoard(input.target, input.board, input.hero, 3 * mult, 3 * mult, input.gameState);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const TimewarpedProbius:
|
|
1
|
+
import { OnAfterMagnetizeSelfCard } from '../../card.interface';
|
|
2
|
+
export declare const TimewarpedProbius: OnAfterMagnetizeSelfCard;
|
|
@@ -6,7 +6,7 @@ const golden_1 = require("../../../simulation/utils/golden");
|
|
|
6
6
|
const utils_1 = require("../../../utils");
|
|
7
7
|
exports.TimewarpedProbius = {
|
|
8
8
|
cardIds: ["BG34_Giant_121", "BG34_Giant_121_G"],
|
|
9
|
-
|
|
9
|
+
onAfterMagnetizeSelf: (entity, input) => {
|
|
10
10
|
if ((0, utils_1.hasCorrectTribe)(input.magnetizeTarget, input.hero, reference_data_1.Race.MECH, input.gameState.anomalies, input.gameState.allCards)) {
|
|
11
11
|
(0, golden_1.makeMinionGolden)(input.magnetizeTarget, entity, input.board, input.hero, input.otherBoard, input.otherHero, input.gameState);
|
|
12
12
|
input.gameState.spectator.registerPowerTarget(entity, input.magnetizeTarget, input.board, input.hero, input.otherHero);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timewarped-probius.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/timewarped-probius.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAIpD,6DAAoE;AACpE,0CAAiD;AAGpC,QAAA,iBAAiB,
|
|
1
|
+
{"version":3,"file":"timewarped-probius.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/timewarped-probius.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAIpD,6DAAoE;AACpE,0CAAiD;AAGpC,QAAA,iBAAiB,GAA6B;IAC1D,OAAO,EAAE,sCAAsF;IAC/F,oBAAoB,EAAE,CAAC,MAAmB,EAAE,KAA4B,EAAE,EAAE;QAC3E,IACC,IAAA,uBAAe,EACd,KAAK,CAAC,eAAe,EACrB,KAAK,CAAC,IAAI,EACV,qBAAI,CAAC,IAAI,EACT,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,EACA;YACD,IAAA,yBAAgB,EACf,KAAK,CAAC,eAAe,EACrB,MAAM,EACN,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,CACf,CAAC;YACF,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,mBAAmB,CAC5C,MAAM,EACN,KAAK,CAAC,eAAe,EACrB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CACf,CAAC;SACF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { OnAfterMagnetizeInput } from '../../../simulation/magnetize';\r\nimport { makeMinionGolden } from '../../../simulation/utils/golden';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { OnAfterMagnetizeSelfCard } from '../../card.interface';\r\n\r\nexport const TimewarpedProbius: OnAfterMagnetizeSelfCard = {\r\n\tcardIds: [CardIds.TimewarpedProbius_BG34_Giant_121, CardIds.TimewarpedProbius_BG34_Giant_121_G],\r\n\tonAfterMagnetizeSelf: (entity: BoardEntity, input: OnAfterMagnetizeInput) => {\r\n\t\tif (\r\n\t\t\thasCorrectTribe(\r\n\t\t\t\tinput.magnetizeTarget,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tRace.MECH,\r\n\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\tinput.gameState.allCards,\r\n\t\t\t)\r\n\t\t) {\r\n\t\t\tmakeMinionGolden(\r\n\t\t\t\tinput.magnetizeTarget,\r\n\t\t\t\tentity,\r\n\t\t\t\tinput.board,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tinput.otherBoard,\r\n\t\t\t\tinput.otherHero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t\tinput.gameState.spectator.registerPowerTarget(\r\n\t\t\t\tentity,\r\n\t\t\t\tinput.magnetizeTarget,\r\n\t\t\t\tinput.board,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tinput.otherHero,\r\n\t\t\t);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const TimewarpedWargear:
|
|
1
|
+
import { OnAfterMagnetizeToSelfCard } from '../../card.interface';
|
|
2
|
+
export declare const TimewarpedWargear: OnAfterMagnetizeToSelfCard;
|
|
@@ -4,7 +4,7 @@ exports.TimewarpedWargear = void 0;
|
|
|
4
4
|
const stats_1 = require("../../../simulation/stats");
|
|
5
5
|
exports.TimewarpedWargear = {
|
|
6
6
|
cardIds: ["BG34_Giant_677", "BG34_Giant_677_G"],
|
|
7
|
-
|
|
7
|
+
onAfterMagnetizeToSelf: (minion, input) => {
|
|
8
8
|
const mult = minion.cardId === "BG34_Giant_677_G" ? 2 : 1;
|
|
9
9
|
(0, stats_1.modifyStats)(input.magnetizeTarget, minion, input.magnetizeTarget.attack * mult, input.magnetizeTarget.health * mult, input.board, input.hero, input.gameState);
|
|
10
10
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timewarped-wargear.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/timewarped-wargear.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,iBAAiB,
|
|
1
|
+
{"version":3,"file":"timewarped-wargear.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/timewarped-wargear.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,iBAAiB,GAA+B;IAC5D,OAAO,EAAE,sCAAsF;IAC/F,sBAAsB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QACjF,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,uBAA+C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAElF,IAAA,mBAAW,EACV,KAAK,CAAC,eAAe,EACrB,MAAM,EACN,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,EACnC,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,IAAI,EACnC,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CACf,CAAC;IACH,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { OnAfterMagnetizeSelfInput } from '../../../simulation/magnetize';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { OnAfterMagnetizeToSelfCard } from '../../card.interface';\r\n\r\nexport const TimewarpedWargear: OnAfterMagnetizeToSelfCard = {\r\n\tcardIds: [CardIds.TimewarpedWargear_BG34_Giant_677, CardIds.TimewarpedWargear_BG34_Giant_677_G],\r\n\tonAfterMagnetizeToSelf: (minion: BoardEntity, input: OnAfterMagnetizeSelfInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.TimewarpedWargear_BG34_Giant_677_G ? 2 : 1;\r\n\t\t// Never sure whether to use setEntityStats or modifyStats here (ie aura reapply or not)\r\n\t\tmodifyStats(\r\n\t\t\tinput.magnetizeTarget,\r\n\t\t\tminion,\r\n\t\t\tinput.magnetizeTarget.attack * mult,\r\n\t\t\tinput.magnetizeTarget.health * mult,\r\n\t\t\tinput.board,\r\n\t\t\tinput.hero,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t},\r\n};\r\n"]}
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.TurquoiseSkitterer = void 0;
|
|
4
4
|
const deathrattle_spawns_1 = require("../../../simulation/deathrattle-spawns");
|
|
5
5
|
const stats_1 = require("../../../simulation/stats");
|
|
6
|
-
const atkBuff =
|
|
7
|
-
const hpBuff =
|
|
6
|
+
const atkBuff = 5;
|
|
7
|
+
const hpBuff = 5;
|
|
8
8
|
exports.TurquoiseSkitterer = {
|
|
9
9
|
cardIds: ["BG31_809", "BG31_809_G"],
|
|
10
10
|
deathrattleSpawn: (minion, input) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turquoise-skitterer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/turquoise-skitterer.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AACjF,qDAAwD;AAGxD,MAAM,OAAO,GAAG,CAAC,CAAC;AAClB,MAAM,MAAM,GAAG,CAAC,CAAC;AAEJ,QAAA,kBAAkB,GAAgD;IAC9E,OAAO,EAAE,0BAA4E;IACrF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA0C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,gBAAgB;YACxD,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,gBAAgB,GAAG,OAAO,GAAG,IAAI,CAAC;QAC5E,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,gBAAgB;YACxD,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,gBAAgB,GAAG,MAAM,GAAG,IAAI,CAAC;QAC3E,KAAK,CAAC,mBAAmB;aACvB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,4BAAyE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAiB,CAAC,CACvG;aACA,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,IAAA,mBAAW,EACV,CAAC,EACD,MAAM,EACN,OAAO,GAAG,IAAI,EACd,MAAM,GAAG,IAAI,EACb,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,KAAK,CAAC,SAAS,CACf,CAAC;QACH,CAAC,CAAC,CAAC;QACJ,OAAO,IAAA,4CAAuB,eAA8C,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1F,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nconst atkBuff =
|
|
1
|
+
{"version":3,"file":"turquoise-skitterer.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/turquoise-skitterer.ts"],"names":[],"mappings":";;;AAGA,+EAAiF;AACjF,qDAAwD;AAGxD,MAAM,OAAO,GAAG,CAAC,CAAC;AAClB,MAAM,MAAM,GAAG,CAAC,CAAC;AAEJ,QAAA,kBAAkB,GAAgD;IAC9E,OAAO,EAAE,0BAA4E;IACrF,gBAAgB,EAAE,CAAC,MAAmB,EAAE,KAAgC,EAAE,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA0C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,gBAAgB;YACxD,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,gBAAgB,GAAG,OAAO,GAAG,IAAI,CAAC;QAC5E,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,gBAAgB;YACxD,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAAC,gBAAgB,GAAG,MAAM,GAAG,IAAI,CAAC;QAC3E,KAAK,CAAC,mBAAmB;aACvB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACb,4BAAyE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAiB,CAAC,CACvG;aACA,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACd,IAAA,mBAAW,EACV,CAAC,EACD,MAAM,EACN,OAAO,GAAG,IAAI,EACd,MAAM,GAAG,IAAI,EACb,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,KAAK,CAAC,SAAS,CACf,CAAC;QACH,CAAC,CAAC,CAAC;QACJ,OAAO,IAAA,4CAAuB,eAA8C,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1F,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { simplifiedSpawnEntities } from '../../../simulation/deathrattle-spawns';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { DeathrattleSpawnCard } from '../../card.interface';\r\n\r\nconst atkBuff = 5;\r\nconst hpBuff = 5;\r\n\r\nexport const TurquoiseSkitterer: DeathrattleSpawnCard & DeathrattleSpawnCard = {\r\n\tcardIds: [CardIds.TurquoiseSkitterer_BG31_809, CardIds.TurquoiseSkitterer_BG31_809_G],\r\n\tdeathrattleSpawn: (minion: BoardEntity, input: DeathrattleTriggeredInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.TurquoiseSkitterer_BG31_809_G ? 2 : 1;\r\n\t\tinput.boardWithDeadEntityHero.globalInfo.BeetleAttackBuff =\r\n\t\t\tinput.boardWithDeadEntityHero.globalInfo.BeetleAttackBuff + atkBuff * mult;\r\n\t\tinput.boardWithDeadEntityHero.globalInfo.BeetleHealthBuff =\r\n\t\t\tinput.boardWithDeadEntityHero.globalInfo.BeetleHealthBuff + hpBuff * mult;\r\n\t\tinput.boardWithDeadEntity\r\n\t\t\t.filter((e) =>\r\n\t\t\t\t[CardIds.BoonOfBeetles_BeetleToken_BG28_603t, CardIds.Beetle_BG28_603t_G].includes(e.cardId as CardIds),\r\n\t\t\t)\r\n\t\t\t.forEach((e) => {\r\n\t\t\t\tmodifyStats(\r\n\t\t\t\t\te,\r\n\t\t\t\t\tminion,\r\n\t\t\t\t\tatkBuff * mult,\r\n\t\t\t\t\thpBuff * mult,\r\n\t\t\t\t\tinput.boardWithDeadEntity,\r\n\t\t\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\t\t\tinput.gameState,\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t\treturn simplifiedSpawnEntities(CardIds.BoonOfBeetles_BeetleToken_BG28_603t, mult, input);\r\n\t},\r\n};\r\n"]}
|
|
@@ -20,7 +20,7 @@ const process = (minion, input) => {
|
|
|
20
20
|
const mult = minion.cardId === "BG33_245_G" ? 2 : 1;
|
|
21
21
|
const candidates = input.attackingBoard.filter((e) => (0, utils_1.hasCorrectTribe)(e, input.attackingHero, reference_data_1.Race.DRAGON, input.gameState.anomalies, input.gameState.allCards));
|
|
22
22
|
for (const target of candidates) {
|
|
23
|
-
(0, stats_1.modifyStats)(target, input.attacker, 1 * mult,
|
|
23
|
+
(0, stats_1.modifyStats)(target, input.attacker, 1 * mult, 2 * mult, input.attackingBoard, input.attackingHero, input.gameState);
|
|
24
24
|
}
|
|
25
25
|
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
26
26
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"twilight-watcher.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/twilight-watcher.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAIpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,eAAe,GAAmD;IAC9E,OAAO,EAAE,0BAAsE;IAC/E,8BAA8B,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QAC7E,OAAO,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,OAAO,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;CACD,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;IAC7D,IACC,CAAC,IAAA,uBAAe,EACf,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;QACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;KACtD;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACpD,IAAA,uBAAe,EAAC,CAAC,EAAE,KAAK,CAAC,aAAa,EAAE,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CACzG,CAAC;IACF,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE;QAChC,IAAA,mBAAW,EACV,MAAM,EACN,KAAK,CAAC,QAAQ,EACd,CAAC,GAAG,IAAI,EACR,CAAC,GAAG,IAAI,EACR,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,SAAS,CACf,CAAC;KACF;IACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;AACvD,CAAC,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { OnWheneverAnotherMinionAttacksCard, RallyCard } from '../../card.interface';\r\n\r\nexport const TwilightWatcher: OnWheneverAnotherMinionAttacksCard & RallyCard = {\r\n\tcardIds: [CardIds.TwilightWatcher_BG33_245, CardIds.TwilightWatcher_BG33_245_G],\r\n\tonWheneverAnotherMinionAttacks: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\treturn process(minion, input);\r\n\t},\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\treturn process(minion, input);\r\n\t},\r\n};\r\n\r\nconst process = (minion: BoardEntity, input: OnAttackInput) => {\r\n\tif (\r\n\t\t!hasCorrectTribe(\r\n\t\t\tinput.attacker,\r\n\t\t\tinput.attackingHero,\r\n\t\t\tRace.DRAGON,\r\n\t\t\tinput.gameState.anomalies,\r\n\t\t\tinput.gameState.allCards,\r\n\t\t)\r\n\t) {\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t}\r\n\r\n\tconst mult = minion.cardId === CardIds.TwilightWatcher_BG33_245_G ? 2 : 1;\r\n\tconst candidates = input.attackingBoard.filter((e) =>\r\n\t\thasCorrectTribe(e, input.attackingHero, Race.DRAGON, input.gameState.anomalies, input.gameState.allCards),\r\n\t);\r\n\tfor (const target of candidates) {\r\n\t\tmodifyStats(\r\n\t\t\ttarget,\r\n\t\t\tinput.attacker,\r\n\t\t\t1 * mult,\r\n\t\t\
|
|
1
|
+
{"version":3,"file":"twilight-watcher.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/twilight-watcher.ts"],"names":[],"mappings":";;;AAAA,iEAAoD;AAIpD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,eAAe,GAAmD;IAC9E,OAAO,EAAE,0BAAsE;IAC/E,8BAA8B,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QAC7E,OAAO,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,OAAO,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;CACD,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;IAC7D,IACC,CAAC,IAAA,uBAAe,EACf,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;QACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;KACtD;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACpD,IAAA,uBAAe,EAAC,CAAC,EAAE,KAAK,CAAC,aAAa,EAAE,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CACzG,CAAC;IACF,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE;QAChC,IAAA,mBAAW,EACV,MAAM,EACN,KAAK,CAAC,QAAQ,EACd,CAAC,GAAG,IAAI,EACR,CAAC,GAAG,IAAI,EACR,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,SAAS,CACf,CAAC;KACF;IACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;AACvD,CAAC,CAAC","sourcesContent":["import { Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { CardIds } from '../../../services/card-ids';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { OnWheneverAnotherMinionAttacksCard, RallyCard } from '../../card.interface';\r\n\r\nexport const TwilightWatcher: OnWheneverAnotherMinionAttacksCard & RallyCard = {\r\n\tcardIds: [CardIds.TwilightWatcher_BG33_245, CardIds.TwilightWatcher_BG33_245_G],\r\n\tonWheneverAnotherMinionAttacks: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\treturn process(minion, input);\r\n\t},\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\treturn process(minion, input);\r\n\t},\r\n};\r\n\r\nconst process = (minion: BoardEntity, input: OnAttackInput) => {\r\n\tif (\r\n\t\t!hasCorrectTribe(\r\n\t\t\tinput.attacker,\r\n\t\t\tinput.attackingHero,\r\n\t\t\tRace.DRAGON,\r\n\t\t\tinput.gameState.anomalies,\r\n\t\t\tinput.gameState.allCards,\r\n\t\t)\r\n\t) {\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t}\r\n\r\n\tconst mult = minion.cardId === CardIds.TwilightWatcher_BG33_245_G ? 2 : 1;\r\n\tconst candidates = input.attackingBoard.filter((e) =>\r\n\t\thasCorrectTribe(e, input.attackingHero, Race.DRAGON, input.gameState.anomalies, input.gameState.allCards),\r\n\t);\r\n\tfor (const target of candidates) {\r\n\t\tmodifyStats(\r\n\t\t\ttarget,\r\n\t\t\tinput.attacker,\r\n\t\t\t1 * mult,\r\n\t\t\t2 * mult,\r\n\t\t\tinput.attackingBoard,\r\n\t\t\tinput.attackingHero,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t}\r\n\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n};\r\n"]}
|
|
@@ -5,7 +5,7 @@ const cards_in_hand_1 = require("../../../simulation/cards-in-hand");
|
|
|
5
5
|
exports.DivineSignet = {
|
|
6
6
|
cardIds: ["BG32_MagicItem_171"],
|
|
7
7
|
onDivineShieldUpdated: (trinket, input) => {
|
|
8
|
-
if (trinket.scriptDataNum1 > 0) {
|
|
8
|
+
if (!input.newValue && trinket.scriptDataNum1 > 0) {
|
|
9
9
|
(0, cards_in_hand_1.addCardsInHand)(input.hero, input.board, [input.gameState.cardsData.getRandomTavernSpell()], input.gameState);
|
|
10
10
|
trinket.scriptDataNum1--;
|
|
11
11
|
}
|
|
@@ -1 +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;
|
|
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,CAAC,KAAK,CAAC,QAAQ,IAAI,OAAO,CAAC,cAAc,GAAG,CAAC,EAAE;YAClD,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 { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { OnDivineShieldUpdatedInput } from '../../../keywords/divine-shield';\r\nimport { CardIds } from '../../../services/card-ids';\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 (!input.newValue && 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"]}
|
package/dist/debug-state.d.ts
CHANGED
|
@@ -13,11 +13,13 @@ export declare const debugState: {
|
|
|
13
13
|
forcedRandomPicks: {
|
|
14
14
|
source: ForcedFaceOffEntity;
|
|
15
15
|
target: ForcedFaceOffEntity;
|
|
16
|
+
chosenCardId?: string;
|
|
16
17
|
}[];
|
|
17
18
|
isCorrectEntity: (proposedEntity: ForcedFaceOffEntity, actualEntity: BoardEntity) => boolean;
|
|
18
19
|
forcedRandomPicksBase: {
|
|
19
20
|
source: ForcedFaceOffEntity;
|
|
20
21
|
target: ForcedFaceOffEntity;
|
|
22
|
+
chosenCardId?: string;
|
|
21
23
|
}[];
|
|
22
24
|
onBattleStart: () => void;
|
|
23
25
|
};
|
package/dist/debug-state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"debug-state.js","sourceRoot":"","sources":["../src/debug-state.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAG;IACzB,MAAM,EAAE,KAAK;IACb,qBAAqB,EAAE,IAAqB;IAC5C,aAAa,EAAE,EAAwE;IACvF,iBAAiB,EAAE,EAAwE;IAE3F,iBAAiB,EAAE,
|
|
1
|
+
{"version":3,"file":"debug-state.js","sourceRoot":"","sources":["../src/debug-state.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAG;IACzB,MAAM,EAAE,KAAK;IACb,qBAAqB,EAAE,IAAqB;IAC5C,aAAa,EAAE,EAAwE;IACvF,iBAAiB,EAAE,EAAwE;IAE3F,iBAAiB,EAAE,EAA2F;IAC9G,eAAe,EAAE,CAAC,cAAmC,EAAE,YAAyB,EAAW,EAAE;QAC5F,IAAI,cAAc,CAAC,QAAQ,EAAE;YAC5B,OAAO,cAAc,CAAC,QAAQ,KAAK,YAAY,CAAC,QAAQ,CAAC;SACzD;QACD,IAAI,cAAc,CAAC,MAAM,EAAE;YAC1B,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,CAAC;YAClE,IAAI,cAAc,CAAC,MAAM,IAAI,IAAI,IAAI,cAAc,CAAC,MAAM,IAAI,IAAI,EAAE;gBACnE,OAAO,WAAW,IAAI,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,CAAC;aACrH;YACD,OAAO,WAAW,CAAC;SACnB;QACD,OAAO,CACN,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM;YAC7C,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,CAC7C,CAAC;IACH,CAAC;IACD,qBAAqB,EAAE,EAA2F;IAClH,aAAa,EAAE,GAAG,EAAE;QACnB,kBAAU,CAAC,aAAa,GAAG,CAAC,GAAG,kBAAU,CAAC,iBAAiB,CAAC,CAAC;QAC7D,kBAAU,CAAC,iBAAiB,GAAG,CAAC,GAAG,kBAAU,CAAC,qBAAqB,CAAC,CAAC;IACtE,CAAC;CACD,CAAC","sourcesContent":["import { BoardEntity } from './board-entity';\n\nexport const debugState = {\n\tactive: false,\n\tforcedCurrentAttacker: null as number | null,\n\tforcedFaceOff: [] as { attacker: ForcedFaceOffEntity; defender: ForcedFaceOffEntity }[],\n\tforcedFaceOffBase: [] as { attacker: ForcedFaceOffEntity; defender: ForcedFaceOffEntity }[],\n\t/** Forced random picks: source -> target. Matched by source entity (like face-offs match by attacker). Optional chosenCardId for card-pool picks (e.g. Apexis Guardian Volumizer). */\n\tforcedRandomPicks: [] as { source: ForcedFaceOffEntity; target: ForcedFaceOffEntity; chosenCardId?: string }[],\n\tisCorrectEntity: (proposedEntity: ForcedFaceOffEntity, actualEntity: BoardEntity): boolean => {\n\t\tif (proposedEntity.entityId) {\n\t\t\treturn proposedEntity.entityId === actualEntity.entityId;\n\t\t}\n\t\tif (proposedEntity.cardId) {\n\t\t\tconst cardMatches = proposedEntity.cardId === actualEntity.cardId;\n\t\t\tif (proposedEntity.attack != null && proposedEntity.health != null) {\n\t\t\t\treturn cardMatches && proposedEntity.attack === actualEntity.attack && proposedEntity.health === actualEntity.health;\n\t\t\t}\n\t\t\treturn cardMatches;\n\t\t}\n\t\treturn (\n\t\t\tproposedEntity.attack === actualEntity.attack &&\n\t\t\tproposedEntity.health === actualEntity.health\n\t\t);\n\t},\n\tforcedRandomPicksBase: [] as { source: ForcedFaceOffEntity; target: ForcedFaceOffEntity; chosenCardId?: string }[],\n\tonBattleStart: () => {\n\t\tdebugState.forcedFaceOff = [...debugState.forcedFaceOffBase];\n\t\tdebugState.forcedRandomPicks = [...debugState.forcedRandomPicksBase];\n\t},\n};\n\nexport interface ForcedFaceOffEntity {\n\tentityId?: number;\n\tcardId?: string;\n\tattack?: number;\n\thealth?: number;\n}\n"]}
|
|
@@ -9,6 +9,10 @@ const stats_1 = require("../simulation/stats");
|
|
|
9
9
|
const utils_2 = require("../utils");
|
|
10
10
|
const updateDivineShield = (entity, board, hero, otherHero, newValue, gameState) => {
|
|
11
11
|
var _a;
|
|
12
|
+
if (newValue === entity.divineShield) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
const previousValue = entity.divineShield;
|
|
12
16
|
entity.hadDivineShield = newValue || entity.divineShield || entity.hadDivineShield;
|
|
13
17
|
if (entity.strongDivineShield && newValue === false) {
|
|
14
18
|
entity.strongDivineShield = false;
|
|
@@ -28,6 +32,34 @@ const updateDivineShield = (entity, board, hero, otherHero, newValue, gameState)
|
|
|
28
32
|
12 * boardForDrake.filter((e) => e.cardId === "BG25_043_G").length;
|
|
29
33
|
entity.attack -= statsBonus;
|
|
30
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
|
+
newValue: newValue,
|
|
45
|
+
previousValue: previousValue,
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
for (const boardEntity of board) {
|
|
50
|
+
const onDivineShieldUpdatedImpl = _card_mappings_1.cardMappings[boardEntity.cardId];
|
|
51
|
+
if ((0, card_interface_1.hasOnDivineShieldUpdated)(onDivineShieldUpdatedImpl)) {
|
|
52
|
+
onDivineShieldUpdatedImpl.onDivineShieldUpdated(boardEntity, {
|
|
53
|
+
board: board,
|
|
54
|
+
hero: hero,
|
|
55
|
+
otherHero: otherHero,
|
|
56
|
+
gameState: gameState,
|
|
57
|
+
target: entity,
|
|
58
|
+
newValue: newValue,
|
|
59
|
+
previousValue: previousValue,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
31
63
|
if (entity.hadDivineShield && !entity.divineShield) {
|
|
32
64
|
const adapter = hero.trinkets
|
|
33
65
|
.filter((t) => t.cardId === "BG30_MagicItem_910")
|
|
@@ -36,34 +68,6 @@ const updateDivineShield = (entity, board, hero, otherHero, newValue, gameState)
|
|
|
36
68
|
(0, exports.updateDivineShield)(entity, board, hero, otherHero, true, gameState);
|
|
37
69
|
adapter.scriptDataNum1--;
|
|
38
70
|
}
|
|
39
|
-
for (const trinket of (_a = hero.trinkets) !== null && _a !== void 0 ? _a : []) {
|
|
40
|
-
const onDivineShieldUpdatedImpl = _card_mappings_1.cardMappings[trinket.cardId];
|
|
41
|
-
if ((0, card_interface_1.hasOnDivineShieldUpdated)(onDivineShieldUpdatedImpl)) {
|
|
42
|
-
onDivineShieldUpdatedImpl.onDivineShieldUpdated(trinket, {
|
|
43
|
-
board: board,
|
|
44
|
-
hero: hero,
|
|
45
|
-
otherHero: otherHero,
|
|
46
|
-
gameState: gameState,
|
|
47
|
-
target: entity,
|
|
48
|
-
newValue: false,
|
|
49
|
-
previousValue: true,
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
for (const boardEntity of board) {
|
|
54
|
-
const onDivineShieldUpdatedImpl = _card_mappings_1.cardMappings[boardEntity.cardId];
|
|
55
|
-
if ((0, card_interface_1.hasOnDivineShieldUpdated)(onDivineShieldUpdatedImpl)) {
|
|
56
|
-
onDivineShieldUpdatedImpl.onDivineShieldUpdated(boardEntity, {
|
|
57
|
-
board: board,
|
|
58
|
-
hero: hero,
|
|
59
|
-
otherHero: otherHero,
|
|
60
|
-
gameState: gameState,
|
|
61
|
-
target: entity,
|
|
62
|
-
newValue: false,
|
|
63
|
-
previousValue: true,
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
71
|
for (let i = 0; i < board.length; i++) {
|
|
68
72
|
if (board[i].cardId === "ICC_858") {
|
|
69
73
|
(0, stats_1.modifyStats)(board[i], board[i], 2, 0, board, hero, gameState);
|