Commit graph

9837 commits

Author SHA1 Message Date
Evan Kranzler
38f0e83274 [VOW] various text fixes 2021-11-11 21:59:56 -05:00
Evan Kranzler
8de8a24227 [VOW] Implemented Ill-Tempered Loner / Howlpack Avenger 2021-11-11 20:04:22 -05:00
Evan Kranzler
03926f114f [VOW] Implemented Voltaic Visionary / Volt-Charged Berserker 2021-11-11 19:47:20 -05:00
Jeff Wadsworth
0600c0e7d5 - Fixed #8436 2021-11-11 16:35:15 -06:00
Daniel Bomar
24fab24440
[VOW] Implemented Jacob Hauken, Inspector / Hauken's Insight 2021-11-11 10:49:26 -06:00
Alex W. Jackson
e1a345339d Merge branch 'master' of https://github.com/magefree/mage 2021-11-11 08:49:00 -05:00
Alex W. Jackson
379550689f Refactor generation of boosters with a special uncommon/rare slot (e.g. WAR planeswalker slot) 2021-11-11 08:48:50 -05:00
Evan Kranzler
ffc3c07b41 fixed a test failure 2021-11-11 08:46:59 -05:00
Evan Kranzler
51e88b8e19 [VOW] Implemented Savior of Ollenbock 2021-11-11 08:14:39 -05:00
Evan Kranzler
ca16f363c8 refactored effects which cause other permanents to enter tapped 2021-11-11 07:51:12 -05:00
Alex W. Jackson
5287e1aa4d CardCriteria: use constants instead of strings for supertype and subtype 2021-11-11 05:50:13 -05:00
Evan Kranzler
f5141843ff [VOW] Implemented Biolume Egg / Biolume Serpent 2021-11-10 21:10:01 -05:00
Daniel Bomar
91300cebed
[VOW] Implemented Chandra, Dressed to Kill 2021-11-10 12:00:38 -06:00
Daniel Bomar
395136259f
[VOW] Implemented Cemetery Illuminator 2021-11-10 09:13:02 -06:00
Evan Kranzler
599e5c2a4f [VOW] Implemented Howlpack Piper / WIldsong Howler 2021-11-10 09:47:45 -05:00
Evan Kranzler
e30ba1b62a [VOW] Implemented Toxrill, the Corrosive 2021-11-10 08:09:57 -05:00
Alex W. Jackson
bb2546badd
Refactor rules text generation for P/T boost effects. Fixes #8421 2021-11-10 06:40:11 -05:00
Evan Kranzler
900f9d845c [VOC] Implemented Ethereal Investigator 2021-11-09 07:49:24 -05:00
Oleg Agafonov
3284cb5b24 GUI: fixed wrong card sides, data and errors for transform and double side cards; 2021-11-09 10:16:39 +04:00
Daniel Bomar
7082b86eb3
[MID] Implemented Disturb mechanic (#8201)
* [MID] Implemented Disturb mechanic

Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
Co-authored-by: Evan Kranzler <theelk801@gmail.com>
2021-11-09 10:12:50 +04:00
Evan Kranzler
1195016399 [VOW] Implemented Kaya, Geist Hunter 2021-11-08 20:50:13 -05:00
Evan Kranzler
1656324329 [VOW] Implemented Undead Butler 2021-11-08 20:30:30 -05:00
Evan Kranzler
5dbc8f11f3 [VOW] Implemented Hiveheart Shaman 2021-11-08 20:15:55 -05:00
Daniel Bomar
902fec22dd
[VOW] Implemented Spiked Ripsaw 2021-11-08 09:58:20 -06:00
Evan Kranzler
8856d0a0ea [VOW] Implemented Edgar, Charmed Groom / Edgar Markov's Coffin 2021-11-08 08:33:14 -05:00
Evan Kranzler
10185a0999 [VOW] Implemented Screaming Swarm 2021-11-08 08:04:16 -05:00
Evan Kranzler
3801325a04 added TransformIntoSourceTriggeredAbility to simplify copied code 2021-11-07 08:31:23 -05:00
Evan Kranzler
81c7a29947 [VOW] Implemented Faithbound Judge / Sinner's Judgment 2021-11-06 21:34:31 -04:00
Evan Kranzler
1f2fa8d8dc [VOW] Implemented Gutter Skulker / Gutter Shortcut 2021-11-06 19:30:49 -04:00
Evan Kranzler
fcc1481679 [VOW] Implemented Lacerate Flesh 2021-11-06 13:57:47 -04:00
Evan Kranzler
12588ea40b [VOW] Implemented Rural Recruit 2021-11-05 20:18:36 -04:00
Evan Kranzler
ecfe08cee0 moved TransformAbility into DayboundAbility for simplicity 2021-11-05 19:59:00 -04:00
Evan Kranzler
30afb11cd2
Implementing Daybound/Nightbound mechanic (#8200)
* adding initial day/night support in game state

* remove card exclusion for testing

* added functional implementation to abilities from main branch

* functionally implemented NightCondition

* updated DayNightHint

* added support for nightbound entering transformed at night

* [MID] Implemented Unnatural Moonrise

* [MID] Implemented The Celestus

* added some docs

* changed access for state day/night methods

* added transformation to day/night switch

* re-added unfinished filter, removed day/night cards

* fixed some errors with transforming

* added hints to all day/night cards

* added transformation prevention plus a test

* added Immerwolf test

* [MID] Implemented Tovolar, Dire Overlord / Tovolar, The Midnight Scourge

* refactored some cards to not use isTransformable

* removed transformable parameter

* simplified some transform code

* fixed null pointer exception

* removed unnecessary canTransform method

* fixed a small error

* reworked implementation of rule 701.28f

* small change in transform logic

* fixed failiing test

* fixed verify failure

* small merge change

* added support for day/night switching based on spells cast

* [MID] Implemented Curse of Leeches / Leeching Lurkers

* moved day/night handling to untap step

* added tests for cards which set day and trigger from a change

* [MID] Implemented Ludevic, Necrogenius / Olag, Ludevic's Hubris

* added support for creatures transforming to match day/night when necessary

* fixed verify failures

* fixed another verify failure

* remove temporary verify skip

* added transform message

* removed unnecessary transform message

* [MID] Implemented Angelic Enforcer / Enduring Angel

* updated DayNightHint with more information

* fixed verify failure

* merge fix

* fixed Startled Awake / Persistent Nightmare / Moonmist interaction

* added another test for Moonmist

* merge fix

* merge fix

* [MID] Implemented Baneblade Scoundrel / Baneclaw Marauder

* merge fix

* [MID] various text fixes

* [MID] a few more text fixes

* Merge fix

* Improved transform game logs (hints, source), fixed day/night logs, fixed miss game param (due code style);

* fixed a test failure

* Merge fix

Co-authored-by: Oleg Agafonov <jaydi85@gmail.com>
2021-11-05 23:11:23 +04:00
Evan Kranzler
950aacd6fc [VOW] Implemented Sanguine Statuette 2021-11-05 09:31:54 -04:00
Evan Kranzler
8091538bbc [VOW] Implemented Sigardian Palading 2021-11-05 08:52:58 -04:00
Evan Kranzler
4088159bf9 [VOW] Implemented Wash Away 2021-11-04 21:56:33 -04:00
Daniel Bomar
b4f81efef8
[VOW] Implemented Manaform Hellkite 2021-11-03 16:10:34 -05:00
Evan Kranzler
6a3b768ca6 [VOW] Implemented Ancient Lumberknot 2021-11-02 19:27:30 -04:00
Evan Kranzler
ee09285d54 small reworking to PermanentsOnTheBattlefieldCondition 2021-11-02 19:00:54 -04:00
Evan Kranzler
fb38ee9b8d [VOW] Implemented Groom's Finery 2021-11-02 09:12:35 -04:00
Daniel Bomar
d0466ff6f3
[VOW] Implemented Investigator's Journal 2021-11-01 09:23:30 -05:00
Evan Kranzler
e36dac83f2 [VOW] Implemented Kessig Wolf Rider 2021-11-01 09:02:51 -04:00
Evan Kranzler
5203714d07 [VOW] Implemented Rending Flame 2021-10-31 15:22:40 -04:00
Daniel Bomar
3bac561d07
[VOW] Implemented Hallowed Haunting 2021-10-31 10:38:08 -05:00
Daniel Bomar
105e1f8ed9
[MID] Teferi, Who Slows the Sunset - Fixed targets on +1 ability (fixes #8423) 2021-10-31 08:28:58 -05:00
Evan Kranzler
492d1ce957 [VOW] Implemented Torens, Fist of the Angels 2021-10-29 22:34:59 -04:00
Daniel Bomar
af290a4771
[VOW] Implemented Grolnok, the Omnivore 2021-10-29 21:24:12 -05:00
Alex W. Jackson
91176a19dd ObjectColor objects are mutable, so let's not assign the 'constant' ones to variables 2021-10-29 13:56:48 -04:00
Daniel Bomar
096a2868a9
[VOW] Implemented Sorin the Mirthless 2021-10-29 12:25:52 -05:00
Alex W. Jackson
1e6709de46
New booster color validation algorithm, fixes #8177 (#8413) 2021-10-29 11:51:37 -04:00
Daniel Bomar
5fd961aefe
[VOW] Implemented Wedding Announcement 2021-10-29 09:20:42 -05:00
Evan Kranzler
6d488d9900 [VOW] Implemented Fell Stinger 2021-10-29 08:10:37 -04:00
Evan Kranzler
d8718a5fb5 [VOW] Implemented Apprentice Sharpshooter 2021-10-28 20:29:15 -04:00
Evan Kranzler
06f76eadec [VOW] Implemented Gluttonous Guest 2021-10-28 20:19:40 -04:00
Evan Kranzler
d289348483 [VOW] Implemented Dig Up 2021-10-28 20:10:31 -04:00
Oleg Agafonov
05222f3bdc
Merge pull request #8400 from weirddan455/decayed
Add sub abilities in TokenImpl.addAbility and PermanentImpl.addAbility (fixes #8343)
2021-10-23 10:27:49 +04:00
Daniel Bomar
bcacb870af
Text fixes (fixes #8399) 2021-10-22 23:50:30 -05:00
Daniel Bomar
5a6bfb710e
Fixed more instances of missing sub abilities 2021-10-22 19:12:19 -05:00
Daniel Bomar
060ea7da83
Add sub abilities in TokenImpl.addAbility and PermanentImpl.addAbility (fixes #8343) 2021-10-22 17:32:51 -05:00
Daniel Bomar
27d4fb13c3
Fixed combat information not being preserved in LKI and added unit test 2021-10-21 20:24:51 -05:00
Daniel Bomar
5e67314c96
[AFC] Implemented Death Tyrant 2021-10-21 15:26:01 -05:00
Daniel Bomar
e8db40bb8d
[C21] Fixed Fractal Harness adding too many counters on attack (fixes #8377) 2021-10-20 14:38:05 -05:00
Daniel Bomar
aa4397dee5
BalanceEffect - Fixed effect when a player has 0 permanents/cards (fixes #7950) 2021-10-19 21:53:25 -05:00
Oleg Agafonov
fa79c1eba5
Merge pull request #8394 from weirddan455/ward
Fixed Ward countering wrong ability (fixes #8378)
2021-10-19 10:32:03 +04:00
Jeff Wadsworth
328b1f1eec - non-card refactoring related to #8375 2021-10-18 14:02:57 -05:00
Daniel Bomar
aa96a4af86
Fixed Ward countering wrong ability (fixes #8378) 2021-10-17 19:08:50 -05:00
Evan Kranzler
3bba2a308d [SLD] Implemented Dustin, Gadget Genius 2021-10-14 18:57:44 -04:00
Alex W. Jackson
7926193e34
Refactor ExpansionSet and its subclasses (#8382)
* Don't purge cards-by-rarity cache between tournaments

* Move DOM and WAR specific checks out of base ExpansionSet class

* Move Battlebond specific methods out of base ExpansionSet class

* Refactor ExpansionSet and subclasses

* Zendikar boosters also only have full-art basic lands

* Fix Eldritch Moon (#8171)
2021-10-13 11:47:23 -04:00
Evan Kranzler
ce88658495 [GRN] various text fixes 2021-10-12 10:16:20 -04:00
Evan Kranzler
f98069e829 [ZNR] a few text fixes 2021-10-10 17:16:03 -04:00
Evan Kranzler
79235d9ad6 small change to conditional triggered ability text generation 2021-10-10 16:07:34 -04:00
Evan Kranzler
f7e821be2f
Reworking effects that allow controlling combat (WIP) (#8159)
* reworked effects that allow controlling combat

* [AFC] Implemented Berserker's Frenzy

* [AFC] updated Berserker's Frenzy to roll correctly
2021-10-10 10:25:10 -04:00
Evan Kranzler
f14e15d33a replace some instances of getPlayers with getPlayersInRange (#8348) 2021-10-07 19:20:18 -04:00
Evan Kranzler
2506261063 [MIC] Implemented Gorex, the Tombshell 2021-10-07 09:32:26 -04:00
Jeff Wadsworth
22493c22af - Fixed #8299 2021-10-05 16:54:49 -05:00
Evan Kranzler
f3d643a351 [MID] a few more text fixes 2021-10-05 08:20:37 -04:00
Evan Kranzler
4fe2904f3f [MIC] various text fixes 2021-10-04 21:16:14 -04:00
Evan Kranzler
53540b9b36 [MID] various text fixes 2021-10-04 20:37:31 -04:00
Oleg Agafonov
58ab020065 Dev: pom clean up, improved parent/child structure; 2021-10-03 18:11:56 +04:00
Jeff Wadsworth
c45f8c91a3 - Fixed #8329 2021-10-01 15:56:40 -05:00
Oleg Agafonov
93bc20ee5a
Merge pull request #7945 from magefree/dependabot/maven/com.j256.ormlite-ormlite-jdbc-5.6
Bump ormlite-jdbc from 5.1 to 5.6
2021-10-01 22:09:57 +04:00
Oleg Agafonov
1c6eb10bd1 Dev: migrated to single json lib (removed json-simple from deck import code), clean up guava lib usage in cards; 2021-10-01 17:57:54 +04:00
Oleg Agafonov
fa70af6131 Dev: removed test data from resources to data folder; 2021-10-01 14:10:39 +04:00
Evan Kranzler
7b1e3fae7b [MIC] Implemented Wall of Mourning 2021-09-30 08:52:24 -04:00
Daniel Bomar
4943a16464
Merge pull request #8330 from weirddan455/prevent-damage
Removed game.preventDamage method (fixes #8280)
2021-09-29 15:32:50 -05:00
Jeff Wadsworth
970125c5c4 - small refactor Foretell ability 2021-09-29 09:45:08 -05:00
Alex W. Jackson
edbb99f0ba
Implement booster collation for (original) Innistrad and Dark Ascension (#8339) 2021-09-29 09:03:46 -04:00
Oleg Agafonov
f9beed6a89 Dev: clear pom files, fixed wrong test packages and scope, added zip tests; 2021-09-29 16:01:36 +04:00
Jeff Wadsworth
6f76c3371e - Fixed #8334. Refactored and simplified some aspects of the Foretell ability. 2021-09-28 16:49:43 -05:00
Jeff Wadsworth
7ba3a8f637 Merge branch 'master' of https://github.com/magefree/mage 2021-09-27 16:35:23 -05:00
Jeff Wadsworth
7ca17020ef - Fixed #8317 2021-09-27 16:35:10 -05:00
Daniel Bomar
eec3c44f1e
Removed game.preventDamage method (fixes #8280) 2021-09-27 16:01:28 -05:00
Oleg Agafonov
0e1abaec5d Dauthi Voidwalker - fixed that it doesn't work with cards (related to a3ca9fc03a); 2021-09-27 23:29:41 +04:00
Evan Kranzler
11d5fc7eae [MIC] Implemented Prowling Geistcatcher 2021-09-27 08:40:16 -04:00
Evan Kranzler
a87b28f348 [MID] various text fixes 2021-09-26 14:34:32 -04:00
Oleg Agafonov
f3b8f0a44a * Hextproof from color - improved card icon, added details in icon's popup text; 2021-09-26 00:31:17 +04:00
Oleg Agafonov
95b782d519 Tests for #5630 2021-09-25 18:09:21 +04:00
Evan Kranzler
b895611c4d
Updating standard (don't merge until 9/24) (#8297)
* removed rotated cards from standard ban list

* updated standard legality to handle sets releasing after fall set inn the same year

* some more updates to standard

* small change
2021-09-24 22:07:12 -04:00
jeff@delmarus.com
b963168f35 - hopefully line spacing is rectified on my client 2021-09-23 19:26:01 -05:00
Evan Kranzler
3a3e3fda48 various files converted from CRLF to LF 2021-09-23 19:37:47 -04:00
Jeff Wadsworth
ea561892f5 - Fixed #8293 2021-09-23 16:45:35 -05:00
Jeff Wadsworth
4c88d2ae5e - a real fix for #5630 2021-09-23 12:02:29 -05:00
Alex W. Jackson
384051d9eb
Make BoosterCollator not share state between tables on a server (#8312) 2021-09-23 08:06:08 -04:00
Evan Kranzler
bcb42b8f46 simplified ObjectSourcePlayerPredicate interface 2021-09-22 21:20:55 -04:00
Jeff Wadsworth
b0094331b4 Fixed #5630 2021-09-22 16:46:52 -05:00
Evan Kranzler
4ab41a5b12 [MID] updated Teferi, Who Slows the Sunset emblem 2021-09-22 09:39:21 -04:00
Raphael "who?!" Kehldorfer
aec68ac9d5
[MID] Implemented Teferi, Who Slows the Sunset (#8267)
* [MID] Implemented Teferi, Who Slows the Sunset

* [MID] Refactored Teferi, Who Slows the Sunset:
- Add Targets during activation
? Don't know where / how to properly implement the Emblem effect yet

* [MID] Refactored Teferi, Who Slows the Sunset:
- Add Targets during activation
? Don't know where / how to properly implement the Emblem effect yet
2021-09-22 08:54:13 -04:00
Evan Kranzler
863d8166f1 [MID] fixed Foul Play only targeting creatures with power 1 or less (fixes #8308) 2021-09-22 07:52:32 -04:00
Oleg Agafonov
d35e1fbfb1 * Play card without mana - fixed that some cards did not allow to choose a casting spell from split/mdfc cards (#7410); 2021-09-21 15:30:40 +04:00
Oleg Agafonov
6bc5a00e8a * Alternative costs - fixed that it can be activated on free cast (example: cascade with overload, #6925, #7410, #7741, #6342); 2021-09-21 14:22:46 +04:00
Evan Kranzler
658ae06e6f removed ObjectPlayer and ObjectPlayerPredicate 2021-09-20 23:38:31 -04:00
Evan Kranzler
c6feab68da refactored all instances of BeginningOfUpkeepAttachedTriggeredAbility 2021-09-20 21:22:17 -04:00
Evan Kranzler
bd22c4a3ae [MIC] Implemented Curse of Obsession 2021-09-20 21:06:41 -04:00
Evan Kranzler
541511692e [MIC] Implemented Curse of Unbinding 2021-09-20 20:57:37 -04:00
Evan Kranzler
b43bb44b27 [MIC] Implemented Curse of Clinging Webs 2021-09-20 19:53:02 -04:00
Jeff Wadsworth
77845bd1df Fixed #8286. 2021-09-20 15:54:52 -05:00
Evan Kranzler
a88427a6d9 [MIC] Implemented Visions of Dominance 2021-09-20 08:48:28 -04:00
Oleg Agafonov
46081d9185 GUI related improves:
* GUI: fixed that choose triggers/piles dialog doesn't close correctly before cast mode choose (#8225);
* GUI: fixed that some choose dialogs doesn't update battlefield state (example: choose amount, choose mana);
* Game: fixed duplicated json logs at the game's end;
2021-09-20 02:17:22 +04:00
Oleg Agafonov
a3ca9fc03a Dauthi Voidwalker - correct code for #8141 and same cards (see comments in fd719ad287); 2021-09-19 04:01:01 +04:00
Evan Kranzler
affd33c23b [MIC] Implemented Cleaver Skaab 2021-09-18 16:58:59 -04:00
Evan Kranzler
3d0571d5e9 [MIC] Implemented Tomb Tyrant 2021-09-18 16:41:48 -04:00
Oleg Agafonov
2cf005f971 Tests: improved performance in game tests; 2021-09-18 22:10:55 +04:00
Evan Kranzler
2fa76fc7be reworked Clockwork creature implementations (fixes #8292) 2021-09-18 11:08:17 -04:00
Oleg Agafonov
f107c1e4db Tests: improved performance in game tests; 2021-09-18 00:24:10 +04:00
Oleg Agafonov
021a2d251c Improves in some effects:
* ConditionalAsThoughEffect - improved support with target effects (see comments from e6e802033b);
* TargetCardInLibrary - added additional checks on wrong usage (must be used inside effects only, not as ability's target);
* PlayFromNotOwnHandZone - fixed wrong playable mark on battlefield's permanents (AI related too);
2021-09-17 21:21:37 +04:00
Evan Kranzler
7c2db3c5fc [MID] Implemented Sungold Sentinel 2021-09-17 08:43:49 -04:00
jeffwadsworth
025395788c - Fixed #8165. There are other cards that handle exiling sequentially, but this is a refactoring starting point. 2021-09-16 11:05:32 -05:00
Evan Kranzler
645779376f [MIC] Implemented Visions of Glory 2021-09-16 09:34:22 -04:00
Evan Kranzler
244cacfe3b [MIC] Implemented Sigardian Zealot 2021-09-16 09:09:41 -04:00
ciaccona007
08e8a34e8b [MID] Implement Ominous Roost 2021-09-15 12:51:08 -04:00
Evan Kranzler
698079f480 [MIC] Implemented Eloise, Nephalia Sleuth 2021-09-15 08:32:11 -04:00
Daniel Bomar
1b5ad66ae5
[MID] Implemented Light Up the Night 2021-09-14 18:17:22 -05:00
Evan Kranzler
5f32fe5308 [MID] changed daybound/nightbound from being singleton 2021-09-12 18:06:46 -04:00
Evan Kranzler
165a347092 [MID] Implemented Moonrager's Slash 2021-09-12 17:46:43 -04:00
Evan Kranzler
520528293a [MID] Implemented Seize the Storm 2021-09-12 13:51:47 -04:00
ciaccona007
eb065bc0e7 [MID] Implement Consuming Blob 2021-09-12 12:04:06 -04:00
Evan Kranzler
7e89d620b8 [MID] Implemented Shipwreck Sifters 2021-09-12 11:18:10 -04:00
Evan Kranzler
07e0a4ef54 [MID] Implemented Smoldering Egg / Ashmouth Dragon 2021-09-12 10:59:25 -04:00
Evan Kranzler
72cb83e615 [MID] Implemented Rise of the Ants 2021-09-12 10:00:35 -04:00
Evan Kranzler
e9d78fc5ac [MID] Implemented Silver Bolt 2021-09-12 08:58:52 -04:00
Evan Kranzler
4c69286c14 [MID] Implemented Bereaved Survivor / Dauntless Avenger 2021-09-12 07:42:55 -04:00
spjspj
3463b720ce
No final blank line in jumpstart
Worked out it can't have the final blank line or you can get blank packs being presented (so you will get a pack of 20 cards and a pack of 0 cards).
2021-09-12 15:21:03 +10:00
Evan Kranzler
d93475a5bb refactored flashback to remove unnecessary timing rule argument 2021-09-11 18:08:35 -04:00
Evan Kranzler
9e68649c32 [MID] Implemented Siege Zombie 2021-09-11 13:53:25 -04:00
Oleg Agafonov
b6f9d57216
Merge pull request #8251 from fearphage/preferred-has-3-rs
corrected typo: prefered -> preferred
2021-09-11 19:24:38 +04:00
Phred
2b2f30a88a
corrected typo: prefered -> preferred
ag -l prefered | xargs sed -i 's/refered/referred/g'
2021-09-11 10:03:10 -05:00
Evan Kranzler
835ee5514c [MID] Implemented Malevolent Hermit / Benevolent Geist 2021-09-11 09:27:50 -04:00
Daniel Bomar
a001b91ea6
[MID] Implemented Intrepid Adversary 2021-09-10 18:10:44 -05:00
Evan Kranzler
4ee219e787 [MID] Implemented Baithook Angler / Hook-Haunt Drifter 2021-09-10 09:40:50 -04:00
Evan Kranzler
a6dad60d48 [MID] added placeholder disturb mechanic 2021-09-10 09:37:30 -04:00