card catalog support use localization card text search.

This commit is contained in:
CCTV-1
2020-02-17 11:37:16 +08:00
parent 560432d8bc
commit b11cb78cd8

View File

@@ -8,6 +8,7 @@ import com.google.common.base.Predicate;
import com.google.common.base.Predicates;
import com.google.common.collect.Iterables;
import forge.util.CardTranslation;
import forge.util.ComparableOp;
import forge.util.PredicateString;
@@ -350,14 +351,14 @@ public final class CardRulesPredicates {
boolean shouldContain;
switch (this.field) {
case NAME:
return op(card.getName(), this.operand);
return (op(CardTranslation.getTranslatedName(card.getName()), this.operand) || op(card.getName(), this.operand));
case SUBTYPE:
shouldContain = (this.getOperator() == StringOp.CONTAINS) || (this.getOperator() == StringOp.EQUALS);
return shouldContain == card.getType().hasSubtype(this.operand);
case ORACLE_TEXT:
return op(card.getOracleText(), operand);
return (op(CardTranslation.getTranslatedOracle(card.getName()), operand) || op(card.getOracleText(), this.operand));
case JOINED_TYPE:
return op(card.getType().toString(), operand);
return (op(CardTranslation.getTranslatedType(card.getName(), card.getType().toString()), operand) || op(card.getType().toString(), operand));
case COST:
final String cost = card.getManaCost().toString();
return op(cost, operand);