diff --git a/.gitattributes b/.gitattributes index dc87add3c79..0c1435049e0 100644 --- a/.gitattributes +++ b/.gitattributes @@ -6670,6 +6670,7 @@ res/cardsfolder/m/meglonoth.txt svneol=native#text/plain res/cardsfolder/m/megrim.txt svneol=native#text/plain res/cardsfolder/m/meishin_the_mind_cage.txt svneol=native#text/plain res/cardsfolder/m/melancholy.txt svneol=native#text/plain +res/cardsfolder/m/melee.txt -text res/cardsfolder/m/melek_izzet_paragon.txt -text res/cardsfolder/m/melesse_spirit.txt svneol=native#text/plain res/cardsfolder/m/melira_sylvok_outcast.txt -text diff --git a/res/cardsfolder/m/melee.txt b/res/cardsfolder/m/melee.txt new file mode 100644 index 00000000000..7c1acad5df1 --- /dev/null +++ b/res/cardsfolder/m/melee.txt @@ -0,0 +1,14 @@ +Name:Melee +ManaCost:4 R +Types:Instant +A:SP$ DeclareCombatants | Cost$ 4 R | DeclareBlockers$ True | PlayerTurn$ True | ActivationPhases$ BeginCombat->Declare Attackers | SubAbility$ DBEffect | SpellDescription$ Cast CARDNAME only during your turn and only during combat before blockers are declared. You choose which creatures block this combat and how those creatures block. Whenever a creature attacks and isn't blocked this combat, untap it and remove it from combat. +SVar:DBEffect:DB$ Effect | Triggers$ TrigAttack,TrigEndCombat | SVars$ RemoveEffect,TrigUntap,RemCombat +SVar:TrigEndCombat:Mode$ Phase | Phase$ EndCombat | ValidPlayer$ You | TriggerZones$ Command | Execute$ RemoveEffect | Static$ True +SVar:RemoveEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile +SVar:TrigAttack:Mode$ AttackerUnblocked | ValidCard$ Creature | Execute$ TrigUntap | TriggerZones$ Command | TriggerDescription$ Whenever a creature attacks and isn't blocked this combat, untap it and remove it from combat. +SVar:TrigUntap:AB$ Untap | Cost$ 0 | Defined$ TriggeredAttacker | SubAbility$ RemCombat +SVar:RemCombat:DB$ RemoveFromCombat | Defined$ TriggeredAttacker +SVar:RemAIDeck:True +SVar:Picture:http://www.wizards.com/global/images/magic/general/melee.jpg +Oracle:Cast Melee only during your turn and only during combat before blockers are declared.\nYou choose which creatures block this combat and how those creatures block.\nWhenever a creature attacks and isn't blocked this combat, untap it and remove it from combat. +SetInfo:ICE Uncommon \ No newline at end of file diff --git a/src/main/java/forge/card/ability/ai/ChangeZoneAi.java b/src/main/java/forge/card/ability/ai/ChangeZoneAi.java index dcbcd8e6c56..96bcd99be4a 100644 --- a/src/main/java/forge/card/ability/ai/ChangeZoneAi.java +++ b/src/main/java/forge/card/ability/ai/ChangeZoneAi.java @@ -1090,7 +1090,7 @@ public class ChangeZoneAi extends SpellAbilityAi { origin = ZoneType.listValueOf(sa.getParam("Origin")); } - if(origin.contains(ZoneType.Library)) { + if(origin.contains(ZoneType.Library) && !sa.hasParam("NoLooking")) { sa.getActivatingPlayer().incLibrarySearched(); } diff --git a/src/main/java/forge/card/ability/effects/ChangeZoneAllEffect.java b/src/main/java/forge/card/ability/effects/ChangeZoneAllEffect.java index 3d4fcd9c693..8c7eab14ed0 100644 --- a/src/main/java/forge/card/ability/effects/ChangeZoneAllEffect.java +++ b/src/main/java/forge/card/ability/effects/ChangeZoneAllEffect.java @@ -41,7 +41,7 @@ public class ChangeZoneAllEffect extends SpellAbilityEffect { final ZoneType destination = ZoneType.smartValueOf(sa.getParam("Destination")); final List origin = ZoneType.listValueOf(sa.getParam("Origin")); - if(origin.contains(ZoneType.Library)) { + if(origin.contains(ZoneType.Library) && sa.hasParam("Search")) { sa.getActivatingPlayer().incLibrarySearched(); } diff --git a/src/main/java/forge/card/ability/effects/ChangeZoneEffect.java b/src/main/java/forge/card/ability/effects/ChangeZoneEffect.java index afa6ecf2d00..c3b8b664257 100644 --- a/src/main/java/forge/card/ability/effects/ChangeZoneEffect.java +++ b/src/main/java/forge/card/ability/effects/ChangeZoneEffect.java @@ -635,7 +635,7 @@ public class ChangeZoneEffect extends SpellAbilityEffect { origin = ZoneType.listValueOf(sa.getParam("Origin")); } - if(origin.contains(ZoneType.Library)) { + if(origin.contains(ZoneType.Library) && !sa.hasParam("NoLooking")) { sa.getActivatingPlayer().incLibrarySearched(); }