- Tokens leaving the battlefield will now also create LKI copies.

This commit is contained in:
Sloth
2013-08-18 10:45:20 +00:00
parent e7a143e181
commit 3c31e29a48
2 changed files with 24 additions and 22 deletions

View File

@@ -111,9 +111,6 @@ public final class CardUtil {
* @return a copy of C with LastKnownInfo stuff retained.
*/
public static Card getLKICopy(final Card in) {
if (in.isToken()) {
return in;
}
final Card newCopy = new Card(in.getUniqueNumber());
newCopy.setCurSetCode(in.getCurSetCode());

View File

@@ -155,12 +155,13 @@ public class GameAction {
}
// Don't copy Tokens, copy only cards leaving the battlefield
if (c.isToken() || suppress || toBattlefield || !fromBattlefield) {
if (suppress || !fromBattlefield) {
lastKnownInfo = c;
copied = c;
} else {
lastKnownInfo = CardUtil.getLKICopy(c);
if (!c.isToken()) {
if (c.isCloned()) {
c.switchStates(CardCharacteristicName.Cloner, CardCharacteristicName.Original);
c.setState(CardCharacteristicName.Original);
@@ -169,6 +170,7 @@ public class GameAction {
c.clearStates(CardCharacteristicName.Flipped);
}
}
copied = CardFactory.copyCard(c, false);
copied.setUnearthed(c.isUnearthed());
copied.setTapped(false);
@@ -181,6 +183,9 @@ public class GameAction {
if (c.getName().equals("Skullbriar, the Walking Grave")) {
copied.setCounters(c.getCounters());
}
} else { //Token
copied = c;
}
}
if (!suppress) {