| 61 | import java.util.function.Predicate; |
| 62 | |
| 63 | public class CardState implements GameObject, IHasSVars, ITranslatable { |
| 64 | private String name = ""; |
| 65 | private CardType type = new CardType(false); |
| 66 | private CardTypeView changedType = null; |
| 67 | private ManaCost manaCost = ManaCost.NO_COST; |
| 68 | // Track mana cost after adjustments from perpetual cost-changing effects for display |
| 69 | private ManaCost perpetualAdjustedManaCost = null; |
| 70 | private ColorSet color = ColorSet.C; |
| 71 | private String oracleText = ""; |
| 72 | private String functionalVariantName = null; |
| 73 | private String flavorName = null; |
| 74 | private int basePower = 0; |
| 75 | private int baseToughness = 0; |
| 76 | private String basePowerString = null; |
| 77 | private String baseToughnessString = null; |
| 78 | private String baseLoyalty = ""; |
| 79 | private String baseDefense = ""; |
| 80 | private KeywordCollection intrinsicKeywords = new KeywordCollection(); |
| 81 | private Set<Integer> attractionLights = null; |
| 82 | |
| 83 | private final FCollection<SpellAbility> abilities = new FCollection<>(); |
| 84 | private FCollection<Trigger> triggers = new FCollection<>(); |
| 85 | private FCollection<ReplacementEffect> replacementEffects = new FCollection<>(); |
| 86 | private FCollection<StaticAbility> staticAbilities = new FCollection<>(); |
| 87 | private String imageKey = ""; |
| 88 | private Map<String, String> sVars = Maps.newTreeMap(); |
| 89 | private Map<String, SpellAbility> abilityForTrigger = Maps.newHashMap(); |
| 90 | |
| 91 | private KeywordCollection cachedKeywords = new KeywordCollection(); |
| 92 | |
| 93 | private CardRarity rarity = CardRarity.Unknown; |
| 94 | private String setCode = CardEdition.UNKNOWN_CODE; |
| 95 | |
| 96 | private final CardStateView view; |
| 97 | private final Card card; |
| 98 | |
| 99 | private SpellAbility landAbility; |
| 100 | private SpellAbility auraAbility; |
| 101 | private SpellAbility permanentAbility; |
| 102 | |
| 103 | private ReplacementEffect loyaltyRep; |
| 104 | private ReplacementEffect defenseRep; |
| 105 | private ReplacementEffect sagaRep; |
| 106 | private ReplacementEffect adventureRep; |
| 107 | private ReplacementEffect omenRep; |
| 108 | |
| 109 | private SpellAbility manifestUp; |
| 110 | private SpellAbility cloakUp; |
| 111 | |
| 112 | private LandTraitChanges landTraitChanges = new LandTraitChanges(this); |
| 113 | |
| 114 | public CardState(Card card, CardStateName name) { |
| 115 | this(card.getView().createAlternateState(name), card); |
| 116 | } |
| 117 | |
| 118 | public CardState(CardStateView view0, Card card0) { |
| 119 | view = view0; |
| 120 | card = card0; |
nothing calls this directly
no outgoing calls
no test coverage detected