From cc10e914311d625eed2ae195851cc17d46054884 Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Fri, 8 May 2020 03:38:11 +0000 Subject: [PATCH] CastSA: fix LastZone use LKI copy when put on stack --- forge-game/src/main/java/forge/game/card/CardUtil.java | 7 ++++++- forge-game/src/main/java/forge/game/zone/MagicStack.java | 9 +++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) 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 d3173a2ad1b..20a5a5fe6a5 100644 --- a/forge-game/src/main/java/forge/game/card/CardUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardUtil.java @@ -293,7 +293,12 @@ public final class CardUtil { newCopy.addOptionalCostPaid(ocost); } - newCopy.setCastSA(in.getCastSA()); + if (in.getCastSA() != null) { + SpellAbility castSA = in.getCastSA().copy(newCopy, true); + castSA.setLastStateBattlefield(CardCollection.EMPTY); + castSA.setLastStateGraveyard(CardCollection.EMPTY); + newCopy.setCastSA(castSA); + } newCopy.setCastFrom(in.getCastFrom()); newCopy.setExiledWith(in.getExiledWith()); diff --git a/forge-game/src/main/java/forge/game/zone/MagicStack.java b/forge-game/src/main/java/forge/game/zone/MagicStack.java index c5847d757c3..283bab09768 100644 --- a/forge-game/src/main/java/forge/game/zone/MagicStack.java +++ b/forge-game/src/main/java/forge/game/zone/MagicStack.java @@ -136,8 +136,13 @@ public class MagicStack /* extends MyObservable */ implements Iterable