Commit graph

644 commits

Author SHA1 Message Date
xenohedron
255c7a9ce7
Remove unused marker interface (#10404) 2023-05-29 19:16:04 -04:00
Evan Kranzler
3503513c4e
Implement The Ring Tempts You mechanic (#10320)
* remove skip

* initial implementation of the ring mechanic

* some changes

* rework ring-bearer choosing

* [LTR] Implement Call of the Ring

* update ring-bearer condition
2023-05-07 14:32:28 -04:00
theelk801
39d78aff2f [MAT] Implement Tyvar, the Bellicose 2023-05-04 09:42:00 -04:00
theelk801
d2b808074d simplify saga ability constructors 2023-05-02 19:59:28 -04:00
theelk801
df322c680c [40K] various text fixes 2023-04-30 15:26:40 -04:00
theelk801
edb5c99df8 [J22] various text fixes 2023-04-30 11:28:06 -04:00
theelk801
f959b87cdc [40K] Implement The Horus Heresy 2023-04-29 20:11:45 -04:00
theelk801
dd4b1684c8 some changes to how sagas are built 2023-04-29 20:11:45 -04:00
theelk801
16fe17316e [ONE] Implement Blade of Shared Souls 2023-04-24 19:00:08 -04:00
theelk801
b8858a881e [MOC] Implement Pain Distributor 2023-04-23 17:13:31 -04:00
theelk801
c4ebe4ae8b [MOC] various text fixes 2023-04-18 18:34:57 -04:00
theelk801
a7a45763b3 [MOM] Implement Complete the Circuit 2023-04-17 18:26:27 -04:00
amoscatelli
6059422afc
[J22] Implement Alandra, Sky Dreamer (#10219)
* Alandra Sky Dreamer
DrawSecondCardTriggeredAbility refactored into DrawCardTriggeredAbility
DynamicValue support for DrawCardTriggeredAbility
DynamicValue support for BoostAllOfChosenSubtypeEffect

* cardNumber as int
static use of cardwatcher

* removing spaces

* FaerieMastermind and ZimoneAndDina using the new generic DrawCardTriggeredAbility

* AlandraSkyDreamer and DrawCardTriggeredAbility test

* renaming DrawCardTriggeredAbility to DrawNthCardTriggeredAbility

* merging the boost effects into a single ability

* merging two effects to the same ability

* text added to effects

---------

Co-authored-by: drago <drago@192.168.1.72>
2023-04-17 09:12:18 -04:00
theelk801
25e8cf7cef [MOM] Implement Sheoldred 2023-04-14 20:54:59 -04:00
Merlingilb
f63efe14b5
MOM: Added card "Jin-Gitaxias" and its abilities and effects (#10036)
* MOM: Added card "Jin-Gitaxias" and its abilities and effects

* rule text improvement

* remove unused imports

---------

Co-authored-by: Daniel Eberhard <daniel.h.e@gmx.de>
Co-authored-by: Evan Kranzler <theelk801@gmail.com>
2023-04-14 09:50:09 -04:00
Evan Kranzler
947351932b
Ready for Review: Implementing Battles (#10156)
* add types and subtypes

* add startingDefense attribute

* [MOM] Implement Invasion of Ravnica / Guildpact Paragon

* fix two small errors

* refactor various instances of "any target"

* fully implement defense counters

* battles can now be attacked

* [MOM] Implement Invasion of Dominaria / Serra Faithkeeper

* [MOM] Implement Invasion of Innistrad / Deluge of the Dead

* [MOM] Implement Invasion of Kaladesh / Aetherwing, Golden-Scale Flagship

* [MOM] Implement Invasion of Kamigawa / Rooftop Saboteurs

* [MOM] Implement Invasion of Karsus / Refraction Elemental

* [MOM] Implement Invasion of Tolvada / The Broken Sky

* simplify battle info ability

* fix verify failure

* some more fixes for attacking battles

* [MOM] Implement Invasion of Kaldheim / Pyre of the World Tree

* [MOM] Implement Invasion of Lorwyn / Winnowing Forces

* [MOM] Implement Invasion of Moag / Bloomwielder Dryads

* [MOM] Implement Invasion of Shandalar / Leyline Surge

* [MOM] Implement Invasion of Belenon / Belenon War Anthem

* [MOM] Implement Invasion of Pyrulea / Gargantuan Slabhorn

* [MOM] Implement Invasion of Vryn / Overloaded Mage-Ring

* [MOM] Implement Marshal of Zhalfir

* [MOM] Implement Sunfall

* implement protectors for sieges

* partially implement siege defeated trigger

* fix verify failure

* some updates to blocking

* [MOM] Implement Invasion of Mercadia / Kyren Flamewright

* [MOM] Implement Invasion of Theros / Ephara, Ever-Sheltering

* [MOM] Implement Invasion of Ulgrotha / Grandmother Ravi Sengir

* [MOM] Implement Invasion of Xerex / Vertex Paladin

* add initial battle test

* fix verify failure

* [MOM] Implement Invasion of Amonkhet / Lazotep Convert

* [MOM] update spoiler

* update how protectors are chosen

* update text

* battles can't block

* add control change test

* rename battle test for duel

* add multiplayer test

* [MOM] Implement Invasion of Alara / Awaken the Maelstrom

* [MOM] Implement Invasion of Eldraine

* [MOM] Implement Invasion of Ergamon / Truga Cliffhanger

* [MOM] Implement Invasion of Ixalan / Belligerent Regisaur

* battles now cast transformed (this is super hacky but we need to refactor TDFCs anyway)

* add TODO

* add ignore for randomly failing test

* a few small fixes

* add defense to MtgJsonCard (unused like loyalty)

* implement ProtectorIdPredicate

* small fixes
2023-04-13 20:03:16 -04:00
Evan Kranzler
b3245e0238
Revert "[J22] Implement Alandra, Sky Dreamer and refactor of DrawSecondCardTriggeredAbility (#10092)" (#10193)
This reverts commit 0ebaeb20c7.
2023-04-08 21:42:50 -04:00
theelk801
94d1178a5a [MOM] Implement Deeproot Wayfinder 2023-04-01 19:56:01 -04:00
amoscatelli
0ebaeb20c7
[J22] Implement Alandra, Sky Dreamer and refactor of DrawSecondCardTriggeredAbility (#10092)
DrawSecondCardTriggeredAbility refactored into DrawCardTriggeredAbility
DynamicValue support for DrawCardTriggeredAbility
DynamicValue support for BoostAllOfChosenSubtypeEffect

Co-authored-by: drago <drago@192.168.1.72>
2023-04-01 23:45:18 +04:00
Oleg Agafonov
a648268c4c * Howlpack Avenger - fixed game error on usage (#9781) 2023-03-26 22:45:23 +04:00
Oleg Agafonov
b632d89caa Refactor: fixed wrong usage of getSourceObjectIfItStillExists (fixed error "cannot be cast to Permanent"); 2023-03-26 13:10:00 +04:00
Oleg Agafonov
a15a0daa04 Fixed potential NPE errors in getPhase usage (fixed Berserker's Frenzy, etc) 2023-03-25 16:01:27 +04:00
Alexander Novotny
242490373e
[J22] Implement Preston, the Vanisher (#9860) 2023-02-28 14:39:02 +00:00
Sean Walsh
4ac4ba2003
[ONE] Implement The Eternal Wanderer (#10000) 2023-02-20 19:39:00 +00:00
PurpleCrowbar
a5d53cdb5d Fix Veteran Soldier. Closes #9028 2023-02-12 12:36:30 +00:00
theelk801
4079b8772a [ONE] Implement Ezuri, Stalker of Spheres 2023-01-14 20:49:32 -05:00
Evan Kranzler
6f1d9fce9c [BRC] fix The Archimandrite errors 2022-11-12 14:07:32 -05:00
Alex W. Jackson
10d7acb4b5
Create common class for "when target dies this turn" delayed triggers (#9722)
Fixes #9716. Fixes #9719.
2022-11-04 05:27:56 -04:00
Daniel Bomar
9410434f05
[BRO] Implemented In the Trenches (#9704) 2022-10-30 22:28:56 -04:00
Evan Kranzler
b57bdfe192 [40K] Implemented Magus Lucea Kane 2022-10-22 17:17:10 -04:00
Evan Kranzler
671817046e [DMC] fix #9659 2022-10-16 11:32:40 -04:00
Evan Kranzler
5160922af6 [DMC] Implemented Historian's Boon 2022-10-14 09:26:54 -04:00
Alex W. Jackson
332db3aecb Fix #9649 and clean up counter effect text generation 2022-10-14 00:41:02 -04:00
Alex Vasile
b0df785653 [C17] Added test for Curse of Opulence and EnchantedPlayerAttackedTriggeredAbility, and fixed range of influence bug. 2022-10-13 15:52:02 -03:00
Alex W. Jackson
4b469c8840 Fix #9623 2022-10-06 19:13:55 -04:00
Evan Kranzler
f6e39b1b5c fix test failure 2022-10-05 20:20:54 -04:00
Evan Kranzler
55e9314135 [BRO] Implemented Mishra, Claimed by Gix / Phyrexian Dragon Engine / Mishra, Lost to Phyrexia 2022-10-05 18:29:00 -04:00
Evan Kranzler
d21f2e43dd [40K] Implemented Their Number Is Legion 2022-10-04 21:40:42 -04:00
Evan Kranzler
af2a0ebb31 [40K] Implemented Canoptek Tomb Sentinel 2022-10-02 13:13:34 -04:00
Alex W. Jackson
c9a7aedfb2
Change EnchantAbility parameter from String to Target (#9588) 2022-09-29 10:29:48 -04:00
Alex W. Jackson
3954ba266f Fix #9587 2022-09-28 04:40:26 -04:00
Alex W. Jackson
b1b78d6db0
Reimplement Animate Dead and friends; fixes #5250 (#9581) 2022-09-27 20:08:50 -04:00
Alex W. Jackson
c8c663b976 Distinguish "blocks or becomes blocked" triggered abilities from "blocks or becomes blocked by a creature". Fixes #9347 2022-09-25 02:54:43 -04:00
Evan Kranzler
b0ebf4ad5b [NCC] various text fixes 2022-09-22 22:29:39 -04:00
Alex Vasile
fd16f2a16b
[NCC] Implement several cards (#9328)
Many associated refactors too. See full PR for detail.
2022-09-22 21:38:29 -04:00
Daniel Bomar
3d3fde35ca
[DMU] Implemented Rivaz of the Claw (#9523) 2022-09-15 22:35:52 -04:00
Evan Kranzler
d165072ac9
[DMU] Implement Defiler cycle (Ready for review) (#9460)
* [DMU] Implemented Defiler of Faith

* [DMU] Implemented Defiler of Dreams

* [DMU] Implemented Defiler of Flesh

* [DMU] Implemented Defiler of Instinct

* [DMU] Implemented Defiler of Vigor

* create PermanentPredicate

* initial attempt at Defiler ability

* some nonfunctional recommended changes

* a few more requested changes

* change arguments to ObjectColor from String

* fix a dumb mistake

* add test

* a few requested changes
2022-09-14 15:16:56 -04:00
Alex W. Jackson
c3ce7898de
[DMU] Implement Silver Scrutiny and fix #7326 (#9508) 2022-09-13 20:15:04 -04:00
Evan Kranzler
d313bc7ad6 [40K] Implemented Imotekh, the Stormlord 2022-09-13 06:55:12 -04:00
Alex W. Jackson
c84d9d2168 Don't erase a permanent's attacking/blocking info when it leaves the battlefield. Kithkin Mourncaller and Kardur Doomscourge no longer need their own special TriggeredAbility class 2022-09-12 10:43:21 -04:00