diff --git a/forge-ai/src/main/java/forge/ai/GameState.java b/forge-ai/src/main/java/forge/ai/GameState.java index 4939cdd9282..a0afe54be58 100644 --- a/forge-ai/src/main/java/forge/ai/GameState.java +++ b/forge-ai/src/main/java/forge/ai/GameState.java @@ -627,6 +627,7 @@ public abstract class GameState { } game.getStack().setResolving(false); + game.getStack().unfreezeStack(); // Advance to a certain phase, activating all triggered abilities if (advPhase != null) { 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 fe5b8489d91..0d989ad6f4a 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -2482,8 +2482,9 @@ public class Card extends GameEntity implements Comparable, IHasSVars, ITr sbLong.append(" (").append(inst.getReminderText()).append(")"); } else if (keyword.equals("Gift")) { sbLong.append(keyword); - if (inst.getHostCard() != null && inst.getHostCard().getFirstSpellAbility().hasAdditionalAbility("GiftAbility")) { - sbLong.append(" ").append(inst.getHostCard().getFirstSpellAbility().getAdditionalAbility("GiftAbility").getParam("GiftDescription")); + Trigger trig = inst.getTriggers().stream().findFirst().orElse(null); + if (trig != null && trig.getCardState().getFirstSpellAbility().hasAdditionalAbility("GiftAbility")) { + sbLong.append(" ").append(trig.getCardState().getFirstSpellAbility().getAdditionalAbility("GiftAbility").getParam("GiftDescription")); } sbLong.append("\r\n"); } else if (keyword.startsWith("Starting intensity")) {