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

Method canUntap

forge-game/src/main/java/forge/game/card/Card.java:4725–4736  ·  view source on GitHub ↗
(Player phase, boolean predict)

Source from the content-addressed store, hash-verified

4723 }
4724
4725 public final boolean canUntap(Player phase, boolean predict) {
4726 if (!predict && !tapped) { return false; }
4727 if (phase != null && isExertedBy(phase)) {
4728 return false;
4729 }
4730 if (phase != null && hasKeyword("This card doesn't untap during your next untap step.")) {
4731 return false;
4732 }
4733 Map<AbilityKey, Object> runParams = AbilityKey.mapFromAffected(this);
4734 runParams.put(AbilityKey.Player, phase);
4735 return !getGame().getReplacementHandler().cantHappenCheck(ReplacementType.Untap, runParams);
4736 }
4737
4738 public final boolean untap() {
4739 return untap(null);

Callers 13

canPayMethod · 0.95
canPayMethod · 0.80
untapChooseMethod · 0.80
doUntapMethod · 0.80
visitMethod · 0.80
isUselessCreatureMethod · 0.80
canAttackNextTurnMethod · 0.80
chooseUntapTypeMethod · 0.80
evaluateCreatureMethod · 0.80
isUsefulCurseKeywordMethod · 0.80

Calls 7

isExertedByMethod · 0.95
hasKeywordMethod · 0.95
mapFromAffectedMethod · 0.95
getGameMethod · 0.95
cantHappenCheckMethod · 0.80
getReplacementHandlerMethod · 0.80
putMethod · 0.45

Tested by

no test coverage detected