LevelX2
8739d7a101
[AKH] Fixed Heart-Piercer Manticore.
2017-04-17 09:53:13 +02:00
Mark Langen
2b4e8c3e4c
Add a parameter to untap only other objects than the source to UntapAllContollerEffect since OtherPredicate does not work on the filter for it.
2017-04-16 23:24:08 -06:00
Mark Langen
3c91b8d15f
Start to add builder pattern to some card definition classes
2017-04-16 23:24:08 -06:00
Mark Langen
79648eb7ea
Couple small changes
2017-04-16 23:24:08 -06:00
LevelX2
b8e952cfb9
[AKH] Approach of the Second Sun fix of cast watcher.
2017-04-17 00:44:08 +02:00
LevelX2
ed341528d9
[AKH] Fixed that Aftermath card images were shown wrongly rotated.
2017-04-16 22:57:08 +02:00
fireshoes
a8631c6ff3
Remove comma change from BecomesCreatureSourceEffect staticText.
2017-04-16 15:43:49 -05:00
Styxo
d4e2b6f306
[AKH] Fixed black cards tooltips
2017-04-16 17:14:48 +02:00
spjspj
9c487b7310
Merge pull request #3116 from spjspj/master
...
Fix Pyramid of the Pantheon, Fix SourceHasCounterCondition 'toString'
2017-04-16 22:04:44 +10:00
spjspj
c895253d5b
Fix Pyramid of the Pantheon, Fix SourceHasCounterCondition 'toString'
2017-04-16 22:04:07 +10:00
LevelX2
664405caab
[AKH] Added Vizier of Many Faces.
2017-04-16 13:28:36 +02:00
LevelX2
c033868795
[AKH] Added Vizier of Many Faces.
2017-04-16 13:04:38 +02:00
fireshoes
06fdd17e7d
[AKH] Updated tooltip text on several white and blue cards. Some minor fixes.
2017-04-15 23:37:50 -05:00
LevelX2
88d25b7a3a
[AKH] Added New Perspectives.
2017-04-16 01:38:59 +02:00
LevelX2
4044b9aa3b
[AKH] Embalm - Fixed that the token wrongly had the mana costs of the original card.
2017-04-16 01:38:36 +02:00
Styxo
5a2678f916
[AKH] Code deduplication and fixes
2017-04-15 18:53:57 +02:00
Styxo
e2a1d4436f
[AKH] Added some cards + fixes
2017-04-15 16:46:53 +02:00
Mark Langen
77586eec7e
Add 30 AKH card implementations
...
* Some of the cards still need testing. Will fix and problems and update tomorrow, but pushing them for now to make it clear what's been implemented so far.
2017-04-15 04:24:14 -06:00
Achilles
d51eb07692
- Added Time to Reflect and Wayward Servant. <Amonkhet>
2017-04-14 18:44:25 -05:00
fireshoes
7dea71df59
[AKH] Implemented some of the 4/13 spoiled cards.
2017-04-13 23:28:21 -05:00
Jeff
1c958ccc72
- A watcher for Shadows of the Grave.
2017-04-13 17:03:23 -05:00
ingmargoudt
58b7148de9
fix for endreksahr
2017-04-13 07:50:44 +02:00
Derek M
3e6a925271
Merge pull request #3088 from ingmargoudt/fixes
...
Fixes
2017-04-12 10:08:27 -04:00
Mark Langen
db74576397
Added 4 cards from AHK
...
* Added Cartouche of Strength
* Added Nest of Scarabs (More correct implementation than existing one)
* Added Soul-Scar Mage
* Added Battlefield Scavenger
2017-04-11 17:40:15 -06:00
ingmargoudt
03643d53a3
rename counttype to comparisontype
2017-04-11 17:01:59 +02:00
ingmargoudt
60a325c43f
fix reversed intcompare
2017-04-11 16:50:46 +02:00
Styxo
46d44f84e3
[AKH] Added Hapatra, Nest of Scarabs and Throne of the God Pharao and removed redundant code
2017-04-11 15:20:55 +02:00
ingmargoudt
cb693b5826
there were 3 enums to compare ints, refactored to 1
2017-04-11 09:15:12 +02:00
ingmargoudt
813d84274a
removed string constructor in SuperTypePredicate
2017-04-11 09:15:09 +02:00
fireshoes
7da69e5064
Merge origin/master
2017-04-10 18:46:43 -05:00
fireshoes
5fbcf759d6
[ANK] Added 4/10 spoilers to mtg-cards-data.txt and implemented a many cards.
2017-04-10 18:45:48 -05:00
Mark Langen
2b08d5a101
As Foretold Implemented
...
* Final change to card casting code to support as foretold. Removed all of the "Can't cast cards with no mana cost" code from the earlier parts of the casting process and simplified it to just the PlayerImpl::canPlay check and one final check in the main AbilityImpl::activate code after alternative costs have been chosen.
2017-04-10 17:00:27 -06:00
Mark Langen
b33e03862a
Work in progress changes to support As Foretold
...
* Modifies how cards with no mana cost are handled. You can now begin to cast them if there is an AlternativeCost that would allow you to play them.
2017-04-10 16:13:42 -06:00
Justin Herlehy
8b1220af66
[AKH] Liliana, Death's Majesty
...
Refactored the "Becomes a black Zombie in addition to its other colors and types" code to own class file to dedupe code from several cards.
2017-04-08 23:25:43 -07:00
LevelX2
22e376699e
Merge pull request #3066 from ingmargoudt/cleanups
...
Cleanups
2017-04-06 23:26:52 +02:00
LevelX2
b71c618294
[AKH] Added exert ability, Ahn-Crop Crasher and Combat Celebrant.
2017-04-06 23:10:24 +02:00
ingmargoudt
f22ebd3677
removed contains cardtype calls
2017-04-06 16:38:34 +02:00
ingmargoudt
ea6ba3c0a9
enum conditions
2017-04-06 16:30:22 +02:00
Mark Langen
40870f22c2
Added a bunch of spoiled cards for 4/5
...
* Added Colossapede
* Added Cut // Ribbons
* Added Insult // Injury (+test)
* Added Mouth // Feed
* Added Pouncing Cheetah
* Added Scarab Feast
* Added Rags // Riches (+test)
2017-04-05 22:41:56 -06:00
ingmargoudt
4361b7412a
can not be singleton
2017-04-05 19:10:47 +02:00
ingmargoudt
fb9d713287
singleton conditions to enum
2017-04-05 19:10:47 +02:00
ingmargoudt
809c8c97c9
introduced YouGainedLifeCondition
2017-04-05 19:10:46 +02:00
ingmargoudt
22c842dfec
refactored IntCompareCondition
2017-04-05 19:10:45 +02:00
ingmargoudt
1f89b4eedf
introduced XorLessLifeCondition
2017-04-05 19:10:44 +02:00
ingmargoudt
e44b2fd673
extracted duplicate AttachmentAttachedToCardTypePredicate
2017-04-05 19:10:43 +02:00
ingmargoudt
8b90f87af6
added addCardType to MageObject
2017-04-05 19:10:43 +02:00
ingmargoudt
cf6fe27f7d
duplicate continuouseffect for vehicles
2017-04-05 19:10:42 +02:00
Jeff
b3bd801c47
- Removed unneeded import.
2017-04-05 09:01:14 -05:00
Mark Langen
047449f14e
* Correct type line rendering for split cards with different types on each half.
...
* Correct art rendering for Aftermath, Split, and Fuse cards on the stack. Fused cards show as a single card with all the abilities / characteristics of both halves while on the stack.
2017-04-04 21:58:52 -06:00
Mark Langen
a2e8cedd02
Merge branch 'master' into akh-card-frame
2017-04-04 18:36:37 -06:00
Mark Langen
7a6b8a1540
Final Aftermath implementation stuff
...
* Fixed PlayerImpl::getPlayable() to support aftermath (Needs PLAY_FROM_NOT_OWN_HAND_ZONE at the granularity of each card half rather than the whole card)
* Added tests for Dusk // Dawn to make sure there are no regressions on Aftermath.
2017-04-04 18:28:30 -06:00
Mark Langen
fd73fd39af
Addressed Feedback and added cards
...
* Addressed feedback on Pull Request #3053
* Fixed a copy-paste bug in Destined // Lead
* Added two new Aftermath Split cards that were revealed today
2017-04-04 17:07:59 -06:00
fireshoes
195ff7f554
[AKH] Added 4/4 spoilers and implemented non-exert/embalm/aftermath cards.
2017-04-04 17:57:08 -05:00
fireshoes
fe33f82acc
[AKH] Added 4/4 spoilers and implemented non-exert/embalm/aftermath cards.
2017-04-04 14:28:45 -05:00
LevelX2
5952c5e33a
* Fixed a bug that mana pool was carried over to next game (e.g. using Savage Ventmaw).
2017-04-04 16:23:10 +02:00
LevelX2
269189f87e
Merge origin/master
2017-04-04 15:33:01 +02:00
LevelX2
45818f3a51
* Celestial Dawn - Fixed that it was not possible to pay colorless costs with non white mana.
2017-04-04 15:32:39 +02:00
Jeff
772fff4f66
- Fixed spelling for Event.
2017-04-04 08:24:30 -05:00
LevelX2
989250c7f6
Added missing player type.
2017-04-04 09:21:14 +02:00
Mark Langen
18663f0a7a
Amonket Aftermath ability and card frame changes Completed
...
* Aftermath Ability implementation complete (At least until we see comprehensive rules that contradict the way I assumed it will work)
* Aftermath Card Frame rendering complete
* Normal Split and Fuse Split card frame rendering complete
* Amonket Split card CMC changes NOT made, but left for a separate commit
2017-04-04 00:29:54 -06:00
Mark Langen
a96a7f89f5
Work in progress changes for Amonket Aftermath ability.
...
* Card Rendering has support for Aftermath Split card frames
* Card Rendering has support for Split cards
* Aftermath ability work in progress
2017-04-03 04:15:25 -06:00
ingmargoudt
211d433ea9
playertype, enum singleton
2017-04-02 22:09:20 +02:00
Derek M
b19170f34f
Merge pull request #3045 from SickBoyWi/master
...
Implemented Soul Burn card for the two sets it's a part of: Ice Age a…
2017-04-02 12:17:32 -04:00
LevelX2
097a8ce0dd
Some rework to end turn logic and removing of stack objects (related to #2977 ).
2017-04-02 15:18:50 +02:00
LevelX2
15c1c7f8c0
* Fixed a problem with flashback ability and variable non mana costs (related to #2436 ).
2017-04-02 10:11:25 +02:00
ingmargoudt
594ffa2754
rewrote some streams and optionals
2017-04-01 22:45:40 +02:00
LevelX2
d0bf77cedf
* Fixed a problem with replacement effects that add counters were applied more than once to the same EnteresTheBattlefield event ( fixes #2872 ).
2017-04-01 17:43:17 +02:00
Johnny.Hastings@gmail.com
2be3f20320
Implemented Soul Burn card for the two sets it's a part of: Ice Age and Invasion.
2017-03-31 18:33:17 -05:00
ingmargoudt
884ae83791
Merge pull request #3042 from ingmargoudt/card_functions
...
move static function to CardImpl, and other api fixes
2017-03-31 18:52:37 +02:00
LevelX2
db25867067
* Fixed a problem of VariableCostImpl with stack abilities.
2017-03-31 17:30:41 +02:00
Achilles
c968a03ff8
- Fixes all but the Conflagrate issue in regards to FlashbackAbility. The CMC issue works with the Flashback cards as well. Conflagrate will require more testing to see what is going on.
2017-03-30 21:11:15 -05:00
ingmargoudt
6f8f10fcc3
move static function to CardImpl, and other api fixes
2017-03-30 20:09:47 +02:00
fireshoes
1bf2d1782c
[MPS-AKH] Added Amonkhet Masterpiece reprints. [MM3] Token updates
2017-03-29 10:42:43 -05:00
fireshoes
55b433ae36
[AKH] Added 3/27 spoilers to mtg-cards-data.txt. Implemented several of the new cards.
2017-03-28 22:25:29 -05:00
Derek M
1dcd3d0a81
Merge branch 'master' into type_api
2017-03-27 19:13:45 -04:00
Jeff
aa81a6d663
- LoseAbilityAllEffect() now works with rule 611.2c.
2017-03-27 17:17:56 -05:00
Jeff
c4dc0222d8
- Fixed Indomitable Creativity. Bug #3029
2017-03-27 16:42:32 -05:00
ingmargoudt
5cd1b5880f
fix supertype on the client
2017-03-27 22:20:19 +02:00
ingmargoudt
0879298e92
refactor cards to use supertype enum
2017-03-27 21:56:33 +02:00
ingmargoudt
84559457d3
refactor supertype to enum
2017-03-27 21:51:04 +02:00
Clint Herron
70e4752cfd
Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire
2017-03-27 08:37:27 -04:00
Achilles
3a2c828fb8
- Fixed Rivals' Duel.
2017-03-26 18:25:45 -05:00
Achilles
c2bcb59c82
- Added Barrin's Spite. Fixed a targeting issue.
2017-03-25 22:41:03 -05:00
Clint Herron
402beb3b49
Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire
2017-03-25 22:07:23 -04:00
Achilles
26dbee6f2d
- Added BecomesCreatureAttachedWithActivatedAbilityOrSpellEffect(). Converted all the Genju cards to use it. This class is subject to rule 611.2c.
2017-03-25 17:30:14 -05:00
Achilles
0639b3b75b
- Reverted BecomesCreatureAttachedEffect(). It broke cards that are not subject to Rule 611.2c like Ensoul Artifact. A new class called BecomesCreatureAttachedWithActivatedAbilityOrSpellEffect() will be made to fix the Genju of the Spires bug. Yes, that is a long name. If someone has a better suggestion, please let it be known.
2017-03-25 17:02:47 -05:00
Achilles
ff489446fe
- Fixed BecomesCreatureAttachedEffect(). Rule 611.2c. Fixes https://github.com/magefree/mage/issues/3011
2017-03-25 13:11:08 -05:00
Clint Herron
40d318ce09
Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire
2017-03-25 10:46:20 -04:00
Derek M
1a9c5fa469
Merge pull request #3014 from drmDev/bug/sphereCosts
...
fixes #3012 manaCosts not null check and way to retrieve it
2017-03-24 08:06:30 -04:00
Clint Herron
bce7e690a8
Merge remote-tracking branch 'upstream/master' into CMH-GuiltyConscienceAndBackfire
2017-03-23 19:26:34 -04:00
Clint Herron
3c81275ab1
Implementing Guilty Conscience and Backfire, as well as expanding capabilities of trigers that occur when an enchanted creature deals damage to a player, and adding an effect to deal damage to an enchanted creature.
2017-03-23 19:23:28 -04:00
drmDev
57efb10003
fixing tokens exiled at end of combat - not at end step
2017-03-23 11:21:38 -04:00
drmDev
097d60f5fc
fixes #3012 manaCosts not null check and way to retrieve it
2017-03-23 10:25:21 -04:00
ingmargoudt
5ae4ddce07
Merge branch 'master' into phantoms
2017-03-23 13:43:34 +01:00
vraskulin
d3214c65e4
Merge remote-tracking branch 'fork/master'
2017-03-22 14:51:31 +03:00
vraskulin
d93061c0bc
Equals should be compared with == but not equals()
2017-03-22 14:50:50 +03:00
ingmargoudt
b154bf58f9
phantom effect code duplication
2017-03-22 10:25:57 +01:00
LevelX2
7693f3fd59
Added Ogre Leadfoot.
2017-03-21 11:37:22 +01:00
vraskulin
f37c823aa8
String + string concatenation can be replaced by string + char concetenation
2017-03-20 14:00:18 +03:00
drmDev
311e41abd2
refactored exiletokensAtEndStep
2017-03-19 17:54:07 -04:00
drmDev
c109fc8a0e
Implemented card Lightning Coils and test for it
2017-03-19 12:23:58 -04:00
LevelX2
441b6bc2e9
Fixed AI handling of cost reduction of reductions defined with "up to" causing game locks.
2017-03-19 11:20:37 +01:00
Jeff
6cb77bfb8f
- Fix for bug #2977 . Perhaps Levelx knows of a better solution. It works fine in my testing.
...
Bound // Determined + Child of Alara = No Death Trigger
2017-03-17 14:54:14 -05:00
LevelX2
68d398c6fb
Merge pull request #2968 from ingmargoudt/singleton-as-enum
...
rewrote singleton to enum where applicable
2017-03-16 17:02:31 +01:00
Clint Herron
3eb9be1b18
Adding check to Flagbearer requirement that only checks for spells that are cast and abilities that are activated -- choosing targets from triggered abilities is exempt.
2017-03-16 03:30:07 -04:00
ingmargoudt
234cfe9519
rewrote singleton to enum where applicable
2017-03-14 16:32:47 +01:00
LevelX2
962f05bbcb
* Offering - Fixed that offering could not be activated as instant, cancel during offering mana payment now restores also the sacrificed permanent.
2017-03-12 11:29:53 +01:00
LevelX2
1b2636d0cd
* Arachnuns Web - Fixed condition handling. Some renaming.
2017-03-12 10:36:51 +01:00
ingmargoudt
1f215cdbe3
removed autoboxing :
...
Boolean -> boolean
Integer -> int
Float -> float
2017-03-11 15:17:14 +01:00
ingmargoudt
4b5378c423
pool.count() == 0 ---> pool.isEmpty()
2017-03-11 13:52:46 +01:00
LevelX2
c042d50ec7
Fixed a bug that fizzling spell copies let also wrongly fizzle the original spell on the stack the copy was made from.
2017-03-11 12:00:05 +01:00
Nathaniel Brandes
900d68f77d
Fix CMC for flashbacked cards.
...
This should fix Conflagate/Chalice of the Void interaction.
2017-03-09 23:32:42 -08:00
Nathaniel Brandes
d7d700f66a
Some clarification around loyalty. Added unit test.
2017-03-09 02:30:52 -08:00
Justin Herlehy
1a2724c9b2
Revert: Fix planeswalker loyalty counters.
...
This change was incorrect.
Gatherer Ruling:
10/1/2005: Planeswalkers will enter the battlefield with double the normal amount of loyalty counters. However, if you activate an ability whose cost has you put loyalty counters on a planeswalker, the number you put on isn’t doubled. This is because those counters are put on as a cost, not as an effect.
2017-03-09 01:14:10 -08:00
Nathaniel Brandes
52fa369024
Fix planeswalker loyalty counters.
...
They should be added like normal counters, firing events that can be
intercepted by cards like doubling season.
2017-03-08 23:57:11 -08:00
Nathaniel Brandes
4a9eddb724
Properly fix targeting.
...
The notTarget should only invalidate the canBeTargetedBy return.
The Filter should still be relevant.
2017-03-08 20:59:01 -08:00
Nathaniel Brandes
495e20ae1a
Fix target defender cases that don't target.
2017-03-08 20:44:02 -08:00
Nathaniel Brandes
ce1f4a3bf8
Phyrexian mana now correctly a payment choice.
...
Per rule 601.2b, it is not determined at the pay costs step,
but at the "choice" step, long before costs are determined.
This fixes trinisphere interactions and should be consistent with the
rules.
2017-03-08 20:03:28 -08:00
Nathaniel Brandes
3bebdd65bc
Fixed crewing staying if the object changed zones.
2017-03-08 01:01:10 -08:00
Achilles
31ba751c66
- Fix for Spellskite dealing with a targeted source spell/ability that has multiple targets.
2017-03-07 22:14:18 -06:00
ingmargoudt
7e26a7a141
commandzone is public
2017-03-07 23:19:05 +01:00
ingmargoudt
c5002983e3
changed static zone function to enum method
2017-03-07 22:02:15 +01:00
ingmargoudt
1bc8e2248b
changed enum equals to ==, removed contains check for set
2017-03-07 21:47:11 +01:00
ingmargoudt
1caf3a6be4
change getLibrary().size() > 0 to hasCards()
2017-03-07 17:28:26 +01:00
Nathaniel Brandes
d6e4ef793e
Fix delve.
...
Delve should not target the cards it exiles.
2017-03-07 00:03:37 -08:00
ingmargoudt
90c6a69335
fixed a count in Battlefield, changed loops to streams
2017-03-06 12:25:14 +01:00
ingmargoudt
3d029d6ad5
put comparing logic in counttype, remove all switches
2017-03-06 11:46:22 +01:00
ingmargoudt
6d4c388c5e
small change in gender enum
2017-03-06 10:18:16 +01:00
ingmargoudt
5387f06898
cards now use the new CountType
2017-03-05 23:29:51 +01:00
ingmargoudt
80580d69e9
Replace checktype enum for Cardtype enum
2017-03-05 20:04:09 +01:00
ingmargoudt
b5e8c88153
remove all contains(cardtype.XX) references, instead use the default interface method
2017-03-05 09:14:33 +01:00
Nathaniel Brandes
58d0a8eb2a
Remove empty function incorrectly checked in.
2017-03-04 23:08:54 -08:00
Nathaniel Brandes
1d3ebb749d
Fix omniscience effect for colorless mana.
...
Also unified the tests for omniscience into a single file, and
put the effect into a single class so that Tamiyo and Omniscience
can share implementations.
2017-03-04 23:04:11 -08:00
Justin Herlehy
8cfe66e29c
Fix Ichorid to set notTarget flag.
...
Fixes issued #2906
2017-03-04 16:20:17 -08:00
ingmargoudt
5a57731968
added new helper methods to test for CardType, to get rid of the contains(CardType.XXX) everywhere, put the logic of that in one place and use the interface call
2017-03-04 00:16:36 +01:00
ingmargoudt
372584f7ad
changed cardtype from list to enumset
2017-03-03 17:04:32 +01:00
ingmargoudt
d01aed42ed
change enum equals to ==
2017-03-01 15:05:44 +01:00
vraskulin
0bc9cf91a8
Minor improvements - StringBuilder now have initial value
2017-02-28 15:26:07 +03:00
vraskulin
11dc1e10f1
Few lambda's and removed explicit type from creating lists and hashmaps
2017-02-28 13:46:57 +03:00
vraskulin
0a3c95dde5
Inner classes should be static. It reduces memory usage and gives perfomance boost + DeckImporter rollback
2017-02-28 12:40:12 +03:00
vraskulin
ad7d3c8078
equals "" should be replaced with isEmpty
2017-02-28 11:45:15 +03:00
vraskulin
3600d03e2c
StringBuilder in a class field may cause memory leaks, it's not GCed, so it's a better way to store all errors just in string field
2017-02-28 11:37:31 +03:00
ingmargoudt
afbf5ce2b6
Merge pull request #2891 from kubikrubikvkube/master
...
Nulls to optional. Also there was bug with AetherChaser
2017-02-27 17:51:35 +01:00
Jeff
79983fbe26
- Extra check to verify a player is in game.
2017-02-27 08:41:07 -06:00
vraskulin
498c8cf60c
Made utility classes final to explicitly forbid it's inheritance
2017-02-27 17:03:38 +03:00
vraskulin
f309717616
Merge remote-tracking branch 'fork/master'
2017-02-27 16:33:47 +03:00
vraskulin
af3986df46
All final strings became static - it will give a little perfomance boost, due to not instantiating same string every time
2017-02-27 16:33:32 +03:00
doncarton
5eaaa67d1e
Nulls to optional. Also there was bug with AetherChaser "you may pay" was not set to optional
2017-02-26 15:15:54 +03:00
LevelX2
d4415e2eff
Merge pull request #2887 from aastrand/ignorelist
...
Add client-side user ignore list
2017-02-26 09:49:43 +01:00
LevelX2
f06ee144f7
* Fixed AddCardTypeSourceEffect with limited duration and object reference was applied on wrong objects (fixes failing crew test).
2017-02-25 12:05:43 +01:00