Commit graph

12593 commits

Author SHA1 Message Date
Grath
6606ebf0f2 Fix missing dependencies around DependencyType.BecomeCreature.
Also fix Tune Up to use a continuous effect, and a typo or two.
2025-03-19 11:31:39 -04:00
theelk801
9485d61c5c [TDM] Implement Qarsi Revenant 2025-03-19 10:18:20 -04:00
jmlundeen
bf01151085 Replace UntapAllThatAttackedEffect 2025-03-18 23:05:41 -05:00
Jmlundeen
d5ed935339
[DFT] Implement Full Throttle 2025-03-18 22:46:50 -05:00
Jmlundeen
0d0a6691f2
[DFT] Guidelight Matrix and Kolodin, Triumph Caster 2025-03-18 22:23:40 -05:00
Balázs Kristóf
8e6c16de55
[TDM] Implement Mobilize keyword ability and Dragonback Lancer and Voice of Victory (#13461)
* [TDM] Implement Mobilize keyword ability

* [TDM] Implement Dragonback Lancer

* [TDM] Implement Voice of Victory

* Add Mobilize to keywords.txt

---------

Co-authored-by: Evan Kranzler <theelk801@gmail.com>
2025-03-18 21:59:20 -04:00
theelk801
a4b2255713 [TDM] Implement Devoted Duelist 2025-03-18 20:11:27 -04:00
theelk801
249dfcf023 [TDM] Implement Agent of Kotis 2025-03-18 20:02:59 -04:00
jmlundeen
83ba735149 Merge remote-tracking branch 'Xmage/master' into fork/Jmlundeen/guidelight-matrix-kolodin
# Conflicts:
#	Mage.Sets/src/mage/sets/Aetherdrift.java
2025-03-16 15:10:50 -05:00
xenohedron
fa88a3217d fix #13451 (Nether Traitor), add test 2025-03-16 00:46:11 -04:00
Jmlundeen
66fd5c1b6a
[DFT] Implement many cards with custom effects (#13407)
* [DFT] Implement Loot, the Pathfinder

add option to hide reminder text for exhaust ability

* [DFT] Implement Guidelight Optimizer

* [DFT] Implement Radiant Lotus

* [DFT] Implement Oildeep Gearhulk

* fix Oildeep Gearhulk target

* fix OilDeep Gearhulk duplicate hand reveal

* [DFT] Implement Momentum Breaker

* [DFT] Implement Sita Varma, Masked Racer

* [DFT] Implement SkySeers Chariot

* [DFT] Implement Skyserpent Seeker

* [DFT] Implement Tune Up

* fix Skyseer's Chariot modifying spell cost

* use exhaust constructor boolean for reminderText

* Update cards for review

change radiant lotus outcome to prevent AI from trying to use it

change oildeep card choice to discard

replace Composite cost and move discard effect if sacrifice was unsuccessful

replace Composite costs and add target to Loot's third ability

* Missed braces for mana cost

Update GuidelightOptimizer text
2025-03-16 04:21:58 +04:00
Jmlundeen
7c55d444b0
[DFT] Implement Push the Limit (#13408) 2025-03-16 04:17:44 +04:00
xenohedron
7b03af3de3 fix #13433 (DoIfCostPaid regression), add test 2025-03-15 17:45:28 -04:00
xenohedron
bf8c8c4e99 fix #13425 (ninjutsu ability), add test 2025-03-15 17:36:46 -04:00
jmlundeen
9a0cfaa5e7 Update SaddleTargetMountEffect and GuidelightMatrix
changed SaddleTargetMountEffect apply to pass first target
changed GuidelightMatrix to not use composite cost
2025-03-15 12:11:46 -05:00
Grath
a9bffe4d25
Fix missing ProcessAction between the last mana being paid and the spell being cast. (#13396)
This is necessary so that, among other things, the Rain of Riches watcher can see that the last mana of a spell was a Treasure before the spell is cast - at which point it needs to already have Cascade.
2025-03-14 20:45:15 -04:00
Jmlundeen
9aaad5193f
[DFT] Implement Elvish Refueler (#13392) 2025-03-14 07:24:26 +04:00
Balázs Kristóf
cd8cb6afe5
[ACR] Implement Overpowering Attack (#13398)
* [ACR] Implement Overpowering Attack

* Replaced UntapAllThatAttackedEffect with filtered UntapAllEffect

* Add MyTurnCondition to Overpowering Attack
2025-03-13 17:51:59 -07:00
4825764518
8267d7d770
[DRC] Implement Priest of the Crossing (#13394)
* Implement Priest of the Crossing

* Add common dynamic value for "creatures that died under your control this turn"
2025-03-12 22:01:25 -07:00
Oleg Agafonov
b55ad3cdc0
Merge pull request #13373 from Jmlundeen/implement-ketramose
[DFT] Implement Ketramose, the New Dawn
2025-03-11 14:02:43 +03:00
jmlundeen
121ab378e7 Change CardsInExileCondition constructor and toString
change CardsInExileCondition to accept generic DynamicValue
create a toString override to generate rule text
2025-03-08 12:52:39 -06:00
Jmlundeen
f22755d44d
[DFT] Implement Riverchurn Monument (#13405)
* fix MillCardsTargetEffect to work with multiple targets
2025-03-08 21:38:26 +04:00
Jmlundeen
f9aa8c1527
[DFT] Implement Wickerfolk Indomitable (#13404) 2025-03-08 19:49:29 +04:00
jmlundeen
a472ff9f18 [DFT] Add Guidelight Matrix artifact
add static method from SaddleAbility to saddle a permanent
add common saddle effect
refactor Alacrian Armory with new saddle effect
2025-03-04 17:44:40 -06:00
jmlundeen
14fd76fb18 [DFT] Implement Full Throttle 2025-03-02 10:17:59 -06:00
Grath
419030b681 [NCC] Partially fix Rain of Riches and add tests.
Two tests are failing and ignored because this is only a partial fix, as we will still need to process actions between the last mana being paid and the spell being cast.
2025-02-26 23:12:07 -05:00
ssk97
705ce2320d
[DFT] Canyon Vaulter, Cloudspire Skycycle, Dune Drifter (#13382)
* Support Mounts and Your Main restriction in CrewsVehicleSourceTriggeredAbility

* Genericize Reckless Velocitaur

* Implement [DFT] Canyon Vaulter, Cloudspire Skycycle, and Dune Drifter
2025-02-26 00:14:48 -08:00
Jmlundeen
158212bbeb
refactor: create common DynamicValue for instant and sorcery spells cast in a turn (#13374) 2025-02-23 00:57:26 +04:00
jmlundeen
b9fa82f602 Replace unnecessary custom hint class with ValueHint 2025-02-22 14:13:08 -06:00
theelk801
9c29ff9ca4 [TDC] Implement Teval, the Balanced Scale 2025-02-22 12:42:24 -05:00
Oleg Agafonov
90034fe9b0 refactor: removed outdated and unused debug code (combat and continuous effects) 2025-02-22 15:32:30 +04:00
Oleg Agafonov
869cf83fd6 refactor: code clean in turn 2025-02-22 15:29:25 +04:00
Oleg Agafonov
b82c6010c2 refactor: simplified turn logs, removed useless poison info from it 2025-02-22 07:57:53 +04:00
jmlundeen
cbb3012b05 [DFT] Implement Ketramose, the New Dawn and implement exile condition and dynamic value 2025-02-21 21:19:34 -06:00
Steven Knipe
e22a3ec19f Use CardUtil function instead of reimplementing lower-casing 2025-02-20 21:54:34 -08:00
Steven Knipe
17e0c82a07 Remove BroodofCockroaches text test (in Verify), uncapitalize CreateDelayedTriggeredAbilityEffect ability rule text 2025-02-20 18:27:17 -08:00
theelk801
f5d4c957fc [DFT] small update to max speed mechanic to match comp rules 2025-02-18 09:51:09 -05:00
4825764518
ecbab0da9b
[PIP] Implement Strong, the Brutish Thespian (#13359) 2025-02-18 06:20:04 +04:00
4825764518
91a648c50d
[ACR] Implement Viewpoint Synchronization (#13358) 2025-02-18 04:57:55 +04:00
padfoothelix
0281b35c58
[WHO] Implement The Girl in the Fireplace (#13356) 2025-02-17 16:24:05 +04:00
Oleg Agafonov
df0a2760b6 refactor: fixed wrong usage of getModes (related to #13338) 2025-02-17 01:16:04 +04:00
tiera3
e57098b9fe
[ME2] Implement Goblin Ski Patrol (#13285) 2025-02-13 20:49:12 +04:00
Oleg Agafonov
ba0e5a1aed Delve abilities - removed unnecessary windows with exiled cards (except few cards that can use it); 2025-02-11 22:21:07 +04:00
Oleg Agafonov
19269b22b0 refactor: improved ETB rules generations, fixed some cards/abilities (related to #12791) 2025-02-09 17:25:48 +04:00
Oleg Agafonov
0d0661cc92 refactor: added code example for rules auto-replacement in creature's ETB (related to #12791) 2025-02-09 13:51:22 +04:00
padfoothelix
1774c2ec36
Sinister Concierge - improved text, card logic and game logs (#13312) 2025-02-09 03:43:43 +04:00
theelk801
bc120a34c7 [DFT] various text fixes 2025-02-08 16:42:10 -05:00
Oleg Agafonov
06f24515cc refactor: added param to hide activate text in ActivateAsSorceryActivatedAbility (related to #13316); 2025-02-08 23:35:50 +04:00
Oleg Agafonov
c54fcde72a GUI, game: added source info in choose mode dialogs 2025-02-08 02:04:37 +04:00
Oleg Agafonov
e408836a19 game: added defenders info in declared attackers log 2025-02-08 01:57:00 +04:00