From 6cf5a08be2e8506e89b745be3cac872f5a59d185 Mon Sep 17 00:00:00 2001 From: Hanmac Date: Sun, 28 Jul 2019 20:00:11 +0200 Subject: [PATCH] Card: remove non hidden extrinsic keyword --- .../java/forge/ai/simulation/GameCopier.java | 1 - .../src/main/java/forge/game/card/Card.java | 56 ------------------- .../main/java/forge/game/card/CardUtil.java | 1 - .../src/main/java/forge/game/phase/Untap.java | 7 +-- 4 files changed, 3 insertions(+), 62 deletions(-) diff --git a/forge-ai/src/main/java/forge/ai/simulation/GameCopier.java b/forge-ai/src/main/java/forge/ai/simulation/GameCopier.java index b2b8fa39ffa..b04ba570a51 100644 --- a/forge-ai/src/main/java/forge/ai/simulation/GameCopier.java +++ b/forge-ai/src/main/java/forge/ai/simulation/GameCopier.java @@ -290,7 +290,6 @@ public class GameCopier { // TODO: Is this correct? Does it not duplicate keywords from enchantments and such? for (KeywordInterface kw : c.getHiddenExtrinsicKeywords()) newCard.addHiddenExtrinsicKeyword(kw); - newCard.setExtrinsicKeyword(Lists.newArrayList(c.getExtrinsicKeyword())); if (c.isTapped()) { newCard.setTapped(true); } diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index b67bbb2a8c9..26c21399155 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -94,7 +94,6 @@ public class Card extends GameEntity implements Comparable { private final CardDamageHistory damageHistory = new CardDamageHistory(); private Map> countersAddedBy = Maps.newTreeMap(); - private KeywordCollection extrinsicKeyword = new KeywordCollection(); // Hidden keywords won't be displayed on the card private final KeywordCollection hiddenExtrinsicKeyword = new KeywordCollection(); @@ -3727,7 +3726,6 @@ public class Card extends GameEntity implements Comparable { if (!removeIntrinsic) { keywords.insertAll(state.getIntrinsicKeywords()); } - keywords.insertAll(extrinsicKeyword.getValues()); // see if keyword changes are in effect for (final KeywordsChange ck : changedCardKeywords.values()) { @@ -3755,11 +3753,6 @@ public class Card extends GameEntity implements Comparable { return; } } - for (KeywordInterface kw : extrinsicKeyword.getValues()) { - if (!visitor.visit(kw)) { - return; - } - } } else { for (KeywordInterface kw : getUnhiddenKeywords(state)) { if (!visitor.visit(kw)) { @@ -3927,55 +3920,6 @@ public class Card extends GameEntity implements Comparable { } } - public Collection getExtrinsicKeyword() { - return extrinsicKeyword.getValues(); - } - public final void setExtrinsicKeyword(final List a) { - extrinsicKeyword.clear(); - extrinsicKeyword.addAll(a); - } - public void setExtrinsicKeyword(Collection extrinsicKeyword2) { - extrinsicKeyword.clear(); - extrinsicKeyword.insertAll(extrinsicKeyword2); - } - - @Deprecated - public void addExtrinsicKeyword(final String s) { - if (s.startsWith("HIDDEN")) { - addHiddenExtrinsicKeyword(s); - } - else { - extrinsicKeyword.add(s); - } - } - - @Deprecated - public void removeExtrinsicKeyword(final String s) { - if (s.startsWith("HIDDEN")) { - removeHiddenExtrinsicKeyword(s); - } - else if (extrinsicKeyword.remove(s)) { - currentState.getView().updateKeywords(this, currentState); - } - } - - public void removeAllExtrinsicKeyword(final String s) { - final List strings = Lists.newArrayList(); - strings.add(s); - boolean needKeywordUpdate = false; - if (extrinsicKeyword.removeAll(strings)) { - needKeywordUpdate = true; - } - strings.add("HIDDEN " + s); - if (hiddenExtrinsicKeyword.removeAll(strings)) { - view.updateNonAbilityText(this); - needKeywordUpdate = true; - } - if (needKeywordUpdate) { - currentState.getView().updateKeywords(this, currentState); - } - } - // Hidden Keywords will be returned without the indicator HIDDEN public final List getHiddenExtrinsicKeywords() { ListKeywordVisitor visitor = new ListKeywordVisitor(); diff --git a/forge-game/src/main/java/forge/game/card/CardUtil.java b/forge-game/src/main/java/forge/game/card/CardUtil.java index 1c177ec82fa..f96d0f8af38 100644 --- a/forge-game/src/main/java/forge/game/card/CardUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardUtil.java @@ -255,7 +255,6 @@ public final class CardUtil { newCopy.setBaseToughness(in.getCurrentToughness() + in.getTempToughnessBoost() + in.getSemiPermanentToughnessBoost()); newCopy.setCounters(Maps.newEnumMap(in.getCounters())); - newCopy.setExtrinsicKeyword(in.getExtrinsicKeyword()); newCopy.setColor(in.determineColor().getColor()); newCopy.setReceivedDamageFromThisTurn(in.getReceivedDamageFromThisTurn()); diff --git a/forge-game/src/main/java/forge/game/phase/Untap.java b/forge-game/src/main/java/forge/game/phase/Untap.java index 7c3106b9364..7835a67cdaf 100644 --- a/forge-game/src/main/java/forge/game/phase/Untap.java +++ b/forge-game/src/main/java/forge/game/phase/Untap.java @@ -209,11 +209,10 @@ public class Untap extends Phase { // Remove temporary keywords for (final Card c : player.getCardsIn(ZoneType.Battlefield)) { - c.removeAllExtrinsicKeyword("This card doesn't untap during your next untap step."); - c.removeAllExtrinsicKeyword("HIDDEN This card doesn't untap during your next untap step."); + c.removeHiddenExtrinsicKeyword("This card doesn't untap during your next untap step."); if (c.hasKeyword("This card doesn't untap during your next two untap steps.")) { - c.removeAllExtrinsicKeyword("HIDDEN This card doesn't untap during your next two untap steps."); - c.addHiddenExtrinsicKeyword("HIDDEN This card doesn't untap during your next untap step."); + c.removeHiddenExtrinsicKeyword("This card doesn't untap during your next two untap steps."); + c.addHiddenExtrinsicKeyword("This card doesn't untap during your next untap step."); } }