From 0c5d71998534c60e96959becf63a0a6a832b905a Mon Sep 17 00:00:00 2001 From: Maxmtg Date: Mon, 26 Sep 2011 19:17:54 +0000 Subject: [PATCH] minor optimizations of CardRules, fix typo in comment of MtgDataParser --- src/main/java/forge/card/CardRules.java | 13 ++++++------- src/main/java/forge/card/MtgDataParser.java | 2 +- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/main/java/forge/card/CardRules.java b/src/main/java/forge/card/CardRules.java index acc18bfa237..2adfe9e9e35 100644 --- a/src/main/java/forge/card/CardRules.java +++ b/src/main/java/forge/card/CardRules.java @@ -61,13 +61,13 @@ public final class CardRules { } public CardRules(final String cardName, final CardType cardType, final CardManaCost manacost, - final String ptLine, final String[] cardRules, final Map setsData, + final String ptLine, final String[] oracleRules, final Map setsData, final boolean removedFromRandomDecks, final boolean removedFromAIDecks) { this.name = cardName; this.type = cardType; this.cost = manacost; - this.rules = cardRules; + this.rules = oracleRules; this.color = new CardColor(cost); this.isRemovedFromAIDecks = removedFromAIDecks; this.isRemovedFromRandomDecks = removedFromRandomDecks; @@ -75,10 +75,7 @@ public final class CardRules { //System.out.println(cardName); if (cardType.isCreature()) { - if (ptLine == null){ - throw new RuntimeException(String.format("Creature '%s' has bad p/t stats", cardName)); - } - int slashPos = ptLine.indexOf('/'); + int slashPos = ptLine == null ? -1 : ptLine.indexOf('/'); if (slashPos == -1) { throw new RuntimeException(String.format("Creature '%s' has bad p/t stats", cardName)); } @@ -136,7 +133,9 @@ public final class CardRules { public abstract static class Predicates { public static final Predicate isKeptInAiDecks = new Predicate() { @Override public boolean isTrue(CardRules card) { return !card.isRemovedFromAIDecks; } }; - + public static final Predicate isKeptInRandomDecks = new Predicate() { + @Override public boolean isTrue(CardRules card) { return !card.isRemovedFromRandomDecks; } }; + // Static builder methods - they choose concrete implementation by themselves public static Predicate cmc(final ComparableOp op, final int what) diff --git a/src/main/java/forge/card/MtgDataParser.java b/src/main/java/forge/card/MtgDataParser.java index 2da2ccab3e5..fd440e0b03d 100644 --- a/src/main/java/forge/card/MtgDataParser.java +++ b/src/main/java/forge/card/MtgDataParser.java @@ -52,7 +52,7 @@ public final class MtgDataParser implements Iterator { setsToSkipPrefixes.add("BTD"); setsToSkipPrefixes.add("DKM"); //setsToSkipPrefixes.add("ATH"); // No need to skip it really. - // On gatherer's opinion this cards was releases twice in original set + // On gatherer's opinion this cards were released twice in original set // Promo sets - all cards have been issued in other sets setsToSkipPrefixes.add("SDC");