mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 12:48:00 +00:00
CopyPermanentEffect: simplify getting PaperCard from DefinedName
This commit is contained in:
@@ -32,7 +32,6 @@ import forge.game.player.PlayerActionConfirmMode;
|
|||||||
import forge.game.spellability.SpellAbility;
|
import forge.game.spellability.SpellAbility;
|
||||||
import forge.game.zone.ZoneType;
|
import forge.game.zone.ZoneType;
|
||||||
import forge.item.PaperCard;
|
import forge.item.PaperCard;
|
||||||
import forge.util.PredicateString.StringOp;
|
|
||||||
|
|
||||||
public class CopyPermanentEffect extends TokenEffectBase {
|
public class CopyPermanentEffect extends TokenEffectBase {
|
||||||
|
|
||||||
@@ -185,19 +184,15 @@ public class CopyPermanentEffect extends TokenEffectBase {
|
|||||||
System.err.println("Copying random permanent(s): " + tgtCards.toString());
|
System.err.println("Copying random permanent(s): " + tgtCards.toString());
|
||||||
}
|
}
|
||||||
} else if (sa.hasParam("DefinedName")) {
|
} else if (sa.hasParam("DefinedName")) {
|
||||||
List<PaperCard> cards = Lists.newArrayList(StaticData.instance().getCommonCards().getUniqueCards());
|
|
||||||
String name = sa.getParam("DefinedName");
|
String name = sa.getParam("DefinedName");
|
||||||
if (name.equals("NamedCard")) {
|
if (name.equals("NamedCard")) {
|
||||||
if (!host.getNamedCard().isEmpty()) {
|
if (!host.getNamedCard().isEmpty()) {
|
||||||
name = host.getNamedCard();
|
name = host.getNamedCard();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
PaperCard pc = StaticData.instance().getCommonCards().getUniqueByName(name);
|
||||||
Predicate<PaperCard> cpp = PaperCardPredicates.fromRules(CardRulesPredicates.name(StringOp.EQUALS, name));
|
if (pc != null) {
|
||||||
cards = Lists.newArrayList(IterableUtil.filter(cards, cpp));
|
tgtCards.add(Card.fromPaperCard(pc, controller));
|
||||||
|
|
||||||
if (!cards.isEmpty()) {
|
|
||||||
tgtCards.add(Card.fromPaperCard(cards.get(0), controller));
|
|
||||||
}
|
}
|
||||||
} else if (sa.hasParam("Choices")) {
|
} else if (sa.hasParam("Choices")) {
|
||||||
Player chooser = activator;
|
Player chooser = activator;
|
||||||
|
|||||||
Reference in New Issue
Block a user