- Converted the property "SameNameAsImprinted" to the "SharesNameWith" group.

This commit is contained in:
Sloth
2012-11-25 11:37:19 +00:00
parent 7846036229
commit 96d61b724b
6 changed files with 21 additions and 46 deletions

View File

@@ -4,7 +4,7 @@ Types:Enchantment
Text:no text Text:no text
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigExile | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, exile target nonland permanent. T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigExile | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, exile target nonland permanent.
SVar:TrigExile:DB$ ChangeZone | Cost$ 0 | Imprint$ True | ValidTgts$ Permanent.nonLand | TgtPrompt$ Select target nonland permanent | Origin$ Battlefield | Destination$ Exile SVar:TrigExile:DB$ ChangeZone | Cost$ 0 | Imprint$ True | ValidTgts$ Permanent.nonLand | TgtPrompt$ Select target nonland permanent | Origin$ Battlefield | Destination$ Exile
S:Mode$ CantBeCast | ValidCard$ Card.SameNameAsImprinted | Description$ Players can't cast spells with the same name as the exiled card. S:Mode$ CantBeCast | ValidCard$ Card.sharesNameWith Imprinted | Description$ Players can't cast spells with the same name as the exiled card.
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/exclusion_ritual.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/exclusion_ritual.jpg
SetInfo:NPH|Uncommon|http://magiccards.info/scans/en/nph/10.jpg SetInfo:NPH|Uncommon|http://magiccards.info/scans/en/nph/10.jpg

View File

@@ -4,7 +4,7 @@ Types:Artifact
Text:no text Text:no text
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigExile | OptionalDecider$ You | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, you may exile target land you control. Whenever a land with the same name as the exiled card is tapped for mana, its controller adds one mana to his or her mana pool of any type that land produced. T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigExile | OptionalDecider$ You | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, you may exile target land you control. Whenever a land with the same name as the exiled card is tapped for mana, its controller adds one mana to his or her mana pool of any type that land produced.
SVar:TrigExile:AB$ ChangeZone | Cost$ 0 | Imprint$ True | Origin$ Battlefield | Destination$ Exile | ValidTgts$ Land.YouCtrl | TgtPrompt$ Select a target land you control SVar:TrigExile:AB$ ChangeZone | Cost$ 0 | Imprint$ True | Origin$ Battlefield | Destination$ Exile | ValidTgts$ Land.YouCtrl | TgtPrompt$ Select a target land you control
T:Mode$ TapsForMana | ValidCard$ Land.SameNameAsImprinted | Execute$ TrigMana | TriggerZones$ Battlefield | Secondary$ True | TriggerDescription$ Whenever a land with the same name as the exiled card is tapped for mana, its controller adds one mana to his or her mana pool of any type that land produced. T:Mode$ TapsForMana | ValidCard$ Land.sharesNameWith Imprinted | Execute$ TrigMana | TriggerZones$ Battlefield | Secondary$ True | TriggerDescription$ Whenever a land with the same name as the exiled card is tapped for mana, its controller adds one mana to his or her mana pool of any type that land produced.
SVar:TrigMana:AB$ ManaReflected | Cost$ 0 | Valid$ Defined.Triggered | ColorOrType$ Type | ReflectProperty$ Produced | Defined$ TriggeredPlayer SVar:TrigMana:AB$ ManaReflected | Cost$ 0 | Valid$ Defined.Triggered | ColorOrType$ Type | ReflectProperty$ Produced | Defined$ TriggeredPlayer
SVar:RemAIDeck:True SVar:RemAIDeck:True
SVar:Rarity:Rare SVar:Rarity:Rare

View File

@@ -5,7 +5,7 @@ Text:no text
PT:3/2 PT:3/2
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigExile | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, exile target land. T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigExile | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, exile target land.
SVar:TrigExile:AB$ChangeZone | Cost$ 0 | Imprint$ True | ValidTgts$ Land | TgtPrompt$ Select target land | Origin$ Battlefield | Destination$ Exile SVar:TrigExile:AB$ChangeZone | Cost$ 0 | Imprint$ True | ValidTgts$ Land | TgtPrompt$ Select target land | Origin$ Battlefield | Destination$ Exile
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.SameNameAsImprinted+YouDontCtrl | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ Whenever a land with the same name as the exiled card enters the battlefield under an opponent's control, CARDNAME deals 2 damage to that player. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.sharesNameWith Imprinted+YouDontCtrl | TriggerZones$ Battlefield | Execute$ TrigDamage | TriggerDescription$ Whenever a land with the same name as the exiled card enters the battlefield under an opponent's control, CARDNAME deals 2 damage to that player.
SVar:TrigDamage:AB$DealDamage | Cost$ 0 | Defined$ TriggeredCardController | NumDmg$ 2 SVar:TrigDamage:AB$DealDamage | Cost$ 0 | Defined$ TriggeredCardController | NumDmg$ 2
SVar:Rarity:Rare SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/invader_parasite.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/invader_parasite.jpg

View File

@@ -4,7 +4,7 @@ Types:Artifact
Text:no text Text:no text
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigSpellweaverExile | OptionalDecider$ You | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, you may exile two target sorcery cards from a single graveyard. T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigSpellweaverExile | OptionalDecider$ You | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, you may exile two target sorcery cards from a single graveyard.
SVar:TrigSpellweaverExile:AB$ ChangeZone | Cost$ 0 | Origin$ Graveyard | Destination$ Exile | TargetsFromSingleZone$ True | ValidTgts$ Card.Sorcery | TargetMin$ 2 | TargetMax$ 2 | TgtPrompt$ Select two target sorcery cards from a single graveyard | Imprint$ True | SpellDescription$ Exile two sorcery cards from a single graveyard. SVar:TrigSpellweaverExile:AB$ ChangeZone | Cost$ 0 | Origin$ Graveyard | Destination$ Exile | TargetsFromSingleZone$ True | ValidTgts$ Card.Sorcery | TargetMin$ 2 | TargetMax$ 2 | TgtPrompt$ Select two target sorcery cards from a single graveyard | Imprint$ True | SpellDescription$ Exile two sorcery cards from a single graveyard.
T:Mode$ SpellCast | ValidCard$ Card.SameNameAsImprinted | Execute$ TrigSpellweaverCopy | OptionalDecider$ You | TriggerZones$ Battlefield | TriggerDescription$ Whenever a player casts a card, if it has the same name as one of the cards exiled with CARDNAME, you may copy the other. If you do, you may cast the copy without paying its mana cost. T:Mode$ SpellCast | ValidCard$ Card.sharesNameWith Imprinted | Execute$ TrigSpellweaverCopy | OptionalDecider$ You | TriggerZones$ Battlefield | TriggerDescription$ Whenever a player casts a card, if it has the same name as one of the cards exiled with CARDNAME, you may copy the other. If you do, you may cast the copy without paying its mana cost.
SVar:TrigSpellweaverCopy:AB$ Play | Cost$ 0 | Defined$ Imprinted.doesNotShareNameWith+TriggeredCard+Exiled | WithoutManaCost$ True | Optional$ True | CopyCard$ True SVar:TrigSpellweaverCopy:AB$ Play | Cost$ 0 | Defined$ Imprinted.doesNotShareNameWith+TriggeredCard+Exiled | WithoutManaCost$ True | Optional$ True | CopyCard$ True
SVar:RemAIDeck:True SVar:RemAIDeck:True
SVar:RemRandomDeck:True SVar:RemRandomDeck:True

View File

@@ -6,7 +6,7 @@ K:Equip 3
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigExile | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, search your library for a land card, exile it, then shuffle your library. T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigExile | TriggerDescription$ Imprint - When CARDNAME enters the battlefield, search your library for a land card, exile it, then shuffle your library.
SVar:TrigExile:AB$ ChangeZone | Cost$ 0 | Imprint$ True | Origin$ Library | Destination$ Exile | ChangeType$ Land | ChangeNum$ 1 SVar:TrigExile:AB$ ChangeZone | Cost$ 0 | Imprint$ True | Origin$ Library | Destination$ Exile | ChangeType$ Land | ChangeNum$ 1
S:Mode$ Continuous | Affected$ Card.EquippedBy | AddPower$ X | AddToughness$ X | Description$ Equipped creature gets +1/+1 for each land on the battlefield with the same name as the exiled card. S:Mode$ Continuous | Affected$ Card.EquippedBy | AddPower$ X | AddToughness$ X | Description$ Equipped creature gets +1/+1 for each land on the battlefield with the same name as the exiled card.
SVar:X:Count$Valid Land.SameNameAsImprinted SVar:X:Count$Valid Land.sharesNameWith Imprinted
SVar:RemAIDeck:True SVar:RemAIDeck:True
SVar:Rarity:Rare SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/strata_scythe.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/strata_scythe.jpg

View File

@@ -6633,58 +6633,43 @@ public class Card extends GameEntity implements Comparable<Card> {
} else { } else {
final String restriction = property.split("sharesNameWith ")[1]; final String restriction = property.split("sharesNameWith ")[1];
if (restriction.equals("YourGraveyard")) { if (restriction.equals("YourGraveyard")) {
final List<Card> list = sourceController.getCardsIn(ZoneType.Graveyard); for (final Card card : sourceController.getCardsIn(ZoneType.Graveyard)) {
boolean shares = false;
for (final Card card : list) {
if (this.getName().equals(card.getName())) { if (this.getName().equals(card.getName())) {
shares = true; return true;
} }
} }
if (!shares) { return false;
return false;
}
} else if (restriction.equals(ZoneType.Battlefield.toString())) { } else if (restriction.equals(ZoneType.Battlefield.toString())) {
final List<Card> list = Singletons.getModel().getGame().getCardsIn(ZoneType.Battlefield);
if (list.isEmpty()) {
return false;
}
boolean shares = false;
for (final Card card : Singletons.getModel().getGame().getCardsIn(ZoneType.Battlefield)) { for (final Card card : Singletons.getModel().getGame().getCardsIn(ZoneType.Battlefield)) {
if (this.getName().equals(card.getName())) { if (this.getName().equals(card.getName())) {
shares = true; return true;
} }
} }
if (!shares) { return false;
return false;
}
} else if (restriction.equals("ThisTurnCast")) { } else if (restriction.equals("ThisTurnCast")) {
final List<Card> list = CardUtil.getThisTurnCast("Card", source); for (final Card card : CardUtil.getThisTurnCast("Card", source)) {
if (list.isEmpty()) {
return false;
}
boolean shares = false;
for (final Card card : list) {
if (this.getName().equals(card.getName())) { if (this.getName().equals(card.getName())) {
shares = true; return true;
} }
} }
if (!shares) { return false;
return false;
}
} else if (restriction.equals("Remembered")) { } else if (restriction.equals("Remembered")) {
boolean shares = false;
for (final Object rem : source.getRemembered()) { for (final Object rem : source.getRemembered()) {
if (rem instanceof Card) { if (rem instanceof Card) {
final Card card = (Card) rem; final Card card = (Card) rem;
if (this.getName().equals(card.getName())) { if (this.getName().equals(card.getName())) {
shares = true; return true;
} }
} }
} }
if (!shares) { return false;
return false; } else if (property.equals("Imprinted")) {
for (final Card card : source.getImprinted()) {
if (this.getName().equals(card.getName())) {
return true;
}
} }
return false;
} }
} }
@@ -7089,16 +7074,6 @@ public class Card extends GameEntity implements Comparable<Card> {
if (!this.hasCounters()) { if (!this.hasCounters()) {
return false; return false;
} }
} else if (property.equals("SameNameAsImprinted")) {
boolean b = false;
for (final Card card : source.getImprinted()) {
if (this.getName().equals(card.getName())) {
b = true;
}
}
if (!b) {
return false;
}
} else if (property.startsWith("wasCastFrom")) { } else if (property.startsWith("wasCastFrom")) {
final String strZone = property.substring(11); final String strZone = property.substring(11);
final ZoneType realZone = ZoneType.smartValueOf(strZone); final ZoneType realZone = ZoneType.smartValueOf(strZone);