diff --git a/.gitattributes b/.gitattributes index 3ad4314e553..87e22a635d9 100644 --- a/.gitattributes +++ b/.gitattributes @@ -8167,6 +8167,7 @@ res/cardsfolder/s/selfless_exorcist.txt svneol=native#text/plain res/cardsfolder/s/selhoff_occultist.txt -text res/cardsfolder/s/selkie_hedge_mage.txt svneol=native#text/plain res/cardsfolder/s/sell_sword_brute.txt svneol=native#text/plain +res/cardsfolder/s/semblance_anvil.txt -text res/cardsfolder/s/sengir_autocrat.txt svneol=native#text/plain res/cardsfolder/s/sengir_bats.txt svneol=native#text/plain res/cardsfolder/s/sengir_nosferatu.txt svneol=native#text/plain diff --git a/res/cardsfolder/s/semblance_anvil.txt b/res/cardsfolder/s/semblance_anvil.txt new file mode 100644 index 00000000000..a4fc3681aac --- /dev/null +++ b/res/cardsfolder/s/semblance_anvil.txt @@ -0,0 +1,13 @@ +Name:Semblance Anvil +ManaCost:3 +Types:Artifact +Text:no text +T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | OptionalDecider$ You | Execute$ TrigExile | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, you may exile a nonland card from your hand. +SVar:TrigExile:AB$ChangeZone | Cost$ 0 | Imprint$ True | Origin$ Hand | Destination$ Exile | ChangeType$ Card.nonLand | ChangeNum$ 1 +S:Mode$ ReduceCost | ValidCard$ Card.sharesCardTypeWith Imprinted | Type$ Spell | Activator$ You | Amount$ 2 | Description$ Spells you cast that share a card type with the exiled card cost 2 less to cast. +SVar:RemAIDeck:True +SVar:Rarity:Rare +SVar:Picture:http://www.wizards.com/global/images/magic/general/semblance_anvil.jpg +SetInfo:SOM|Rare|http://magiccards.info/scans/en/som/201.jpg +Oracle:Imprint - When Semblance Anvil enters the battlefield, you may exile a nonland card from your hand.\nSpells you cast that share a card type with the exiled card cost {2} less to cast. +End \ No newline at end of file diff --git a/src/main/java/forge/Card.java b/src/main/java/forge/Card.java index 4b2cdfa564d..87c3907b3f2 100644 --- a/src/main/java/forge/Card.java +++ b/src/main/java/forge/Card.java @@ -6829,6 +6829,19 @@ public class Card extends GameEntity implements Comparable { } } } + } else if (property.startsWith("sharesCardTypeWith")) { + if (property.equals("sharesCardTypeWith")) { + if (!this.sharesCardTypeWith(source)) { + return false; + } + } else { + final String restriction = property.split("sharesCardTypeWith ")[1]; + if (restriction.equals("Imprinted")) { + if (source.getImprinted().isEmpty() || !this.sharesCardTypeWith(source.getImprinted().get(0))) { + return false; + } + } + } } else if (property.startsWith("sharesNameWith")) { final String restriction = property.split("sharesNameWith ")[1]; if (restriction.equals("YourGraveyard")) { @@ -6888,11 +6901,7 @@ public class Card extends GameEntity implements Comparable { if (!this.sharesTypeWith(source)) { return false; } - } else if (property.startsWith("sharesCardTypeWith")) { - if (!this.sharesCardTypeWith(source)) { - return false; - } - } else if (property.startsWith("withFlashback")) { + } else if (property.startsWith("withFlashback")) { boolean fb = false; if (this.hasStartOfUnHiddenKeyword("Flashback")) { fb = true;