Commit graph

4583 commits

Author SHA1 Message Date
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
Oleg Agafonov
90034fe9b0 refactor: removed outdated and unused debug code (combat and continuous effects) 2025-02-22 15:32:30 +04: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
91a648c50d
[ACR] Implement Viewpoint Synchronization (#13358) 2025-02-18 04:57:55 +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
PurpleCrowbar
aa5c2279e7
Decayed ability - improved rules text (#13296) 2025-02-07 21:52:48 +04:00
Grath
145bda842b
[DSK] Implement Hauntwoods Shrieker, added support to reveal face down permanents (#13277)
* [DSK] Implement Hauntwoods Shrieker.
* Change RevealedView and PlayerImpl.revealCards to reveal face-down permanents.
* Fix #13273 using the new RevealCards capability.
2025-02-07 19:18:31 +04:00
Oleg Agafonov
9f2cfc9e09 tests: added runtime check for OrTriggeredAbility (related to #12826, 13309) 2025-02-07 14:34:45 +04:00
Oleg Agafonov
25e4930bd5 Number of card types in graveyards - added card hint for cards like Tarmogoyf 2025-02-07 07:37:27 +04:00
Oleg Agafonov
d018566324 Dredge - fixed game error in some use cases 2025-02-06 22:23:27 +04:00
theelk801
194ff4b073 [DFT] Implement Thunderhead Gunner 2025-02-04 13:51:06 -05:00
theelk801
d098ca5346 [DFT] Implement Redshift, Rocketeer Chief 2025-02-04 10:50:42 -05:00
Oleg Agafonov
3405b51aaf tests: improved load tests (improved progress bar, added effects stats) 2025-02-04 11:41:42 +04:00
theelk801
cf6ba1895a [DFT] Implement Cryptcaller Chariot 2025-02-03 11:35:07 -05:00
Oleg Agafonov
58fbfdd529 refactor: improved usage of getOpponents to ignore leaved players in one short effects 2025-02-03 17:46:57 +04:00
Evan Kranzler
ef213b1bef
Implementing "Start your engines!" mechanic (#13259)
* add initial speed handling

* finish speed implementation

* remove skip list

* add initial test

* add some more tests

* change speed initialization to state-based action

* add opponent speed check

* add control change test

* add check for speed 5
2025-02-01 13:49:47 -05:00
theelk801
293ddd7016 [DFT] rework max speed ability 2025-01-31 13:56:08 -05:00
theelk801
436a0fd2ed [DFT] Implement Gastal Thrillroller 2025-01-31 10:27:46 -05:00
theelk801
660bc0d6b4 [DFT] Implement Howler's Heavy 2025-01-31 10:27:46 -05:00
theelk801
3f3dfa83f1 [DFT] Implement Deathless Pilot 2025-01-31 10:27:46 -05:00
Grath
4dbce1132c Fix typo in method name. 2025-01-30 13:33:06 -05:00
Oleg Agafonov
de19bd56cb refactor: fixed copy constructor in some dynamic values 2025-01-25 01:11:35 +04:00
Grath
7bfb0d2dec [DRC] Implement Prophet of the Scarab
Also adds a DynamicValue that finds the largest of multiple DynamicValues.
2025-01-24 15:47:17 -05:00
theelk801
4b5bf3e1de [DFT] Implement Cloudspire Captain 2025-01-24 12:25:50 -05:00
theelk801
59c1a32697 [DFT] Implement Streaking Oilgorger 2025-01-23 23:07:34 -05:00
theelk801
5738f582ca [DFT] Implement Prowcatcher Specialist 2025-01-23 11:51:53 -05:00
Oleg Agafonov
e6ae7e9114 refactor: fixed wrong copy code of some fields 2025-01-22 19:35:43 +04:00
Oleg Agafonov
3f79ffa21a refactor: improved cards hints support for combined triggers like OrTriggeredAbility 2025-01-22 19:06:05 +04:00
Marco Romano
0bcf5f9e03
[DSK] Implement Unable to Scream (#13234)
* Introduced LoseAllAbilitiesAttachedEffect

* Added unit tests for Unable to Scream
2025-01-19 16:09:57 -05:00
Oleg Agafonov
34af53879a Do if cost pay improved:
* added additional hint to the optional pay dialog, so user can split it and remember for auto-answer (see withChooseHint);
* Mana Vault - improved UX, now user can hide an untap cost dialog for already untapped permanent (use right click on buttons, #2656);
2025-01-16 14:14:16 +04:00
Oleg Agafonov
c82511f96f tests: added more strictly checks for choice commands order, fixed wrong commands in old tests (related to #12044); 2025-01-16 08:14:28 +04:00
Cameron Merkel
5d4112c45d
Awakened Skyclave & Grond, The Gatebreaker - fixed that it doesn’t give a land type (#13229) 2025-01-15 18:32:00 +04:00
Marco Romano
b58fbbdd84
[DSK] Implement Acrobatic Cheerleader and per-game trigger limits (#13232) 2025-01-15 18:28:30 +04:00
Oleg Agafonov
a5c354f960 You may play an additional land - added card hint to all lands about played count and max limit (#13216) 2025-01-10 22:04:21 +04:00
Oleg Agafonov
c076f4925f Turn under control reworked:
- game: added support for human games (cards like Emrakul, the Promised End, #12878);
 - game: added support of 720.1. to reset control in the turn beginning instead cleanup step (related to #12115);
 - game: added game logs for priorities in cleanup step;
 - game: fixed game freezes and wrong skip settings usages (related to #12878);
 - gui: added playable and choose-able marks for controlling player's cards and permanents, including switched hands;
 - gui: added controlling player name in all choice dialogs;
 - info: control of computer players is it not yet supported;
2025-01-07 12:38:01 +04:00
Grath
9055179f77 [PIP] Implement Yes Man, Personal Securitron 2024-12-18 15:15:34 -05:00
Cameron Merkel
73b63d14ad
TargetAmount refactors (#13128)
* Add minimum and maximum target counts as parameters for TargetAmount and its subclasses; update/add several rules comments (and one actual text) for clarity; remove unused imports

* Get amount+description from target instead of parameters for DistributeCountersEffect and DamageMultiEffect; additions to TargetImpl.getDescription to accommodate

* Create separate method to check if "any number" phrasing should be used, override it in TargetAmount

* Check instanceof TargetAmount before casting

* Add new constructors to chain off of for TargetCreaturePermanentAmount & TargetCreatureOrPlaneswalkerAmount

* Fix text for Storm the Seedcore

* Use Integer.MAX_VALUE instead of 0 to represent no maximum targets

* Add comment about getUseAnyNumber()

* Use amount-only constructors in some TargetAmount subclasses, add clarifying documentation

* Fix a few calls

* Require more specific filters
2024-12-17 19:23:18 -05:00
Oleg Agafonov
4bce1e0a9a When you cast this spell - fixed that it required double cost for cards with alternative costs like Evoke (example: Nulldrifter, #12843) 2024-12-14 21:47:55 +04:00
Oleg Agafonov
ea0b0915a5 Triggered abilities - fixed that sacrice trigger doesn't work on itself (related to #13089, regression from #13088) 2024-12-14 16:59:20 +04:00
Oleg Agafonov
b855434a24 refactor: fixed dies events support in single cards (part 8, related to #13089, continue from #13088); 2024-12-14 15:48:32 +04:00