Commit graph

11927 commits

Author SHA1 Message Date
jimga150
b0d7daa85e
[REX] Implement Grim Giganotosaurus (#12103)
* Implement Grim Giganotosaurus

* Refactor MonstrosityAbility to take cost adjuster

* Update Nemesis of Mortals' monstrous ability and add test for cost reduction
2024-04-17 20:24:37 -04:00
Susucre
9d7bf27d38
[PIP] Implement Rad Counters mechanic (#12087) 2024-04-17 20:04:17 +02:00
Susucre
11373fd75d fix Xanathar, Guild Kingpin (#12133)
fix #12133
2024-04-17 19:59:31 +02:00
Oleg Agafonov
88eb35ebc7 code clean 2024-04-16 23:37:22 +04:00
Oleg Agafonov
e8e2f23284 server: improved server stability (#11285) and reworked triggers/playable logic (#8426):
* game: now all playable calculations done in game simulation, outside real game (no more freeze and ruined games by wrong Nyxbloom Ancient and other cards with wrong replacement dialog);
* game: fixed multiple problems with triggers (wrong order, duplicated calls or "too many mana" bugs, see #8426, #12087);
* tests: added data integrity checks for game's triggers (3 enabled and 3 disabled due current game engine logic);
2024-04-16 23:10:18 +04:00
Susucre
017286ed94
fix ContinuousEffect that access affectedObjectsSet before it is initialized (#12080) 2024-04-13 16:50:06 +02:00
Susucre
607d55f16b
[OTC] Implement 2 cards, refactor some exile effects ("Gonti-like") (#12118)
[OTC] Implement Gonti, Canny Acquisitor
[OTC] Implement Dream Thief's Bandana
2024-04-13 12:21:05 +02:00
Susucre
c77634c843
separate 'you may play'|'you may cast' AsThoughtEffect approuvers
Also, reworked Gonti, Lord of Luxury and checks it now works properly with Zoetic Cavern.
2024-04-13 12:10:53 +02:00
xenohedron
31295eb645 followup fix to #12058 2024-04-12 23:24:56 -04:00
xenohedron
8853e7d875
refactor: clean up static filters for sacrifice targets (#12120)
* simplify sacrifice target filters, part 1

* minor cleanup

* adjust SacrificeXTargetCost

* adjust Arctic Merfolk

* more cleanup

* remove unused

* adjust filters not used for sacrifice

* fix Hew the Entwood

* fix Nahiri's Lithoforming

* remove unused

* remove another

* cleanup more

* fix MegatronDestructiveForce

* remove next

* next batch of replacements

* remove next

* rename filter to match text

* finish removing

* use existing static filter
2024-04-12 22:24:10 -04:00
xenohedron
5c9d1cd205 fix #12058 (check phased in for "control a commander") 2024-04-12 20:59:36 -04:00
xenohedron
1198192a13 more text adjustments 2024-04-12 20:45:53 -04:00
xenohedron
f3fccfbd8a refactor: use setter method and private field 2024-04-12 20:11:04 -04:00
xenohedron
577a3708fc adjust some text, cleanup some variable access 2024-04-12 20:08:26 -04:00
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
jimga150
96939b31eb
Implement [REX] Owen Grady, Raptor Trainer (#12094) 2024-04-12 19:41:27 -04:00
Susucre
72a2e32d1c
fix 514.3a, give player priority on cleanup when something happened (#12115) 2024-04-12 15:31:53 +02:00
Oleg Agafonov
f1791a3c70 Merge fix 2024-04-11 23:02:25 +04:00
Oleg Agafonov
34dac7877d fixed empty targets in EachOpponentPermanentTargetsAdjuster (related to #11886) 2024-04-11 22:46:26 +04:00
Oleg Agafonov
367defd995 tests: added tests for non-stack delayed trigger and details docs about problem 2024-04-11 22:46:25 +04:00
Susucre
e741a453bf [PIP] Implement Nuclear Fallout 2024-04-11 19:16:36 +02:00
Susucre
8a29dcc735 fix Obeka, Splitter of Seconds (#12085)
Now adding BeginningPhases with all but Upkeep skipped.
Previously upkeep steps were added during combat phase, which was incorrect.

fix #12085
2024-04-11 13:24:56 +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
Susucre
113630c1ab fix Deep Gnome Terramancer triggering out of extra lands played 2024-04-10 20:52:18 +02: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
Oleg Agafonov
7817a5cac6 deck improves:
* gui: removed public deck hash info;
* gui: improved xmage dck-file - now it correctly load a card's amount (related to files from third party services);
* server: fixed wrong cheating warning on deck construction (closes #11877);
* refactor: removed outdated hash code and calculations;
* other: added docs, added multiple deck hash tests;
2024-04-10 22:18:07 +04:00
Oleg Agafonov
889c1125e8 refactor: improved deck import, added docs and miss tests for dek-files; 2024-04-10 21:55:43 +04:00
ssk97
124d60e2b7
refactor: improved EachOpponentPermanentTargetsAdjuster and few card fixes (#12102)
* Wreck and Rebuild: Return a land, not a creature
* Sinister Concierge should still gain suspend with 0 targets
* Fixed Tolarian Contempt
2024-04-10 06:59:21 +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
Susucre
a69583dbfc
images: added support of meld cards, fixed #11778 (#12083) 2024-04-08 23:57:13 +04:00
theelk801
8b7169c2a9 [PIP] Implement Megaton's Fate 2024-04-08 12:11:59 -04: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
9da91b51ea [OTC] Implement Savvy Trader 2024-04-06 18:52:08 +02:00
Susucre
b233fcf4d8 Consolidate, cleanup & test a few MayCastTargetCardEffect cards 2024-04-06 17:37:32 +02:00
Susucre
68dfcf4eac Fix some more inexact rule texts 2024-04-06 17:16:33 +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
62131f2a5d [OTC] Implement Yuma, Proud Protector 2024-04-06 01:49:21 +02:00
Susucre
5dfe480a5e
[MKM] Implement Perimeter Enforcer & Projektor Inspector (#11719) 2024-04-05 23:55:18 +02:00
Susucre
1ff8cf01cf [MKM] Implement Fugitive Codebreaker 2024-04-05 20:16:28 +02:00
Susucre
821b0d069f
Return to battlefield transfromed - fixed that it was able to return non transformable cards, fixed #12066 (#12072) 2024-04-05 20:51:34 +04:00
Susucre
4b60e82b83 [MH3] Implement Ajani Nacatl Pariah 2024-04-05 16:05:18 +02:00
theelk801
e4cd084b1b [OTC] Implement Elemental Eruption 2024-04-05 09:05:40 -04:00
Susucre
d317dd1307 Add test for Voja, Jaws of the Conclave 2024-04-05 12:13:01 +02:00