From ffafa3ebf1ac1f1aad7534aea51faa562867bd6c Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Sun, 13 Mar 2022 19:37:04 +0800 Subject: [PATCH] update GameEventCardRegenerated --- forge-ai/src/main/java/forge/ai/AiBlockController.java | 1 - .../forge/game/ability/effects/RegenerationEffect.java | 2 +- .../forge/game/event/GameEventCardRegenerated.java | 10 ++++++++++ .../forge/gui/control/FControlGameEventHandler.java | 7 +++++++ 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/forge-ai/src/main/java/forge/ai/AiBlockController.java b/forge-ai/src/main/java/forge/ai/AiBlockController.java index df6b8b09493..6c276c466d6 100644 --- a/forge-ai/src/main/java/forge/ai/AiBlockController.java +++ b/forge-ai/src/main/java/forge/ai/AiBlockController.java @@ -25,7 +25,6 @@ import java.util.Map; import com.google.common.base.Predicate; import com.google.common.base.Predicates; -import com.google.common.collect.Iterables; import forge.card.CardStateName; import forge.game.GameEntity; diff --git a/forge-game/src/main/java/forge/game/ability/effects/RegenerationEffect.java b/forge-game/src/main/java/forge/game/ability/effects/RegenerationEffect.java index 8e9b088ea13..0f92b1d6acb 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/RegenerationEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/RegenerationEffect.java @@ -36,7 +36,7 @@ public class RegenerationEffect extends SpellAbilityEffect { } // Play the Regen sound - game.fireEvent(new GameEventCardRegenerated()); + game.fireEvent(new GameEventCardRegenerated(c)); if (host.isImmutable()) { c.subtractShield(host); diff --git a/forge-game/src/main/java/forge/game/event/GameEventCardRegenerated.java b/forge-game/src/main/java/forge/game/event/GameEventCardRegenerated.java index 45a84360374..a348a2ad77e 100644 --- a/forge-game/src/main/java/forge/game/event/GameEventCardRegenerated.java +++ b/forge-game/src/main/java/forge/game/event/GameEventCardRegenerated.java @@ -1,7 +1,17 @@ package forge.game.event; +import forge.game.card.Card; + +import java.util.Arrays; +import java.util.Collection; + public class GameEventCardRegenerated extends GameEvent { + public final Collection cards; + public GameEventCardRegenerated(Card affected) { + cards = Arrays.asList(affected); + } + @Override public T visit(IGameEventVisitor visitor) { return visitor.visit(this); diff --git a/forge-gui/src/main/java/forge/gui/control/FControlGameEventHandler.java b/forge-gui/src/main/java/forge/gui/control/FControlGameEventHandler.java index d1454fa33a5..80a4be3be2d 100644 --- a/forge-gui/src/main/java/forge/gui/control/FControlGameEventHandler.java +++ b/forge-gui/src/main/java/forge/gui/control/FControlGameEventHandler.java @@ -456,6 +456,13 @@ public class FControlGameEventHandler extends IGameEventVisitor.Base { return processCards(event.cards, cardsUpdate); } + @Override + public Void visit(final GameEventCardRegenerated event) { + refreshFieldUpdate = true; + processCards(event.cards, cardsRefreshDetails); + return processCards(event.cards, cardsUpdate); + } + @Override public Void visit(final GameEventShuffle event) { if (GuiBase.getInterface().isLibgdxPort()) {