@firestone-hs/simulate-bgs-battle 1.1.618 → 1.1.620
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/cards/card.interface.d.ts +10 -3
- package/dist/cards/card.interface.js +5 -3
- package/dist/cards/card.interface.js.map +1 -1
- package/dist/cards/impl/minion/admiral-eliza-goreblade.d.ts +2 -2
- package/dist/cards/impl/minion/admiral-eliza-goreblade.js +14 -8
- package/dist/cards/impl/minion/admiral-eliza-goreblade.js.map +1 -1
- package/dist/cards/impl/minion/arcane-cannoneer.d.ts +2 -2
- package/dist/cards/impl/minion/arcane-cannoneer.js +1 -4
- package/dist/cards/impl/minion/arcane-cannoneer.js.map +1 -1
- package/dist/cards/impl/minion/battlecruiser.d.ts +2 -2
- package/dist/cards/impl/minion/battlecruiser.js +1 -4
- package/dist/cards/impl/minion/battlecruiser.js.map +1 -1
- package/dist/cards/impl/minion/bigwig-bandit.d.ts +2 -2
- package/dist/cards/impl/minion/bigwig-bandit.js +1 -4
- package/dist/cards/impl/minion/bigwig-bandit.js.map +1 -1
- package/dist/cards/impl/minion/bile-spitter.d.ts +2 -2
- package/dist/cards/impl/minion/bile-spitter.js +1 -4
- package/dist/cards/impl/minion/bile-spitter.js.map +1 -1
- package/dist/cards/impl/minion/bloodsnout-warlord.d.ts +2 -2
- package/dist/cards/impl/minion/bloodsnout-warlord.js +1 -1
- package/dist/cards/impl/minion/bloodsnout-warlord.js.map +1 -1
- package/dist/cards/impl/minion/blue-whelp.d.ts +2 -2
- package/dist/cards/impl/minion/blue-whelp.js +1 -4
- package/dist/cards/impl/minion/blue-whelp.js.map +1 -1
- package/dist/cards/impl/minion/bonker.d.ts +2 -2
- package/dist/cards/impl/minion/bonker.js +1 -4
- package/dist/cards/impl/minion/bonker.js.map +1 -1
- package/dist/cards/impl/minion/campfire-shadow.d.ts +2 -2
- package/dist/cards/impl/minion/campfire-shadow.js +1 -4
- package/dist/cards/impl/minion/campfire-shadow.js.map +1 -1
- package/dist/cards/impl/minion/charmwing.d.ts +2 -2
- package/dist/cards/impl/minion/charmwing.js +1 -4
- package/dist/cards/impl/minion/charmwing.js.map +1 -1
- package/dist/cards/impl/minion/choral-mrrrglr.js +4 -6
- package/dist/cards/impl/minion/choral-mrrrglr.js.map +1 -1
- package/dist/cards/impl/minion/colossus.d.ts +2 -2
- package/dist/cards/impl/minion/colossus.js +1 -4
- package/dist/cards/impl/minion/colossus.js.map +1 -1
- package/dist/cards/impl/minion/exceptionnal-caretaker.d.ts +2 -2
- package/dist/cards/impl/minion/exceptionnal-caretaker.js +1 -4
- package/dist/cards/impl/minion/exceptionnal-caretaker.js.map +1 -1
- package/dist/cards/impl/minion/geared-guard.d.ts +2 -2
- package/dist/cards/impl/minion/geared-guard.js +1 -4
- package/dist/cards/impl/minion/geared-guard.js.map +1 -1
- package/dist/cards/impl/minion/greedy-snaketongue.d.ts +2 -2
- package/dist/cards/impl/minion/greedy-snaketongue.js +1 -4
- package/dist/cards/impl/minion/greedy-snaketongue.js.map +1 -1
- package/dist/cards/impl/minion/greenskeeper.d.ts +2 -2
- package/dist/cards/impl/minion/greenskeeper.js +1 -4
- package/dist/cards/impl/minion/greenskeeper.js.map +1 -1
- package/dist/cards/impl/minion/holo-rover.d.ts +2 -2
- package/dist/cards/impl/minion/holo-rover.js +1 -4
- package/dist/cards/impl/minion/holo-rover.js.map +1 -1
- package/dist/cards/impl/minion/hydralisk.d.ts +2 -2
- package/dist/cards/impl/minion/hydralisk.js +1 -4
- package/dist/cards/impl/minion/hydralisk.js.map +1 -1
- package/dist/cards/impl/minion/monstrous-macaw.d.ts +2 -2
- package/dist/cards/impl/minion/monstrous-macaw.js +1 -4
- package/dist/cards/impl/minion/monstrous-macaw.js.map +1 -1
- package/dist/cards/impl/minion/neon-agent.d.ts +2 -2
- package/dist/cards/impl/minion/neon-agent.js +1 -4
- package/dist/cards/impl/minion/neon-agent.js.map +1 -1
- package/dist/cards/impl/minion/niuzao.d.ts +2 -2
- package/dist/cards/impl/minion/niuzao.js +1 -4
- package/dist/cards/impl/minion/niuzao.js.map +1 -1
- package/dist/cards/impl/minion/primeval-monstrosity.d.ts +2 -2
- package/dist/cards/impl/minion/primeval-monstrosity.js +1 -1
- package/dist/cards/impl/minion/primeval-monstrosity.js.map +1 -1
- package/dist/cards/impl/minion/prodigious-tusker.d.ts +2 -2
- package/dist/cards/impl/minion/prodigious-tusker.js +1 -1
- package/dist/cards/impl/minion/prodigious-tusker.js.map +1 -1
- package/dist/cards/impl/minion/raptor-elder.js +2 -2
- package/dist/cards/impl/minion/raptor-elder.js.map +1 -1
- package/dist/cards/impl/minion/razorfen-vineweaver.d.ts +2 -2
- package/dist/cards/impl/minion/razorfen-vineweaver.js +1 -4
- package/dist/cards/impl/minion/razorfen-vineweaver.js.map +1 -1
- package/dist/cards/impl/minion/ripsnarl-captain.d.ts +2 -2
- package/dist/cards/impl/minion/ripsnarl-captain.js +12 -6
- package/dist/cards/impl/minion/ripsnarl-captain.js.map +1 -1
- package/dist/cards/impl/minion/roadboar.d.ts +2 -2
- package/dist/cards/impl/minion/roadboar.js +1 -4
- package/dist/cards/impl/minion/roadboar.js.map +1 -1
- package/dist/cards/impl/minion/sanguine-refiner.d.ts +2 -2
- package/dist/cards/impl/minion/sanguine-refiner.js +1 -4
- package/dist/cards/impl/minion/sanguine-refiner.js.map +1 -1
- package/dist/cards/impl/minion/scourge-harvester.js.map +1 -1
- package/dist/cards/impl/minion/sinodorei-straight-shot.d.ts +2 -2
- package/dist/cards/impl/minion/sinodorei-straight-shot.js +1 -4
- package/dist/cards/impl/minion/sinodorei-straight-shot.js.map +1 -1
- package/dist/cards/impl/minion/sleepy-supporter.d.ts +2 -2
- package/dist/cards/impl/minion/sleepy-supporter.js +1 -4
- package/dist/cards/impl/minion/sleepy-supporter.js.map +1 -1
- package/dist/cards/impl/minion/stomping-stegodon-enchantment.d.ts +2 -2
- package/dist/cards/impl/minion/stomping-stegodon-enchantment.js +1 -4
- package/dist/cards/impl/minion/stomping-stegodon-enchantment.js.map +1 -1
- package/dist/cards/impl/minion/stomping-stegodon.d.ts +2 -2
- package/dist/cards/impl/minion/stomping-stegodon.js +1 -4
- package/dist/cards/impl/minion/stomping-stegodon.js.map +1 -1
- package/dist/cards/impl/minion/transmuted-bramblewitch.d.ts +2 -2
- package/dist/cards/impl/minion/transmuted-bramblewitch.js +1 -4
- package/dist/cards/impl/minion/transmuted-bramblewitch.js.map +1 -1
- package/dist/cards/impl/minion/tusked-camper.d.ts +2 -2
- package/dist/cards/impl/minion/tusked-camper.js +1 -4
- package/dist/cards/impl/minion/tusked-camper.js.map +1 -1
- package/dist/cards/impl/minion/twilight-watcher.d.ts +2 -2
- package/dist/cards/impl/minion/twilight-watcher.js +16 -10
- package/dist/cards/impl/minion/twilight-watcher.js.map +1 -1
- package/dist/cards/impl/minion/vengeful-protector.d.ts +2 -2
- package/dist/cards/impl/minion/vengeful-protector.js +1 -4
- package/dist/cards/impl/minion/vengeful-protector.js.map +1 -1
- package/dist/cards/impl/minion/void-ray.d.ts +2 -2
- package/dist/cards/impl/minion/void-ray.js +11 -5
- package/dist/cards/impl/minion/void-ray.js.map +1 -1
- package/dist/cards/impl/minion/whirring-protector-enchantment.d.ts +2 -2
- package/dist/cards/impl/minion/whirring-protector-enchantment.js +1 -4
- package/dist/cards/impl/minion/whirring-protector-enchantment.js.map +1 -1
- package/dist/cards/impl/minion/whirring-protector.d.ts +2 -2
- package/dist/cards/impl/minion/whirring-protector.js +1 -4
- package/dist/cards/impl/minion/whirring-protector.js.map +1 -1
- package/dist/cards/impl/minion/yrel.d.ts +2 -2
- package/dist/cards/impl/minion/yrel.js +1 -4
- package/dist/cards/impl/minion/yrel.js.map +1 -1
- package/dist/cards/impl/trinket/all-purpose-kibble.d.ts +2 -2
- package/dist/cards/impl/trinket/all-purpose-kibble.js +6 -1
- package/dist/cards/impl/trinket/all-purpose-kibble.js.map +1 -1
- package/dist/cards/impl/trinket/faerie-dragon-scale.d.ts +2 -2
- package/dist/cards/impl/trinket/faerie-dragon-scale.js +1 -1
- package/dist/cards/impl/trinket/faerie-dragon-scale.js.map +1 -1
- package/dist/cards/impl/trinket/unholy-sanctum.js +3 -0
- package/dist/cards/impl/trinket/unholy-sanctum.js.map +1 -1
- package/dist/simulation/deathrattle-effects.js +2 -0
- package/dist/simulation/deathrattle-effects.js.map +1 -1
- package/dist/simulation/deathrattle-orchestration.js +3 -2
- package/dist/simulation/deathrattle-orchestration.js.map +1 -1
- package/dist/simulation/deathrattle-spawns.js +11 -3
- package/dist/simulation/deathrattle-spawns.js.map +1 -1
- package/dist/simulation/on-attack.d.ts +0 -1
- package/dist/simulation/on-attack.js +121 -90
- package/dist/simulation/on-attack.js.map +1 -1
- package/package.json +1 -1
|
@@ -3,10 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SanguineRefiner = void 0;
|
|
4
4
|
exports.SanguineRefiner = {
|
|
5
5
|
cardIds: ["BG33_885", "BG33_885_G"],
|
|
6
|
-
|
|
7
|
-
if (input.attacker !== minion) {
|
|
8
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
9
|
-
}
|
|
6
|
+
rally: (minion, input) => {
|
|
10
7
|
const mult = minion.cardId === "BG33_885_G" ? 2 : 1;
|
|
11
8
|
input.attackingHero.globalInfo.BloodGemAttackBonus += 1 * mult;
|
|
12
9
|
input.attackingHero.globalInfo.BloodGemHealthBonus += 1 * mult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sanguine-refiner.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/sanguine-refiner.ts"],"names":[],"mappings":";;;AAKa,QAAA,eAAe,
|
|
1
|
+
{"version":3,"file":"sanguine-refiner.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/sanguine-refiner.ts"],"names":[],"mappings":";;;AAKa,QAAA,eAAe,GAAc;IACzC,OAAO,EAAE,0BAAsE;IAC/E,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,mBAAmB,IAAI,CAAC,GAAG,IAAI,CAAC;QAC/D,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,mBAAmB,IAAI,CAAC,GAAG,IAAI,CAAC;QAC/D,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const SanguineRefiner: RallyCard = {\r\n\tcardIds: [CardIds.SanguineRefiner_BG33_885, CardIds.SanguineRefiner_BG33_885_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.SanguineRefiner_BG33_885_G ? 2 : 1;\r\n\t\tinput.attackingHero.globalInfo.BloodGemAttackBonus += 1 * mult;\r\n\t\tinput.attackingHero.globalInfo.BloodGemHealthBonus += 1 * mult;\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scourge-harvester.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/scourge-harvester.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,gBAAgB,GAAuB;IACnD,OAAO,EAAE,0BAAwE;
|
|
1
|
+
{"version":3,"file":"scourge-harvester.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/scourge-harvester.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,gBAAgB,GAAuB;IACnD,OAAO,EAAE,0BAAwE;IAGjF,cAAc,EAAE,CAAC,MAAmB,EAAE,KAAwB,EAAQ,EAAE;QACvE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,IACC,IAAA,uBAAe,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,qBAAI,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,EAC3G;YACD,IAAA,mBAAW,EACV,MAAM,EACN,MAAM,EACN,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,EAC3B,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,EAC3B,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,CACf,CAAC;SACF;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnOtherSpawnInput } from '../../../simulation/add-minion-to-board';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { OnOtherSpawnedCard } from '../../card.interface';\r\n\r\nexport const ScourgeHarvester: OnOtherSpawnedCard = {\r\n\tcardIds: [CardIds.ScourgeHarvester_BG33_114, CardIds.ScourgeHarvester_BG33_114_G],\r\n\t// 2025-08-20:This is bugged today, as it should be able to get revived by the spawns\r\n\t// https://replays.firestoneapp.com/?reviewId=dc1a69b7-d93d-4f3a-9878-ddf0bddb3784&turn=19&action=8\r\n\tonOtherSpawned: (minion: BoardEntity, input: OnOtherSpawnInput): void => {\r\n\t\tconst mult = minion.cardId === CardIds.ScourgeHarvester_BG33_114_G ? 2 : 1;\r\n\t\tif (\r\n\t\t\thasCorrectTribe(input.spawned, input.hero, Race.UNDEAD, input.gameState.anomalies, input.gameState.allCards)\r\n\t\t) {\r\n\t\t\tmodifyStats(\r\n\t\t\t\tminion,\r\n\t\t\t\tminion,\r\n\t\t\t\tinput.spawned.attack * mult,\r\n\t\t\t\tinput.spawned.health * mult,\r\n\t\t\t\tinput.board,\r\n\t\t\t\tinput.hero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const SindoreiStraightShot:
|
|
1
|
+
import { RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const SindoreiStraightShot: RallyCard;
|
|
@@ -5,10 +5,7 @@ const reborn_1 = require("../../../keywords/reborn");
|
|
|
5
5
|
const taunt_1 = require("../../../keywords/taunt");
|
|
6
6
|
exports.SindoreiStraightShot = {
|
|
7
7
|
cardIds: ["BG25_016", "BG25_016_G"],
|
|
8
|
-
|
|
9
|
-
if (minion !== input.attacker) {
|
|
10
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
11
|
-
}
|
|
8
|
+
rally: (minion, input) => {
|
|
12
9
|
(0, taunt_1.updateTaunt)(input.defendingEntity, false, input.defendingBoard, input.defendingHero, input.attackingHero, input.gameState);
|
|
13
10
|
(0, reborn_1.updateReborn)(input.defendingEntity, false, input.defendingBoard, input.defendingHero, input.attackingHero, input.gameState);
|
|
14
11
|
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sinodorei-straight-shot.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/sinodorei-straight-shot.ts"],"names":[],"mappings":";;;AAEA,qDAAwD;AACxD,mDAAsD;AAIzC,QAAA,oBAAoB,
|
|
1
|
+
{"version":3,"file":"sinodorei-straight-shot.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/sinodorei-straight-shot.ts"],"names":[],"mappings":";;;AAEA,qDAAwD;AACxD,mDAAsD;AAIzC,QAAA,oBAAoB,GAAc;IAC9C,OAAO,EAAE,0BAAgF;IACzF,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAA4D,EAAE;QAC9G,IAAA,mBAAW,EACV,KAAK,CAAC,eAAe,EACrB,KAAK,EACL,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,SAAS,CACf,CAAC;QACF,IAAA,qBAAY,EACX,KAAK,CAAC,eAAe,EACrB,KAAK,EACL,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,SAAS,CACf,CAAC;QACF,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { updateReborn } from '../../../keywords/reborn';\r\nimport { updateTaunt } from '../../../keywords/taunt';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const SindoreiStraightShot: RallyCard = {\r\n\tcardIds: [CardIds.SindoreiStraightShot_BG25_016, CardIds.SindoreiStraightShot_BG25_016_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput): { dmgDoneByAttacker: number; dmgDoneByDefender: number } => {\r\n\t\tupdateTaunt(\r\n\t\t\tinput.defendingEntity,\r\n\t\t\tfalse,\r\n\t\t\tinput.defendingBoard,\r\n\t\t\tinput.defendingHero,\r\n\t\t\tinput.attackingHero,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t\tupdateReborn(\r\n\t\t\tinput.defendingEntity,\r\n\t\t\tfalse,\r\n\t\t\tinput.defendingBoard,\r\n\t\t\tinput.defendingHero,\r\n\t\t\tinput.attackingHero,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const SleepySupporter:
|
|
1
|
+
import { RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const SleepySupporter: RallyCard;
|
|
@@ -7,10 +7,7 @@ const stats_1 = require("../../../simulation/stats");
|
|
|
7
7
|
const utils_2 = require("../../../utils");
|
|
8
8
|
exports.SleepySupporter = {
|
|
9
9
|
cardIds: ["BG33_241", "BG33_241_G"],
|
|
10
|
-
|
|
11
|
-
if (input.attacker !== minion) {
|
|
12
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
13
|
-
}
|
|
10
|
+
rally: (minion, input) => {
|
|
14
11
|
const mult = minion.cardId === "BG33_241_G" ? 2 : 1;
|
|
15
12
|
const candidates = input.attackingBoard.filter((e) => e !== minion &&
|
|
16
13
|
(0, utils_2.hasCorrectTribe)(e, input.attackingHero, reference_data_1.Race.DRAGON, input.gameState.anomalies, input.gameState.allCards));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sleepy-supporter.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/sleepy-supporter.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAE7D,mDAAqD;AAErD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,eAAe,
|
|
1
|
+
{"version":3,"file":"sleepy-supporter.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/sleepy-supporter.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAE7D,mDAAqD;AAErD,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,eAAe,GAAc;IACzC,OAAO,EAAE,0BAAsE;IAC/E,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,KAAK,MAAM;YACZ,IAAA,uBAAe,EACd,CAAC,EACD,KAAK,CAAC,aAAa,EACnB,qBAAI,CAAC,MAAM,EACX,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,CACF,CAAC;QACF,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,UAAU,CAAC,CAAC;QACtC,IAAI,CAAC,CAAC,MAAM,EAAE;YACb,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC5G;QACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { pickRandom } from '../../../services/utils';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const SleepySupporter: RallyCard = {\r\n\tcardIds: [CardIds.SleepySupporter_BG33_241, CardIds.SleepySupporter_BG33_241_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.SleepySupporter_BG33_241_G ? 2 : 1;\r\n\t\tconst candidates = input.attackingBoard.filter(\r\n\t\t\t(e) =>\r\n\t\t\t\te !== minion &&\r\n\t\t\t\thasCorrectTribe(\r\n\t\t\t\t\te,\r\n\t\t\t\t\tinput.attackingHero,\r\n\t\t\t\t\tRace.DRAGON,\r\n\t\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t\tinput.gameState.allCards,\r\n\t\t\t\t),\r\n\t\t);\r\n\t\tconst target = pickRandom(candidates);\r\n\t\tif (!!target) {\r\n\t\t\tmodifyStats(target, minion, 2 * mult, 3 * mult, input.attackingBoard, input.attackingHero, input.gameState);\r\n\t\t}\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const StompingStegodonEnchantment:
|
|
1
|
+
import { RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const StompingStegodonEnchantment: RallyCard;
|
|
@@ -10,11 +10,8 @@ exports.StompingStegodonEnchantment = {
|
|
|
10
10
|
"BG33_840e2",
|
|
11
11
|
"BG33_840_Ge2",
|
|
12
12
|
],
|
|
13
|
-
|
|
13
|
+
rally: (enchantment, input) => {
|
|
14
14
|
var _a;
|
|
15
|
-
if (!input.isSelfAttacking) {
|
|
16
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
17
|
-
}
|
|
18
15
|
const mult = enchantment.cardId === "BG33_840_Ge2" ? 2 : 1;
|
|
19
16
|
const nbOfTriggers = (_a = enchantment.repeats) !== null && _a !== void 0 ? _a : 1;
|
|
20
17
|
const enchantmentCardIdToAdd = enchantment.cardId === "BG33_840_Ge2"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stomping-stegodon-enchantment.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/stomping-stegodon-enchantment.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,qDAAwD;AACxD,0CAAiD;AAEjD,2DAAqF;AAExE,QAAA,2BAA2B,
|
|
1
|
+
{"version":3,"file":"stomping-stegodon-enchantment.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/stomping-stegodon-enchantment.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,qDAAwD;AACxD,0CAAiD;AAEjD,2DAAqF;AAExE,QAAA,2BAA2B,GAAc;IACrD,OAAO,EAAE;;;KAGR;IACD,KAAK,EAAE,CAAC,WAA6B,EAAE,KAAoB,EAAE,EAAE;;QAC9D,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,mBAA8D,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtG,MAAM,YAAY,GAAG,MAAA,WAAW,CAAC,OAAO,mCAAI,CAAC,CAAC;QAC9C,MAAM,sBAAsB,GAC3B,WAAW,CAAC,MAAM,mBAA8D;YAC/E,CAAC;YACD,CAAC,aAAwD,CAAC;QAC5D,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,KAAK,KAAK,CAAC,QAAQ;YACpB,IAAA,uBAAe,EACd,CAAC,EACD,KAAK,CAAC,aAAa,EACnB,qBAAI,CAAC,KAAK,EACV,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,CACF,CAAC;QACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YACnC,IAAA,mBAAW,EACV,SAAS,EACT,KAAK,CAAC,QAAQ,EACd,0CAAsB,GAAG,YAAY,GAAG,IAAI,EAC5C,0CAAsB,GAAG,YAAY,GAAG,IAAI,EAC5C,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,SAAS,CACf,CAAC;YACF,IAAI,mBAAmB,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,sBAAsB,CAAC,CAAC;YAClG,IAAI,CAAC,mBAAmB,EAAE;gBACzB,mBAAmB,GAAG;oBACrB,MAAM,EAAE,sBAAsB;oBAC9B,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ;oBACvC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,eAAe,EAAE;oBACrD,OAAO,EAAE,CAAC;iBACV,CAAC;gBACF,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;aACjD;YACD,mBAAmB,CAAC,OAAO,IAAI,YAAY,CAAC;SAC5C;QAED,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardEnchantment } from '../../../board-entity';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { RallyCard } from '../../card.interface';\r\nimport { stompingStegodonAttack, stompingStegodonHealth } from './stomping-stegodon';\r\n\r\nexport const StompingStegodonEnchantment: RallyCard = {\r\n\tcardIds: [\r\n\t\tCardIds.StompingStegodon_StompingEnchantment_BG33_840e2,\r\n\t\tCardIds.StompingStegodon_StompingEnchantment_BG33_840_Ge2,\r\n\t],\r\n\trally: (enchantment: BoardEnchantment, input: OnAttackInput) => {\r\n\t\tconst mult = enchantment.cardId === CardIds.StompingStegodon_StompingEnchantment_BG33_840_Ge2 ? 2 : 1;\r\n\t\tconst nbOfTriggers = enchantment.repeats ?? 1;\r\n\t\tconst enchantmentCardIdToAdd =\r\n\t\t\tenchantment.cardId === CardIds.StompingStegodon_StompingEnchantment_BG33_840_Ge2\r\n\t\t\t\t? CardIds.StompingStegodon_StompingEnchantment_BG33_840_Ge2\r\n\t\t\t\t: CardIds.StompingStegodon_StompingEnchantment_BG33_840e2;\r\n\t\tconst candidates = input.attackingBoard.filter(\r\n\t\t\t(e) =>\r\n\t\t\t\te !== input.attacker &&\r\n\t\t\t\thasCorrectTribe(\r\n\t\t\t\t\te,\r\n\t\t\t\t\tinput.attackingHero,\r\n\t\t\t\t\tRace.BEAST,\r\n\t\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t\tinput.gameState.allCards,\r\n\t\t\t\t),\r\n\t\t);\r\n\t\tfor (const candidate of candidates) {\r\n\t\t\tmodifyStats(\r\n\t\t\t\tcandidate,\r\n\t\t\t\tinput.attacker,\r\n\t\t\t\tstompingStegodonAttack * nbOfTriggers * mult,\r\n\t\t\t\tstompingStegodonHealth * nbOfTriggers * mult,\r\n\t\t\t\tinput.attackingBoard,\r\n\t\t\t\tinput.attackingHero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t\tlet existingEnchantment = candidate.enchantments.find((e) => e.cardId === enchantmentCardIdToAdd);\r\n\t\t\tif (!existingEnchantment) {\r\n\t\t\t\texistingEnchantment = {\r\n\t\t\t\t\tcardId: enchantmentCardIdToAdd,\r\n\t\t\t\t\toriginEntityId: input.attacker.entityId,\r\n\t\t\t\t\ttiming: input.gameState.sharedState.currentEntityId++,\r\n\t\t\t\t\trepeats: 0,\r\n\t\t\t\t};\r\n\t\t\t\tcandidate.enchantments.push(existingEnchantment);\r\n\t\t\t}\r\n\t\t\texistingEnchantment.repeats += nbOfTriggers;\r\n\t\t}\r\n\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RallyCard } from '../../card.interface';
|
|
2
2
|
export declare const stompingStegodonAttack = 2;
|
|
3
3
|
export declare const stompingStegodonHealth = 0;
|
|
4
|
-
export declare const StompingStegodon:
|
|
4
|
+
export declare const StompingStegodon: RallyCard;
|
|
@@ -8,10 +8,7 @@ exports.stompingStegodonAttack = 2;
|
|
|
8
8
|
exports.stompingStegodonHealth = 0;
|
|
9
9
|
exports.StompingStegodon = {
|
|
10
10
|
cardIds: ["BG33_840", "BG33_840_G"],
|
|
11
|
-
|
|
12
|
-
if (input.attacker !== minion) {
|
|
13
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
14
|
-
}
|
|
11
|
+
rally: (minion, input) => {
|
|
15
12
|
const debug = minion.entityId === 10597;
|
|
16
13
|
const mult = minion.cardId === "BG33_840_G" ? 2 : 1;
|
|
17
14
|
const candidates = input.attackingBoard.filter((e) => e !== minion &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stomping-stegodon.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/stomping-stegodon.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,sBAAsB,GAAG,CAAC,CAAC;AAC3B,QAAA,sBAAsB,GAAG,CAAC,CAAC;AAE3B,QAAA,gBAAgB,
|
|
1
|
+
{"version":3,"file":"stomping-stegodon.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/stomping-stegodon.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,sBAAsB,GAAG,CAAC,CAAC;AAC3B,QAAA,sBAAsB,GAAG,CAAC,CAAC;AAE3B,QAAA,gBAAgB,GAAc;IAC1C,OAAO,EAAE,0BAAwE;IACjF,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAwC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,KAAK,MAAM;YACZ,IAAA,uBAAe,EACd,CAAC,EACD,KAAK,CAAC,aAAa,EACnB,qBAAI,CAAC,KAAK,EACV,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,CACF,CAAC;QACF,MAAM,sBAAsB,GAC3B,MAAM,CAAC,MAAM,iBAAwC;YACpD,CAAC;YACD,CAAC,aAAwD,CAAC;QAC5D,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;YACnC,IAAA,mBAAW,EACV,SAAS,EACT,MAAM,EACN,8BAAsB,GAAG,IAAI,EAC7B,8BAAsB,GAAG,IAAI,EAC7B,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,SAAS,CACf,CAAC;YAEF,IAAI,mBAAmB,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,sBAAsB,CAAC,CAAC;YAClG,IAAI,CAAC,mBAAmB,EAAE;gBACzB,mBAAmB,GAAG;oBACrB,MAAM,EAAE,sBAAsB;oBAC9B,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ;oBACvC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,eAAe,EAAE;oBACrD,OAAO,EAAE,CAAC;iBACV,CAAC;gBACF,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;aACjD;YACD,mBAAmB,CAAC,OAAO,IAAI,CAAC,CAAC;SACjC;QAED,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const stompingStegodonAttack = 2;\r\nexport const stompingStegodonHealth = 0;\r\n\r\nexport const StompingStegodon: RallyCard = {\r\n\tcardIds: [CardIds.StompingStegodon_BG33_840, CardIds.StompingStegodon_BG33_840_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst debug = minion.entityId === 10597;\r\n\t\tconst mult = minion.cardId === CardIds.StompingStegodon_BG33_840_G ? 2 : 1;\r\n\t\tconst candidates = input.attackingBoard.filter(\r\n\t\t\t(e) =>\r\n\t\t\t\te !== minion &&\r\n\t\t\t\thasCorrectTribe(\r\n\t\t\t\t\te,\r\n\t\t\t\t\tinput.attackingHero,\r\n\t\t\t\t\tRace.BEAST,\r\n\t\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t\tinput.gameState.allCards,\r\n\t\t\t\t),\r\n\t\t);\r\n\t\tconst enchantmentCardIdToAdd =\r\n\t\t\tminion.cardId === CardIds.StompingStegodon_BG33_840_G\r\n\t\t\t\t? CardIds.StompingStegodon_StompingEnchantment_BG33_840_Ge2\r\n\t\t\t\t: CardIds.StompingStegodon_StompingEnchantment_BG33_840e2;\r\n\t\tfor (const candidate of candidates) {\r\n\t\t\tmodifyStats(\r\n\t\t\t\tcandidate,\r\n\t\t\t\tminion,\r\n\t\t\t\tstompingStegodonAttack * mult,\r\n\t\t\t\tstompingStegodonHealth * mult,\r\n\t\t\t\tinput.attackingBoard,\r\n\t\t\t\tinput.attackingHero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\r\n\t\t\tlet existingEnchantment = candidate.enchantments.find((e) => e.cardId === enchantmentCardIdToAdd);\r\n\t\t\tif (!existingEnchantment) {\r\n\t\t\t\texistingEnchantment = {\r\n\t\t\t\t\tcardId: enchantmentCardIdToAdd,\r\n\t\t\t\t\toriginEntityId: input.attacker.entityId,\r\n\t\t\t\t\ttiming: input.gameState.sharedState.currentEntityId++,\r\n\t\t\t\t\trepeats: 0,\r\n\t\t\t\t};\r\n\t\t\t\tcandidate.enchantments.push(existingEnchantment);\r\n\t\t\t}\r\n\t\t\texistingEnchantment.repeats += 1;\r\n\t\t}\r\n\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { DefaultChargesCard,
|
|
2
|
-
export declare const TransmutedBramblewitch:
|
|
1
|
+
import { DefaultChargesCard, RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const TransmutedBramblewitch: RallyCard & DefaultChargesCard;
|
|
@@ -5,10 +5,7 @@ const stats_1 = require("../../../simulation/stats");
|
|
|
5
5
|
exports.TransmutedBramblewitch = {
|
|
6
6
|
cardIds: ["BG27_013", "BG27_013_G"],
|
|
7
7
|
defaultCharges: (entity) => (entity.cardId === "BG27_013_G" ? 2 : 1),
|
|
8
|
-
|
|
9
|
-
if (minion !== input.attacker) {
|
|
10
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
11
|
-
}
|
|
8
|
+
rally: (minion, input) => {
|
|
12
9
|
if (minion.abiityChargesLeft > 0) {
|
|
13
10
|
(0, stats_1.setEntityStats)(input.defendingEntity, 3, 3, input.defendingBoard, input.defendingHero, input.gameState);
|
|
14
11
|
minion.abiityChargesLeft--;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transmuted-bramblewitch.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/transmuted-bramblewitch.ts"],"names":[],"mappings":";;;AAGA,qDAA2D;AAG9C,QAAA,sBAAsB,
|
|
1
|
+
{"version":3,"file":"transmuted-bramblewitch.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/transmuted-bramblewitch.ts"],"names":[],"mappings":";;;AAGA,qDAA2D;AAG9C,QAAA,sBAAsB,GAAmC;IACrE,OAAO,EAAE,0BAAoF;IAC7F,cAAc,EAAE,CAAC,MAAmB,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,iBAA8C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9G,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAA4D,EAAE;QAC9G,IAAI,MAAM,CAAC,iBAAiB,GAAG,CAAC,EAAE;YACjC,IAAA,sBAAc,EAAC,KAAK,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YACxG,MAAM,CAAC,iBAAiB,EAAE,CAAC;SAC3B;QACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { setEntityStats } from '../../../simulation/stats';\r\nimport { DefaultChargesCard, RallyCard } from '../../card.interface';\r\n\r\nexport const TransmutedBramblewitch: RallyCard & DefaultChargesCard = {\r\n\tcardIds: [CardIds.TransmutedBramblewitch_BG27_013, CardIds.TransmutedBramblewitch_BG27_013_G],\r\n\tdefaultCharges: (entity: BoardEntity) => (entity.cardId === CardIds.TransmutedBramblewitch_BG27_013_G ? 2 : 1),\r\n\trally: (minion: BoardEntity, input: OnAttackInput): { dmgDoneByAttacker: number; dmgDoneByDefender: number } => {\r\n\t\tif (minion.abiityChargesLeft > 0) {\r\n\t\t\tsetEntityStats(input.defendingEntity, 3, 3, input.defendingBoard, input.defendingHero, input.gameState);\r\n\t\t\tminion.abiityChargesLeft--;\r\n\t\t}\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const TuskedCamper:
|
|
1
|
+
import { RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const TuskedCamper: RallyCard;
|
|
@@ -4,10 +4,7 @@ exports.TuskedCamper = void 0;
|
|
|
4
4
|
const blood_gems_1 = require("../../../simulation/blood-gems");
|
|
5
5
|
exports.TuskedCamper = {
|
|
6
6
|
cardIds: ["BG33_886", "BG33_886_G"],
|
|
7
|
-
|
|
8
|
-
if (minion !== input.attacker) {
|
|
9
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
10
|
-
}
|
|
7
|
+
rally: (minion, input) => {
|
|
11
8
|
const mult = minion.cardId === "BG33_886_G" ? 2 : 1;
|
|
12
9
|
(0, blood_gems_1.playBloodGemsOn)(minion, minion, 1 * mult, input.attackingBoard, input.attackingHero, input.gameState);
|
|
13
10
|
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tusked-camper.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/tusked-camper.ts"],"names":[],"mappings":";;;AAEA,+DAAiE;AAIpD,QAAA,YAAY,
|
|
1
|
+
{"version":3,"file":"tusked-camper.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/tusked-camper.ts"],"names":[],"mappings":";;;AAEA,+DAAiE;AAIpD,QAAA,YAAY,GAAc;IACtC,OAAO,EAAE,0BAAgE;IACzE,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAoC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,IAAA,4BAAe,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtG,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { playBloodGemsOn } from '../../../simulation/blood-gems';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const TuskedCamper: RallyCard = {\r\n\tcardIds: [CardIds.TuskedCamper_BG33_886, CardIds.TuskedCamper_BG33_886_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.TuskedCamper_BG33_886_G ? 2 : 1;\r\n\t\tplayBloodGemsOn(minion, minion, 1 * mult, input.attackingBoard, input.attackingHero, input.gameState);\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const TwilightWatcher:
|
|
1
|
+
import { OnWheneverAnotherMinionAttacksCard, RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const TwilightWatcher: OnWheneverAnotherMinionAttacksCard & RallyCard;
|
|
@@ -6,16 +6,22 @@ const stats_1 = require("../../../simulation/stats");
|
|
|
6
6
|
const utils_1 = require("../../../utils");
|
|
7
7
|
exports.TwilightWatcher = {
|
|
8
8
|
cardIds: ["BG33_245", "BG33_245_G"],
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const candidates = input.attackingBoard.filter((e) => (0, utils_1.hasCorrectTribe)(e, input.attackingHero, reference_data_1.Race.DRAGON, input.gameState.anomalies, input.gameState.allCards));
|
|
15
|
-
for (const target of candidates) {
|
|
16
|
-
(0, stats_1.modifyStats)(target, minion, 1 * mult, 2 * mult, input.attackingBoard, input.attackingHero, input.gameState);
|
|
17
|
-
}
|
|
18
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
9
|
+
onWheneverAnotherMinionAttacks: (minion, input) => {
|
|
10
|
+
return process(minion, input);
|
|
11
|
+
},
|
|
12
|
+
rally: (minion, input) => {
|
|
13
|
+
return process(minion, input);
|
|
19
14
|
},
|
|
20
15
|
};
|
|
16
|
+
const process = (minion, input) => {
|
|
17
|
+
if (!(0, utils_1.hasCorrectTribe)(input.attacker, input.attackingHero, reference_data_1.Race.DRAGON, input.gameState.anomalies, input.gameState.allCards)) {
|
|
18
|
+
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
19
|
+
}
|
|
20
|
+
const mult = minion.cardId === "BG33_245_G" ? 2 : 1;
|
|
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
|
+
for (const target of candidates) {
|
|
23
|
+
(0, stats_1.modifyStats)(target, minion, 1 * mult, 2 * mult, input.attackingBoard, input.attackingHero, input.gameState);
|
|
24
|
+
}
|
|
25
|
+
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
26
|
+
};
|
|
21
27
|
//# sourceMappingURL=twilight-watcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"twilight-watcher.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/twilight-watcher.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,eAAe,
|
|
1
|
+
{"version":3,"file":"twilight-watcher.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/twilight-watcher.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,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,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;KAC5G;IACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;AACvD,CAAC,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\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(target, minion, 1 * mult, 2 * mult, input.attackingBoard, input.attackingHero, input.gameState);\r\n\t}\r\n\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const VengefulProtector:
|
|
1
|
+
import { RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const VengefulProtector: RallyCard;
|
|
@@ -4,10 +4,7 @@ exports.VengefulProtector = void 0;
|
|
|
4
4
|
const stats_1 = require("../../../simulation/stats");
|
|
5
5
|
exports.VengefulProtector = {
|
|
6
6
|
cardIds: ["BG33_247", "BG33_247_G"],
|
|
7
|
-
|
|
8
|
-
if (input.attacker !== minion) {
|
|
9
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
10
|
-
}
|
|
7
|
+
rally: (minion, input) => {
|
|
11
8
|
const mult = minion.cardId === "BG33_247_G" ? 2 : 1;
|
|
12
9
|
const candidates = input.attackingBoard.filter((e) => e !== minion);
|
|
13
10
|
for (const target of candidates) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vengeful-protector.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/vengeful-protector.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,iBAAiB,
|
|
1
|
+
{"version":3,"file":"vengeful-protector.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/vengeful-protector.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,iBAAiB,GAAc;IAC3C,OAAO,EAAE,0BAA0E;IACnF,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;QACpE,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE;YAChC,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC5G;QACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const VengefulProtector: RallyCard = {\r\n\tcardIds: [CardIds.VengefulProtector_BG33_247, CardIds.VengefulProtector_BG33_247_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.VengefulProtector_BG33_247_G ? 2 : 1;\r\n\t\tconst candidates = input.attackingBoard.filter((e) => e !== minion);\r\n\t\tfor (const target of candidates) {\r\n\t\t\tmodifyStats(target, minion, 3 * mult, 3 * mult, input.attackingBoard, input.attackingHero, input.gameState);\r\n\t\t}\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const VoidRay:
|
|
1
|
+
import { OnWheneverAnotherMinionAttacksCard, RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const VoidRay: OnWheneverAnotherMinionAttacksCard & RallyCard;
|
|
@@ -4,11 +4,17 @@ exports.VoidRay = void 0;
|
|
|
4
4
|
const stats_1 = require("../../../simulation/stats");
|
|
5
5
|
exports.VoidRay = {
|
|
6
6
|
cardIds: ["BG31_HERO_802pt5", "BG31_HERO_802pt5_G"],
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
(0, stats_1.modifyStats)(input.attacker, minion, 5 * mult, 0, input.attackingBoard, input.attackingHero, input.gameState);
|
|
10
|
-
(0, stats_1.modifyStats)(minion, minion, 5 * mult, 0, input.attackingBoard, input.attackingHero, input.gameState);
|
|
11
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
7
|
+
onWheneverAnotherMinionAttacks: (minion, input) => {
|
|
8
|
+
return process(minion, input);
|
|
12
9
|
},
|
|
10
|
+
rally: (minion, input) => {
|
|
11
|
+
return process(minion, input);
|
|
12
|
+
},
|
|
13
|
+
};
|
|
14
|
+
const process = (minion, input) => {
|
|
15
|
+
const mult = minion.cardId === "BG31_HERO_802pt5_G" ? 2 : 1;
|
|
16
|
+
(0, stats_1.modifyStats)(input.attacker, minion, 5 * mult, 0, input.attackingBoard, input.attackingHero, input.gameState);
|
|
17
|
+
(0, stats_1.modifyStats)(minion, minion, 5 * mult, 0, input.attackingBoard, input.attackingHero, input.gameState);
|
|
18
|
+
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
13
19
|
};
|
|
14
20
|
//# sourceMappingURL=void-ray.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"void-ray.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/void-ray.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"void-ray.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/void-ray.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,OAAO,GAAmD;IACtE,OAAO,EAAE,0CAAoF;IAC7F,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,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,yBAAuC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,IAAA,mBAAW,EAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7G,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACrG,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;AACvD,CAAC,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { OnWheneverAnotherMinionAttacksCard, RallyCard } from '../../card.interface';\r\n\r\nexport const VoidRay: OnWheneverAnotherMinionAttacksCard & RallyCard = {\r\n\tcardIds: [CardIds.WarpGate_VoidRayToken_BG31_HERO_802pt5, CardIds.VoidRay_BG31_HERO_802pt5_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\tconst mult = minion.cardId === CardIds.VoidRay_BG31_HERO_802pt5_G ? 2 : 1;\r\n\tmodifyStats(input.attacker, minion, 5 * mult, 0, input.attackingBoard, input.attackingHero, input.gameState);\r\n\tmodifyStats(minion, minion, 5 * mult, 0, input.attackingBoard, input.attackingHero, input.gameState);\r\n\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const WhirringProtectorEnchantment:
|
|
1
|
+
import { RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const WhirringProtectorEnchantment: RallyCard;
|
|
@@ -7,10 +7,7 @@ exports.WhirringProtectorEnchantment = {
|
|
|
7
7
|
"BG33_807e",
|
|
8
8
|
"BG33_807_Ge",
|
|
9
9
|
],
|
|
10
|
-
|
|
11
|
-
if (!input.isSelfAttacking) {
|
|
12
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
13
|
-
}
|
|
10
|
+
rally: (enchantment, input) => {
|
|
14
11
|
const mult = enchantment.cardId === "BG33_807_Ge" ? 2 : 1;
|
|
15
12
|
const targets = input.attackingBoard.filter((e) => e !== input.attacker);
|
|
16
13
|
for (const target of targets) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whirring-protector-enchantment.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/whirring-protector-enchantment.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,4BAA4B,
|
|
1
|
+
{"version":3,"file":"whirring-protector-enchantment.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/whirring-protector-enchantment.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,4BAA4B,GAAc;IACtD,OAAO,EAAE;;;KAGR;IACD,KAAK,EAAE,CAAC,WAAwB,EAAE,KAAoB,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,kBAAuE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/G,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC;QACzE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC7B,IAAA,mBAAW,EAAC,MAAM,EAAE,WAAW,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SAC1G;QACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const WhirringProtectorEnchantment: RallyCard = {\r\n\tcardIds: [\r\n\t\tCardIds.WhirringProtector_WhirringProtectorEnchantment_BG33_807e,\r\n\t\tCardIds.WhirringProtector_WhirringProtectorEnchantment_BG33_807_Ge,\r\n\t],\r\n\trally: (enchantment: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst mult = enchantment.cardId === CardIds.WhirringProtector_WhirringProtectorEnchantment_BG33_807_Ge ? 2 : 1;\r\n\t\tconst targets = input.attackingBoard.filter((e) => e !== input.attacker);\r\n\t\tfor (const target of targets) {\r\n\t\t\tmodifyStats(target, enchantment, 5 * mult, 0, input.attackingBoard, input.attackingHero, input.gameState);\r\n\t\t}\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const WhirringProtector:
|
|
1
|
+
import { RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const WhirringProtector: RallyCard;
|
|
@@ -4,10 +4,7 @@ exports.WhirringProtector = void 0;
|
|
|
4
4
|
const stats_1 = require("../../../simulation/stats");
|
|
5
5
|
exports.WhirringProtector = {
|
|
6
6
|
cardIds: ["BG33_807", "BG33_807_G"],
|
|
7
|
-
|
|
8
|
-
if (!input.isSelfAttacking) {
|
|
9
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
10
|
-
}
|
|
7
|
+
rally: (minion, input) => {
|
|
11
8
|
const mult = minion.cardId === "BG33_807_G" ? 2 : 1;
|
|
12
9
|
const targets = input.attackingBoard.filter((e) => e !== minion);
|
|
13
10
|
for (const target of targets) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whirring-protector.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/whirring-protector.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,iBAAiB,
|
|
1
|
+
{"version":3,"file":"whirring-protector.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/whirring-protector.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,iBAAiB,GAAc;IAC3C,OAAO,EAAE,0BAA0E;IACnF,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAAyC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;QACjE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC7B,IAAA,mBAAW,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;SACrG;QACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const WhirringProtector: RallyCard = {\r\n\tcardIds: [CardIds.WhirringProtector_BG33_807, CardIds.WhirringProtector_BG33_807_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.WhirringProtector_BG33_807_G ? 2 : 1;\r\n\t\tconst targets = input.attackingBoard.filter((e) => e !== minion);\r\n\t\tfor (const target of targets) {\r\n\t\t\tmodifyStats(target, minion, 5 * mult, 0, input.attackingBoard, input.attackingHero, input.gameState);\r\n\t\t}\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const Yrel:
|
|
1
|
+
import { RallyCard } from '../../card.interface';
|
|
2
|
+
export declare const Yrel: RallyCard;
|
|
@@ -4,10 +4,7 @@ exports.Yrel = void 0;
|
|
|
4
4
|
const utils_1 = require("../../../utils");
|
|
5
5
|
exports.Yrel = {
|
|
6
6
|
cardIds: ["BG23_350", "BG23_350_G"],
|
|
7
|
-
|
|
8
|
-
if (minion !== input.attacker) {
|
|
9
|
-
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
10
|
-
}
|
|
7
|
+
rally: (minion, input) => {
|
|
11
8
|
const mult = minion.cardId === "BG23_350_G" ? 2 : 1;
|
|
12
9
|
(0, utils_1.grantStatsToMinionsOfEachType)(input.attacker, input.attackingBoard, input.attackingHero, 1 * mult, 2 * mult, input.gameState);
|
|
13
10
|
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yrel.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/yrel.ts"],"names":[],"mappings":";;;AAGA,0CAA+D;AAGlD,QAAA,IAAI,
|
|
1
|
+
{"version":3,"file":"yrel.js","sourceRoot":"","sources":["../../../../src/cards/impl/minion/yrel.ts"],"names":[],"mappings":";;;AAGA,0CAA+D;AAGlD,QAAA,IAAI,GAAc;IAC9B,OAAO,EAAE,0BAAgD;IACzD,KAAK,EAAE,CAAC,MAAmB,EAAE,KAAoB,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,iBAA4B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,IAAA,qCAA6B,EAC5B,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,CAAC,GAAG,IAAI,EACR,CAAC,GAAG,IAAI,EACR,KAAK,CAAC,SAAS,CACf,CAAC;QACF,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardEntity } from '../../../board-entity';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { grantStatsToMinionsOfEachType } from '../../../utils';\r\nimport { RallyCard } from '../../card.interface';\r\n\r\nexport const Yrel: RallyCard = {\r\n\tcardIds: [CardIds.Yrel_BG23_350, CardIds.Yrel_BG23_350_G],\r\n\trally: (minion: BoardEntity, input: OnAttackInput) => {\r\n\t\tconst mult = minion.cardId === CardIds.Yrel_BG23_350_G ? 2 : 1;\r\n\t\tgrantStatsToMinionsOfEachType(\r\n\t\t\tinput.attacker,\r\n\t\t\tinput.attackingBoard,\r\n\t\t\tinput.attackingHero,\r\n\t\t\t1 * mult,\r\n\t\t\t2 * mult,\r\n\t\t\tinput.gameState,\r\n\t\t);\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const AllPurposeKibble:
|
|
1
|
+
import { OnWheneverAnotherMinionAttacksCard } from '../../card.interface';
|
|
2
|
+
export declare const AllPurposeKibble: OnWheneverAnotherMinionAttacksCard;
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AllPurposeKibble = void 0;
|
|
4
|
+
const reference_data_1 = require("@firestone-hs/reference-data");
|
|
4
5
|
const stats_1 = require("../../../simulation/stats");
|
|
6
|
+
const utils_1 = require("../../../utils");
|
|
5
7
|
exports.AllPurposeKibble = {
|
|
6
8
|
cardIds: ["BG32_MagicItem_200"],
|
|
7
|
-
|
|
9
|
+
onWheneverAnotherMinionAttacks: (trinket, input) => {
|
|
10
|
+
if (!(0, utils_1.hasCorrectTribe)(input.attacker, input.attackingHero, reference_data_1.Race.BEAST, input.gameState.anomalies, input.gameState.allCards)) {
|
|
11
|
+
return { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };
|
|
12
|
+
}
|
|
8
13
|
const buff = trinket.scriptDataNum1 || 2;
|
|
9
14
|
(0, stats_1.modifyStats)(input.attacker, trinket, buff, 0, input.attackingBoard, input.attackingHero, input.gameState);
|
|
10
15
|
trinket.scriptDataNum1 = (trinket.scriptDataNum1 || 2) + 2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"all-purpose-kibble.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/all-purpose-kibble.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"all-purpose-kibble.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/all-purpose-kibble.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAG7D,qDAAwD;AACxD,0CAAiD;AAGpC,QAAA,gBAAgB,GAAuC;IACnE,OAAO,EAAE,sBAA6C;IACtD,8BAA8B,EAAE,CAAC,OAAqB,EAAE,KAAoB,EAAE,EAAE;QAC/E,IACC,CAAC,IAAA,uBAAe,EACf,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,aAAa,EACnB,qBAAI,CAAC,KAAK,EACV,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,EACA;YACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;SACtD;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC;QACzC,IAAA,mBAAW,EAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAC1G,OAAO,CAAC,cAAc,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3D,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { OnWheneverAnotherMinionAttacksCard } from '../../card.interface';\r\n\r\nexport const AllPurposeKibble: OnWheneverAnotherMinionAttacksCard = {\r\n\tcardIds: [CardIds.AllPurposeKibble_BG32_MagicItem_200],\r\n\tonWheneverAnotherMinionAttacks: (trinket: BoardTrinket, input: OnAttackInput) => {\r\n\t\tif (\r\n\t\t\t!hasCorrectTribe(\r\n\t\t\t\tinput.attacker,\r\n\t\t\t\tinput.attackingHero,\r\n\t\t\t\tRace.BEAST,\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\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t\t}\r\n\r\n\t\tconst buff = trinket.scriptDataNum1 || 2;\r\n\t\tmodifyStats(input.attacker, trinket, buff, 0, input.attackingBoard, input.attackingHero, input.gameState);\r\n\t\ttrinket.scriptDataNum1 = (trinket.scriptDataNum1 || 2) + 2;\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { DefaultScriptDataNumCard,
|
|
2
|
-
export declare const FaerieDragonScale:
|
|
1
|
+
import { DefaultScriptDataNumCard, OnWheneverAnotherMinionAttacksCard } from '../../card.interface';
|
|
2
|
+
export declare const FaerieDragonScale: OnWheneverAnotherMinionAttacksCard & DefaultScriptDataNumCard;
|
|
@@ -7,7 +7,7 @@ const utils_1 = require("../../../utils");
|
|
|
7
7
|
exports.FaerieDragonScale = {
|
|
8
8
|
cardIds: ["BG32_MagicItem_363"],
|
|
9
9
|
defaultScriptDataNum: (cardId) => 3,
|
|
10
|
-
|
|
10
|
+
onWheneverAnotherMinionAttacks: (trinket, input) => {
|
|
11
11
|
if (trinket.scriptDataNum1 > 0) {
|
|
12
12
|
if (!input.attacker.divineShield &&
|
|
13
13
|
(0, utils_1.hasCorrectTribe)(input.attacker, input.attackingHero, reference_data_1.Race.DRAGON, input.gameState.anomalies, input.gameState.allCards)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"faerie-dragon-scale.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/faerie-dragon-scale.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAE7D,mEAAqE;AAErE,0CAAiD;AAGpC,QAAA,iBAAiB,
|
|
1
|
+
{"version":3,"file":"faerie-dragon-scale.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/faerie-dragon-scale.ts"],"names":[],"mappings":";;;AAAA,iEAA6D;AAE7D,mEAAqE;AAErE,0CAAiD;AAGpC,QAAA,iBAAiB,GAAkE;IAC/F,OAAO,EAAE,sBAA8C;IACvD,oBAAoB,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IAC3C,8BAA8B,EAAE,CAC/B,OAAqB,EACrB,KAAoB,EACuC,EAAE;QAC7D,IAAI,OAAO,CAAC,cAAc,GAAG,CAAC,EAAE;YAC/B,IACC,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY;gBAC5B,IAAA,uBAAe,EACd,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,aAAa,EACnB,qBAAI,CAAC,MAAM,EACX,KAAK,CAAC,SAAS,CAAC,SAAS,EACzB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACxB,EACA;gBACD,IAAA,kCAAkB,EACjB,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,aAAa,EACnB,IAAI,EACJ,KAAK,CAAC,SAAS,CACf,CAAC;gBACF,OAAO,CAAC,cAAc,EAAE,CAAC;aACzB;SACD;QACD,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvD,CAAC;CACD,CAAC","sourcesContent":["import { CardIds, Race } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { updateDivineShield } from '../../../keywords/divine-shield';\r\nimport { OnAttackInput } from '../../../simulation/on-attack';\r\nimport { hasCorrectTribe } from '../../../utils';\r\nimport { DefaultScriptDataNumCard, OnWheneverAnotherMinionAttacksCard } from '../../card.interface';\r\n\r\nexport const FaerieDragonScale: OnWheneverAnotherMinionAttacksCard & DefaultScriptDataNumCard = {\r\n\tcardIds: [CardIds.FaerieDragonScale_BG32_MagicItem_363],\r\n\tdefaultScriptDataNum: (cardId: string) => 3,\r\n\tonWheneverAnotherMinionAttacks: (\r\n\t\ttrinket: BoardTrinket,\r\n\t\tinput: OnAttackInput,\r\n\t): { dmgDoneByAttacker: number; dmgDoneByDefender: number } => {\r\n\t\tif (trinket.scriptDataNum1 > 0) {\r\n\t\t\tif (\r\n\t\t\t\t!input.attacker.divineShield &&\r\n\t\t\t\thasCorrectTribe(\r\n\t\t\t\t\tinput.attacker,\r\n\t\t\t\t\tinput.attackingHero,\r\n\t\t\t\t\tRace.DRAGON,\r\n\t\t\t\t\tinput.gameState.anomalies,\r\n\t\t\t\t\tinput.gameState.allCards,\r\n\t\t\t\t)\r\n\t\t\t) {\r\n\t\t\t\tupdateDivineShield(\r\n\t\t\t\t\tinput.attacker,\r\n\t\t\t\t\tinput.attackingBoard,\r\n\t\t\t\t\tinput.attackingHero,\r\n\t\t\t\t\tinput.defendingHero,\r\n\t\t\t\t\ttrue,\r\n\t\t\t\t\tinput.gameState,\r\n\t\t\t\t);\r\n\t\t\t\ttrinket.scriptDataNum1--;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn { dmgDoneByAttacker: 0, dmgDoneByDefender: 0 };\r\n\t},\r\n};\r\n"]}
|
|
@@ -8,6 +8,9 @@ exports.UnholySanctum = {
|
|
|
8
8
|
const target = input.boardWithDeadEntity[input.boardWithDeadEntity.length - 1];
|
|
9
9
|
if (!!target) {
|
|
10
10
|
(0, stats_1.modifyStats)(target, trinket, trinket.cardId === "BG32_MagicItem_862" ? 3 : 6, trinket.cardId === "BG32_MagicItem_862" ? 2 : 6, input.boardWithDeadEntity, input.boardWithDeadEntityHero, input.gameState);
|
|
11
|
+
const afterMod = target.attack;
|
|
12
|
+
if (afterMod > 10) {
|
|
13
|
+
}
|
|
11
14
|
}
|
|
12
15
|
},
|
|
13
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unholy-sanctum.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/unholy-sanctum.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,aAAa,GAA6B;IACtD,OAAO,EAAE,6CAAwG;IACjH,sBAAsB,EAAE,CAAC,OAAqB,EAAE,KAAgC,EAAE,EAAE;QACnF,MAAM,MAAM,GAAG,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,CAAC,MAAM,EAAE;YACb,IAAA,mBAAW,EACV,MAAM,EACN,OAAO,EACP,OAAO,CAAC,MAAM,yBAA6C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACnE,OAAO,CAAC,MAAM,yBAA6C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACnE,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,KAAK,CAAC,SAAS,CACf,CAAC;
|
|
1
|
+
{"version":3,"file":"unholy-sanctum.js","sourceRoot":"","sources":["../../../../src/cards/impl/trinket/unholy-sanctum.ts"],"names":[],"mappings":";;;AAGA,qDAAwD;AAG3C,QAAA,aAAa,GAA6B;IACtD,OAAO,EAAE,6CAAwG;IACjH,sBAAsB,EAAE,CAAC,OAAqB,EAAE,KAAgC,EAAE,EAAE;QACnF,MAAM,MAAM,GAAG,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,CAAC,MAAM,EAAE;YACb,IAAA,mBAAW,EACV,MAAM,EACN,OAAO,EACP,OAAO,CAAC,MAAM,yBAA6C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACnE,OAAO,CAAC,MAAM,yBAA6C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACnE,KAAK,CAAC,mBAAmB,EACzB,KAAK,CAAC,uBAAuB,EAC7B,KAAK,CAAC,SAAS,CACf,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;YAC/B,IAAI,QAAQ,GAAG,EAAE,EAAE;aAElB;SACD;IACF,CAAC;CACD,CAAC","sourcesContent":["import { CardIds } from '@firestone-hs/reference-data';\r\nimport { BoardTrinket } from '../../../bgs-player-entity';\r\nimport { DeathrattleTriggeredInput } from '../../../simulation/deathrattle-on-trigger';\r\nimport { modifyStats } from '../../../simulation/stats';\r\nimport { DeathrattleTriggeredCard } from '../../card.interface';\r\n\r\nexport const UnholySanctum: DeathrattleTriggeredCard = {\r\n\tcardIds: [CardIds.UnholySanctum_BG32_MagicItem_862, CardIds.UnholySanctum_UnholySanctumToken_BG32_MagicItem_862t],\r\n\tonDeathrattleTriggered: (trinket: BoardTrinket, input: DeathrattleTriggeredInput) => {\r\n\t\tconst target = input.boardWithDeadEntity[input.boardWithDeadEntity.length - 1];\r\n\t\tif (!!target) {\r\n\t\t\tmodifyStats(\r\n\t\t\t\ttarget,\r\n\t\t\t\ttrinket,\r\n\t\t\t\ttrinket.cardId === CardIds.UnholySanctum_BG32_MagicItem_862 ? 3 : 6,\r\n\t\t\t\ttrinket.cardId === CardIds.UnholySanctum_BG32_MagicItem_862 ? 2 : 6,\r\n\t\t\t\tinput.boardWithDeadEntity,\r\n\t\t\t\tinput.boardWithDeadEntityHero,\r\n\t\t\t\tinput.gameState,\r\n\t\t\t);\r\n\t\t\tconst afterMod = target.attack;\r\n\t\t\tif (afterMod > 10) {\r\n\t\t\t\t// Nothing\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n};\r\n"]}
|