Commit graph

4190 commits

Author SHA1 Message Date
Alexander Novotny
8271686cb4
[PIP] Implement Shaun, Father of Synths (#12109)
* Added method to set triggered abilities to optional

* TokenCopy effect now copies permanentModifier

* Implemented Shaun, Father of Synths

* remove TODO

* Made `setOptional` chainable
2024-04-12 19:41:58 -04:00
Susucre
e741a453bf [PIP] Implement Nuclear Fallout 2024-04-11 19:16:36 +02:00
xenohedron
8bf75ed000 text fixes 2024-04-11 00:34:19 -04:00
jimga150
51b1ab4cb6
Implement [REX] Compy Swarm (#12101) 2024-04-10 23:43:37 -04:00
jimga150
40b1dcc526
Fix DestroyPlaneswalkerWhenDamagedTriggeredAbility (#12093) 2024-04-10 23:42:44 -04:00
Oleg Agafonov
c3862e7196 server: improved server stability after some memory overflow errors (card not found errors, related to #11285); 2024-04-10 22:35:48 +04:00
Susucre
db5dc89776 [OTC] Implement Smoldering Stagecoach 2024-04-09 20:57:22 +02:00
Matthew Wilson
6fffc2aeb0
Merge pull request #11723 from DominionSpy/case-of-the-pilfered-proof
[MKM] Implement Case of the Pilfered Proof
2024-04-09 14:48:27 +03:00
Susucre
e62d1c2124 [OTC] Implement Thunderclap Drake 2024-04-09 13:08:10 +02:00
Matthew Wilson
e79bab6520
Merge branch 'magefree:master' into case-of-the-pilfered-proof 2024-04-08 07:02:35 +03:00
theelk801
9a3fc4e0cc [OTC] Implement Graywater's Fixer 2024-04-07 18:18:39 -04:00
Matthew Wilson
9cf6119c7e
Merge branch 'magefree:master' into case-of-the-pilfered-proof 2024-04-07 14:31:44 +03:00
Susucre
b233fcf4d8 Consolidate, cleanup & test a few MayCastTargetCardEffect cards 2024-04-06 17:37:32 +02:00
Susucre
a86b629abe [OTC] Implement Smirking Spelljacker 2024-04-06 16:26:16 +02:00
Susucre
b5d0943b9d [OTC] Implement Cactus Preserve 2024-04-06 13:42:23 +02:00
Susucre
1ff8cf01cf [MKM] Implement Fugitive Codebreaker 2024-04-05 20:16:28 +02:00
Susucre
d317dd1307 Add test for Voja, Jaws of the Conclave 2024-04-05 12:13:01 +02:00
Susucre
d2356abe31 Fix AddCountersAllEffect 2024-04-05 12:02:56 +02:00
Susucre
2d7349a7bb Fix faulty logic in AddCounters effects amount computation.
When set with DynamicValue, and that value computes to 0,
the amount of counters added was incorrectly the Counters amount.
2024-04-05 11:53:19 +02:00
Susucre
d591a89495 [OTJ][BIG] Cleanup some card implementation 2024-04-05 11:53:12 +02:00
xenohedron
35a22527f1 another batch of text fixes 2024-04-04 23:21:44 -04:00
jimga150
525e013ebd
Fix damage triggers (#12033)
* Fix DealtDamageAttachedTriggeredAbility and update test

* Fix AegarTheFreezingFlameTriggeredAbility and add test

* fix enum reference for DealtDamageAttachedTriggeredAbility

* fix Pious Warrior

* Fix souls of the faultless

* fix Stuffy Doll

* Fix Vengeful Pharoah and add test

* fix Wall of Essence

* fix Wall of Souls

* fix Rite of Passage and add test

* incorporate simple fixes - these cards use no methods that aren't re-implemented in DamagedBatchForOnePermanentEvent

* fix Chandra's Spitfire

* fix Darien, King of Kjeldor

* fix Jace, Cunning Castaway

* fix Mindblade Render

* fix Popular Entertainer

* fix Swarmborn Giant

* fix The Raven's Warning

* fix War Elemental

* fix Wildfire Elemental

* make simple player damage trigger fixes

* Add isCombatDamage to DamagedBatchForOnePermanentEvent and utilize in trigger fixes

* fix Fall of Cair Andros

* fix Toralf, God of Fury

* optimize some imports
2024-04-04 22:16:44 -04:00
Susucre
01ddee2c75 Fix zcc off by 1 in MayCastTargetCardEffect 2024-04-05 02:07:48 +02:00
Susucre
d1de8b8cd3
[OTJ] Implement Tinybones, the Pickpocket + refactor MayCastTargetThenExileEffect (#12040) 2024-04-05 00:16:53 +02:00
Susucre
dd3057fa10 [BIG] Implement Tarnation Vista 2024-04-04 12:47:35 +02:00
Susucre
73287e3878 [OTJ][BIG] Various Fixes (mostly Text) 2024-04-03 22:24:53 +02:00
Susucre
f5b7968492 [OTJ] Implement Smuggler's Surprise 2024-04-03 00:49:20 +02:00
theelk801
1d8aa446a5 [OTJ] Implement The Gitrog, Ravenous Ride 2024-04-02 16:01:29 -04:00
theelk801
911a221a1b [OTJ] Implement Patient Naturalist 2024-04-02 15:23:48 -04:00
Susucre
4bbdc3c543
[OTJ] Implement Fblthp, Lost on the Range (#12042) 2024-04-02 14:55:09 +02:00
Susucre
fddaf5914e [OTJ] Implement Overzealous Muscle 2024-04-02 14:22:16 +02:00
Susucre
f41f3feb89 [OTJ] Implement Trick Shot 2024-04-02 12:56:19 +02:00
ssk97
fd83fbb600
refactor: Remove no-argument Squad constructor (#12038) 2024-04-02 00:44:23 -04:00
Evan Kranzler
ba20e97b71
[OTJ] Implementing "spree" mechanic (#12018)
* [OTJ] Implement Unfortunate Accident

* fix errors

* a few more things

* [OTJ] Implement Three Steps Ahead

* [OTJ] Implement Caught in the Crossfire

* [OTJ] Implement Insatiable Avarice

* add test

* [OTJ] Implement Explosive Derailment

* [OTJ] Implement Requisition Raid

* [OTJ] Implement Rustler Rampage

* add comment to test

* [OTJ] Implement Metamorphic Blast

* [OTJ] Implement Final Showdown

* rework cost addition, add test

* move cost application to its own loop
2024-03-31 12:11:34 -04:00
Susucre
97ab8074b3
[OTJ] Implement Plot mechanic (+8 cards) (#12017)
[OTJ] Implement Aloe Alchemist
[OTJ] Implement Aven Interrupter
[OTJ] Implement Longhorn Shapshooter
[OTJ] Implement Kellan Joins Up
[OTJ] Implement Make Your Own Luck
[OTJ] Implement Jace Reawakened
[OTJ] Implement Lilah, Undefeated Slickshot
[OTJ] Implement Doc Aurlock, Grizzled Genius
2024-03-31 17:06:55 +02:00
theelk801
6e750492b2 [OTJ] Implement Luxurious Locomotive 2024-03-30 21:39:45 -04:00
Susucre
9a03bc675b [OTJ] Fix a few rule text 2024-03-31 01:11:26 +01:00
Susucre
559be38b00 [OTJ] Implement Vengeful Townsfolk 2024-03-30 20:43:33 +01:00
Susucre
36857782fe [OTJ] Implement Stoic Sphinx 2024-03-30 19:21:19 +01:00
Susucre
1ee0586bb7 [OTJ] Implement Inventive Wingsmith 2024-03-30 17:28:46 +01:00
Susucre
c42e67ea0f [OTJ] Implement Roxanne, Starfall Savant 2024-03-30 14:53:08 +01:00
Evan Kranzler
8fbc7c9507
[OTJ] Implementing "saddle" mechanic (#12012)
* [OTJ] Implement Trained Arynx

* implement saddle cost

* update saddled effect

* add test

* add sorcery speed to saddle ability

* apply requested changes

* [OTJ] Implement Quilled Charger

* rework test
2024-03-29 23:00:22 -04:00
Susucre
93457c24ca [OTJ] Implement Wrangler of the Damned 2024-03-29 21:35:13 +01:00
Susucre
147b502a95 Cleanup unecessary argument for PlotAbility.
Will make merging the plot branch a little easier.
2024-03-29 16:56:16 +01:00
theelk801
e77443f5b9 [OTJ] Implement Forsaken Miner 2024-03-29 10:16:48 -04:00
xenohedron
a768a4dd8a cleanup access to fields in AbilityImpl
where trivially possible, make private and use getters
2024-03-29 01:53:03 -04:00
xenohedron
0637657616 fix constructor error from #11886 2024-03-29 01:18:53 -04:00
xenohedron
ea843c1bb9 remove unnecessary stringbuilder usage 2024-03-29 00:48:43 -04:00
xenohedron
cb28fb5a56
Refactor batch events (#11995)
* create new abstract class for batch event framework

* adjust CardUtil.getEventTargets to support new framework

* update TappedBatchEvent to new framework

* update UntappedBatchEvent to new framework

* slight cleanup

* update LifeLostBatchEvent to new framework

* update ZoneChangeBatchEvent to new framework

* complete refactor by moving damage events to new framework

* remove old code no longer used

* clean up some nonsense code in star wars card

* fix watcher checking id before event type

* fix wrong id usage

* fix missed wrong id usage
2024-03-28 23:19:20 -04:00
ssk97
d886b3e450
[WHO] Implement 4 cards, create generic EachOpponentPermanentTargetsAdjuster (#11886)
* Implement Bigger on the Inside
* implement Reverse the Polarity
* Implement Sontaran General
* Implement Everything Comes to Dust
2024-03-29 01:32:38 +04:00