MCPcopy Create free account
hub / github.com/Card-Forge/forge / CardState

Class CardState

forge-game/src/main/java/forge/game/card/CardState.java:63–1116  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

61import java.util.function.Predicate;
62
63public 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;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected