diff --git a/forge-game/src/main/java/forge/game/ability/effects/ProtectEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ProtectEffect.java index bbc7c2671fc..dd4769a547a 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ProtectEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ProtectEffect.java @@ -7,7 +7,6 @@ import forge.game.Game; import forge.game.ability.SpellAbilityEffect; import forge.game.card.Card; import forge.game.card.CardUtil; -import forge.game.event.GameEventTokenStateUpdate; import forge.game.player.Player; import forge.game.spellability.SpellAbility; import forge.game.spellability.TargetRestrictions; @@ -152,8 +151,6 @@ public class ProtectEffect extends SpellAbilityEffect { } tgtC.addChangedCardKeywords(gainsKWList, null, false, false, timestamp, true); - if (tgtC.isToken()) // update protection -> cast blessed breath on any token belonging to a stack - game.fireEvent(new GameEventTokenStateUpdate(tgtC)); if (!sa.hasParam("Permanent")) { // If not Permanent, remove protection at EOT @@ -164,8 +161,6 @@ public class ProtectEffect extends SpellAbilityEffect { public void run() { if (tgtC.isInPlay()) { tgtC.removeChangedCardKeywords(timestamp, true); - if (tgtC.isToken()) // update remove protection - game.fireEvent(new GameEventTokenStateUpdate(tgtC)); } } }; @@ -194,8 +189,6 @@ public class ProtectEffect extends SpellAbilityEffect { public void run() { if (unTgtC.isInPlay()) { unTgtC.removeChangedCardKeywords(timestamp, true); - if (unTgtC.isToken()) // update removed protection - game.fireEvent(new GameEventTokenStateUpdate(unTgtC)); } } }; 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 a0b582a2ae5..a47eadf2eec 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -3659,6 +3659,8 @@ public class Card extends GameEntity implements Comparable { if (updateView) { updateKeywords(); + if (isToken()) + game.fireEvent(new GameEventTokenStateUpdate(this)); } } @@ -3713,6 +3715,8 @@ public class Card extends GameEntity implements Comparable { KeywordsChange change = changedCardKeywords.remove(timestamp); if (change != null && updateView) { updateKeywords(); + if (isToken()) + game.fireEvent(new GameEventTokenStateUpdate(this)); } return change; }