Commit graph

7275 commits

Author SHA1 Message Date
Kevin Shin
23920a0696 remove new class that ended unused 2018-08-25 23:26:55 -05:00
Kevin Shin
7d2ba0cf2e all tests passing and satisfied with minimal changes; ready to merge 2018-08-25 23:24:01 -05:00
LevelX2
5703a49c81 XMage 1.4.31V1 2018-08-25 14:37:08 +02:00
LevelX2
9e88d847ed * Estrid, the Masked - fixed problems with with first and second ability (fixes #5223). 2018-08-25 14:30:31 +02:00
Kevin Shin
3ffd812bc6 After some revisions, BestowTest is now fully passed! Now to fix the other tests that don't anymore... 2018-08-25 04:43:38 -05:00
LevelX2
a40caf2840 * Covedted Jewel - Fixed triggered ability (fixes #5268). 2018-08-25 11:23:13 +02:00
Kevin Shin
e1bfd8a196 Permanents now detach all attachments when they change zones. Ready to test. 2018-08-25 03:57:43 -05:00
Oleg Agafonov
c34c13f7b7 * Fixed battlebond boosters (sometime it's can gen wrong booster without partners/cards) 2018-08-25 07:49:32 +04:00
Oleg Agafonov
4f7cfc852d
Revert "Fixes abilities that may target either opponents or planeswalkers" 2018-08-25 05:14:24 +04:00
Oleg Agafonov
924504d183
Merge pull request #5255 from kevinwshin/FixTargetOpponentOrPlaneswalker5252
Fixes abilities that may target either opponents or planeswalkers
2018-08-25 04:58:03 +04:00
Kevin Shin
1ed13f8bd8 Copy effects now properly attach copied auras to permanents. #5234 #2135 2018-08-22 23:38:49 -05:00
Kevin Shin
268b1748cc Fixes abilities that may target either opponents or planeswalkers to properly check if a player is an opponent. #5252 2018-08-22 04:46:32 -05:00
Piotr Szczepanski
ec7454d888 Commanders can be other types than a creature.
Commanders do not have to be creatures. They can also be Planeswalkers (Commander 2015, Commander 2018), but also can be other types (e.g. lands when enchanted by Song of the Dryads or Imprisoned in the Moon).
2018-08-20 12:37:53 +02:00
Oleg Agafonov
dba037858c * Fixed broken download images with Fourth Edition set; 2018-08-15 14:47:11 +04:00
LevelX2
deb675a74a Xmage 1.4.30V0 2018-08-15 11:35:40 +02:00
LevelX2
b96d6e12af Added some exception handling. 2018-08-15 11:28:13 +02:00
LevelX2
2429425fd2 Merge origin/master
Conflicts:
	Mage.Sets/src/mage/cards/s/SalvageTrader.java
	Mage.Sets/src/mage/cards/t/ThermalDetonator.java
2018-08-15 10:51:21 +02:00
LevelX2
9545ab055d Moved predicate to framework. 2018-08-15 10:47:31 +02:00
LevelX2
dbb25c8683
Merge pull request #5202 from credman0/PhasedOutRemoveFromCombatFix
Fixed phased out creatures not removed from combat (#5200)
2018-08-15 08:17:58 +02:00
LevelX2
6712e50146
Merge pull request #5196 from credman0/EmissaryOfGrudges
Implemented Emissary of Grudges
2018-08-15 08:17:16 +02:00
LevelX2
e516430aad
Merge pull request #5187 from jesusjbr/master
Xantcha, Sleeper Agent implemented.
2018-08-15 08:14:07 +02:00
LevelX2
94e265f396
Merge pull request #5185 from credman0/master
Aminatou, the Fate Shifter minor fix - can be commander and author info
2018-08-15 08:13:43 +02:00
LevelX2
8e040841a9
Merge pull request #5182 from Dilnu/Spell
Add methods to get information about potential spells.
2018-08-15 08:11:49 +02:00
LevelX2
6e242fb11f
Merge pull request #5178 from magefree/yuriko
Implemented Yuriko, the Tiger's Shadow
2018-08-15 08:09:40 +02:00
LevelX2
a30ed4fee5
Merge pull request #5157 from ninthworld/master
Add Star Wars Expansion sets to the Star Wars set
2018-08-15 08:09:19 +02:00
LevelX2
fa13786fab
Merge pull request #5053 from Sedictious/Battlebond_Boos
Fix Battlebond Partner distribution
2018-08-15 08:09:03 +02:00
dilnu
973c2a08e3 Remove an extra incorrect check in ArtifactSourcePredicate 2018-08-14 23:45:08 -04:00
Oleg Agafonov
593df43758 Refactoring: replace custom creature tokens with basic class (1 card);
Added blink test;
2018-08-15 06:47:33 +04:00
Oleg Agafonov
3da2f98eac Fixed predicate refactor at #5161;
* Interdict, Ouphe Vandals - fixed that it catch triggered + activated, but must only activated;
2018-08-15 06:29:06 +04:00
Samuel Sandeen
a94dbe1c9d
Fix a bug with Tawnos Urza's Apprentice caught by the predicate refactor (#5220) 2018-08-14 22:22:48 -04:00
Oleg Agafonov
a68667e582
Merge pull request #5161 from Dilnu/Kindred
Make the type checking on predicates added to filters stricter
2018-08-15 04:41:27 +04:00
quercitron
db2db4c27a
Merge pull request #5212 from magefree/5189-recast-spells-keep-their-previous-targets
Fix that cards that are cast using alternative cost effects keep their previous targets
2018-08-11 02:48:07 +03:00
Quercitron
e3a33e5894 Fix that cards that are cast using alternative cost effects keep their previous targets (#5189) - Always copy ability on cast. 2018-08-10 02:54:50 +03:00
Colin Redman
9adfa96667 Fixed phased out creatures not removed from combat (#5200) 2018-08-05 17:13:42 -06:00
dilnu
3e0a92fed8 Fix a typo 2018-08-04 22:42:22 -04:00
Colin Redman
18097e1248 Implemented Emissary of Grudges
Moved Leonin Stalker ability and cost to common classes
2018-08-03 00:29:44 -06:00
jesusjbr
f4515efe41 Xantcha, Sleeper Agent implemented.
Added a new effect (LoseLifePermanentControllerEffect).
2018-08-02 14:03:33 +02:00
ninthworld
2a2df685a9 Merge branch 'master' of https://github.com/magefree/mage.git 2018-08-01 18:40:58 -07:00
credman0
618070a848
Reverted 7092d16c5d
It busted the AI
2018-08-01 17:46:02 -06:00
Colin Redman
7092d16c5d Fixed color identity interaction with special cases IE Transguild Courier 2018-08-01 17:27:56 -06:00
Colin Redman
0fa4c2d324 Implemented Aminatou, the Fateshifter 2018-08-01 05:33:51 -06:00
Chatziargyriou Eleftheria
2731897add
Update ExpansionSet.java 2018-07-31 17:24:20 +03:00
Chatziargyriou Eleftheria
da383dbecc
Update ExpansionSet.java 2018-07-31 17:17:58 +03:00
Chatziargyriou Eleftheria
17cd5792d4
Update ExpansionSet.java 2018-07-31 17:09:56 +03:00
Chatziargyriou Eleftheria
197020b162
Merge branch 'master' into Battlebond_Boos 2018-07-31 17:02:11 +03:00
Evan Kranzler
ef38467326 Implemented Estrid, the Masked 2018-07-29 22:55:28 -04:00
dilnu
339779c8bd Add methods to get information about spells that have not yet been cast. 2018-07-29 11:22:41 -04:00
Samuel Sandeen
e5c1dfc4b7
Refactor ControlledCreaturesDealCombatDamagePlayerTriggeredAbility. (#5163)
It now triggers once for each player damaged.

Fixes https://github.com/magefree/mage/issues/5162
2018-07-29 08:16:07 -04:00
Samuel Sandeen
14520097a5
Fix issues with the ChosenSubtypePredicate and clone effects. (#5164)
Update ChosenSubtypePredicate to be an ObjectPlayer predicate. This fixes how cards that use it act when cloned.

Fixes https://github.com/magefree/mage/issues/5136
2018-07-29 07:44:19 -04:00
Samuel Sandeen
a164dad83f
Fix issues with Clone and Metallic Mimic (#5160)
Fix bugs with Metallic Mimic and Adaptive Automaton and clone effects.

Metallic Mimic and Adaptive Automaton were both using the technically correct EnterEventType specifier for their as enters the battlefield abilities. Despite it being technically correct this meant that their ability didn't trigger if they were cloned.

Additionally EnterAttributeAddChosenSubtypeEffect changed the subtype of the base object which meant that clones entered in with the chosen subtype of the original.
2018-07-29 07:40:48 -04:00
Samuel Sandeen
3875f42bac
Refactor addCounters to fix bugs in edge cases. (#5154)
Add code to check the controller of abilities on the stack instead of the controller of their source card or object.

This fixes https://github.com/magefree/mage/issues/5152
2018-07-29 07:31:59 -04:00
Evan Kranzler
95f375316b Implemented Yurikp, the Tiger's Shadow 2018-07-28 21:48:29 -04:00
Evan Kranzler
db6211cd20 Implemented Saheeli, the Gifted 2018-07-28 16:25:39 -04:00
Will Hall
76d0baa792 Implemented Gyrus, Waker of Corpses 2018-07-27 18:38:36 -07:00
spjspj
f58e33524d Implement 1 card C18 2018-07-27 18:53:34 +10:00
Evan Kranzler
2a6181b67a Implemeted Lord Windgrace 2018-07-25 15:45:56 -04:00
Evan Kranzler
91244c09dc Implemented Kestia, the Cultivator 2018-07-25 12:58:19 -04:00
Evan Kranzler
7c6dfe3e56 Implemented Octopus Umbra 2018-07-25 12:39:06 -04:00
Evan Kranzler
41fce60eee Implemented Nesting Dragon 2018-07-24 20:45:45 -04:00
Quercitron
79120e7484 Make color distribution in booster more uniform 2018-07-25 02:46:31 +03:00
Evan Kranzler
2d23d5c84e Implemented Echo Storm 2018-07-24 17:10:13 -04:00
ninthworld
19d1ff2657 Merge remote-tracking branch 'upstream/master' 2018-07-23 16:09:53 -07:00
Evan Kranzler
452a525194 fixed Silverclad Ferocidons (and likely other cards) allowing players to sacrifice creatures they don't control (fixes #5166) 2018-07-23 17:42:03 -04:00
Evan Kranzler
fdf8c99d8a Implemented Retrofitter Foundry 2018-07-23 15:59:47 -04:00
dilnu
a8cd19eaea Make the type checking on predicates added to filters stricter to make runtime errors less likely. 2018-07-22 11:27:24 -04:00
ninthworld
8dfb5f913d Merge branch 'master' of https://github.com/magefree/mage
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2018-07-20 22:11:49 -07:00
dilnu
e1fc060755 Don't count players who have lost or left the game as having lost life.
Fixes https://github.com/magefree/mage/issues/5153
2018-07-18 21:07:23 -04:00
ninthworld
86107de54e Merge remote-tracking branch 'upstream/master'
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2018-07-16 21:16:20 -07:00
ninthworld
f31bfa829e add Star Wars expansion sets to the Star Wars set 2018-07-16 20:55:05 -07:00
Evan Kranzler
d8a3a408df fixed Vivien Reid's first ability not putting cards back in a random order 2018-07-16 10:47:28 -04:00
igoudt
877a355a7d rewrite some code to streams 2018-07-15 20:50:26 +02:00
Evan Kranzler
c743906557 fixed instances of life gain being life loss with negative numbers (fixes #5149) 2018-07-14 16:50:44 -04:00
LevelX2
0d9f8ad19a
Merge pull request #4993 from Zzooouhh/Zzooouhh-woc
Implemented Word of Command (presumably buggy)
2018-07-14 10:40:38 +02:00
LevelX2
c29bb86ea0
Merge pull request #5131 from NoahGleason/thick-skinned-goblin
Implement Thick-Skinned Goblin
2018-07-14 10:40:10 +02:00
LevelX2
a3c4c2365d
Merge pull request #5119 from NoahGleason/M19-oracle-changes
M19 oracle changes
2018-07-14 10:39:50 +02:00
LevelX2
0f615d49fa
Merge branch 'master' into orcish-mine 2018-07-14 10:32:05 +02:00
LevelX2
2cdd835ab5
Merge pull request #5108 from NoahGleason/shape-of-the-wiitigo
Implement Shape of the Wiitigo
2018-07-14 10:28:05 +02:00
LevelX2
117ca40014
Merge pull request #5107 from NoahGleason/balduvian-fallen
Implement Balduvian Fallen
2018-07-14 10:27:54 +02:00
LevelX2
1e2d269086
Merge pull request #5098 from NoahGleason/swift-silence
Implement Swift Silence
2018-07-14 10:27:19 +02:00
LevelX2
6912a8c5b0
Merge pull request #5094 from NoahGleason/rakdos-augermage
Implement Rakdos Augermage
2018-07-14 10:26:39 +02:00
LevelX2
ef8b895d5b
Merge pull request #5093 from NoahGleason/nightcreep
Implement Nightcreep
2018-07-14 10:26:24 +02:00
LevelX2
484d981c81
Merge pull request #5082 from NoahGleason/Aetherplasm
Implement Aetherplasm
2018-07-14 10:17:36 +02:00
LevelX2
556944f312
Merge pull request #5078 from NoahGleason/keeper-of-the-beasts
Implement Keeper of the Beasts
2018-07-14 10:13:05 +02:00
Noah Gleason
3272e90bdb
Merge pull request #5141 from NoahGleason/molten-firebird
Implement Molten Firebird and Ivory Gargoyle
2018-07-14 00:40:49 -04:00
Evan Kranzler
0ad86ff530 fixed Ajani's Last Stand token name (fixes #5147) 2018-07-13 14:08:19 -04:00
Noah Gleason
c372d93f66
Implement Molten Firebird and Ivory Gargoyle 2018-07-10 23:00:27 -04:00
Noah Gleason
9108104fe5
Implement Predatory Focus 2018-07-09 22:21:40 -04:00
igoudt
6dce0c26f3 fix some his or her to their 2018-07-09 21:25:04 +02:00
igoudt
c456a1961e add more isActivePlayer and isAttachedTo calls 2018-07-09 21:25:04 +02:00
Noah Gleason
c91e56b937
Fix Rite of Belzenlok token not damaging its controller 2018-07-08 22:01:37 -04:00
Noah Gleason
bad82d62ba
Implement Thick-Skinned Goblin 2018-07-08 21:55:17 -04:00
ingmargoudt
e86791cf44
Merge pull request #5112 from NoahGleason/aetherflame-wall
Implement Aetherflame Wall
2018-07-08 22:28:11 +02:00
igoudt
d6450eed94 change enum comparison 2018-07-08 13:11:39 +02:00
Quercitron
36c004122a Fix dual lands generation in the Core Set 2019 boosters 2018-07-08 01:19:49 +03:00
Noah Gleason
0ab7345fa3
Update wording (nonfunctional) 2018-07-06 20:21:17 -04:00
Evan Kranzler
d7914bca44 fixed Tezzeret, Artifice Master emblem not triggering 2018-07-06 09:46:59 -04:00
Evan Kranzler
c169f07833 fixed Ajani, Adversary of Tyrants emblem not triggereding (fixes #5115) 2018-07-06 09:20:29 -04:00
Noah Gleason
1f7c7e90b2
Implement Aetherflame Wall 2018-07-05 21:35:56 -04:00
Evan Kranzler
6c000d9177 fixed Rowan Kenrith emblem not triggering (fixes #5109) 2018-07-04 22:59:32 -04:00
Noah Gleason
258384fae7
Implement Shape of the Wiitigo 2018-07-04 11:31:03 -04:00
Noah Gleason
4bfc132f29
Implement Balduvian Fallen 2018-07-04 10:25:49 -04:00
igoudt
9f06046f22 add isOwned and isControlled methods. remove some null-checks, remove some unnecessary casts 2018-07-04 14:24:11 +02:00
Noah Gleason
3d79890e9a
Implement Swift Silence 2018-07-01 19:03:47 -04:00
Noah Gleason
147a3cf91d
Implement Rakdos Augermage 2018-07-01 15:39:19 -04:00
Noah Gleason
1575d8282c
Implement Nightcreep 2018-07-01 10:58:25 -04:00
Noah Gleason
174588e343
Implement Aetherplasm 2018-06-29 20:47:11 -04:00
igoudt
dcb1affb9d use isActivePlayer where possible, some minor text fixes 2018-06-29 21:18:05 +02:00
igoudt
ca1ebeb55e add method Game.isActivePlayer(UUID playerId) 2018-06-29 14:59:11 +02:00
Evan Kranzler
2b78716a1b fixed Young Pyromancer text 2018-06-28 09:06:51 -04:00
Noah Gleason
e2da104d6d
Implement Keeper of the Beasts 2018-06-27 22:02:53 -04:00
Noah Gleason
cf571122ea
Allow activating equip ability 2018-06-25 22:36:49 -04:00
Noah Gleason
324ff4a3b8
Implement Serra Inquisitors 2018-06-25 21:58:26 -04:00
Evan Kranzler
8b37c778f0 fixed Rush of Knowledge counting all permanents (fixes #5069) 2018-06-25 08:26:28 -04:00
theelk801
b1be4ad7d5
Merge branch 'master' into giant-oyster 2018-06-24 22:24:25 -04:00
theelk801
355a3ab281
Merge pull request #5063 from NoahGleason/jovens-ferrets
Implement Joven's Ferrets
2018-06-24 21:53:40 -04:00
Evan Kranzler
087e58383a fixed Alpine Moon causing a rollback 2018-06-24 21:27:10 -04:00
Noah Gleason
8949987b78
Add ConditionalTriggeredAbility for non-intervening0f 2018-06-24 20:02:40 -04:00
Noah Gleason
37e800a7dd
Update Voice of Resurgence 2018-06-24 16:55:15 -04:00
LevelX2
ca21f32009 Xmage 1.4.30V6 2018-06-24 21:26:52 +02:00
Noah Gleason
6a2ad691d4
Fix OrTriggeredAbility hang 2018-06-24 13:51:02 -04:00
LevelX2
99cfd86533 * Some more fixes for ManaOptions #5023 2018-06-24 18:11:17 +02:00
Noah Gleason
6ee4d4a217
Override Ability setters 2018-06-24 10:51:48 -04:00
Noah Gleason
65d67d48fd
Start implementing OrTriggeredAbility 2018-06-23 23:57:04 -04:00
theelk801
235974f21a
Merge pull request #5067 from NoahGleason/delirium
Implement Delirium
2018-06-23 21:43:57 -04:00
Evan Kranzler
c637857480 Added null detection to MageObjectReference 2018-06-23 21:39:36 -04:00
Noah Gleason
39ec630c45
Implement Orcish Mine 2018-06-23 19:42:19 -04:00
LevelX2
da92cd745e * Some rework/fixes/optimizations of calculation of available mana. 2018-06-24 01:27:42 +02:00
LevelX2
fdddbbbbe6 * Some rework/fixes/optimizations of calculation of available mana. 2018-06-24 01:23:49 +02:00
Noah Gleason
b97719fbb6
Add Delirium, not recognized as a card 2018-06-23 17:30:57 -04:00
theelk801
c4d9bfe554
Merge pull request #5047 from NoahGleason/mourners-shield
Implement Mourner's Shield
2018-06-23 13:38:06 -04:00
Noah Gleason
c78cbc40eb
Fix Heat Stroke 2018-06-23 11:11:35 -04:00
theelk801
42354c1583
Merge pull request #5049 from NoahGleason/neurok-transmuter
Implement Neurok Transmuter
2018-06-22 17:57:45 -04:00
Noah Gleason
f7e7db4edc
Fully implement Giant Oyster 2018-06-22 15:54:31 -04:00
Chatziargyriou Eleftheria
25d7f9c83b
Update ExpansionSet.java 2018-06-22 20:09:36 +03:00
Chatziargyriou Eleftheria
f980224239
Update ExpansionSet.java 2018-06-22 19:22:57 +03:00
Chatziargyriou Eleftheria
d754410934
Add booster generator for Battlebond packs 2018-06-22 18:57:13 +03:00
Evan Kranzler
266a7cdb85 Implemented Transmogrifying Wand 2018-06-22 08:44:15 -04:00
Evan Kranzler
592362a258 Implemented Tezzeret, Artifice Master 2018-06-21 22:59:29 -04:00
Evan Kranzler
36e5bd3a1d Implemented Thorn Lieutenant 2018-06-21 19:59:26 -04:00
LevelX2
e04c132dfe Xmage 1.4.30V5 2018-06-21 23:13:17 +02:00
LevelX2
46d61a1ebc Fixed some possible exceptions. 2018-06-21 22:49:15 +02:00
LevelX2
083d4cee6d Fixed possible static filter manipulation. 2018-06-21 22:33:02 +02:00
Evan Kranzler
36c0e35035 Implemented Leonin Vanguard 2018-06-21 15:34:05 -04:00
Noah Gleason
9b68e0860b
Implement Neurok Transmuter 2018-06-21 15:29:17 -04:00
Evan Kranzler
2b2f3b6e01 Updated "this spell" wordings 2018-06-21 12:32:25 -04:00
LevelX2
cd8e038679 * Changes for netMana null handling #5023. 2018-06-21 16:27:05 +02:00
Evan Kranzler
db07686008 Implemented Departed Deckhand 2018-06-21 08:37:18 -04:00
Noah Gleason
6a2eda0146
Implement Mourner's Shield 2018-06-20 23:11:07 -04:00
Evan Kranzler
9c7fc43737 Implemented One with the Machine 2018-06-20 16:26:55 -04:00
Evan Kranzler
d9dfef24ce updated "can't be countered" text 2018-06-20 11:21:06 -04:00