forked from External/mage
* Karn Liberated - Fixed that also already dead players were alive if Karn restarted the game.
This commit is contained in:
parent
1066472491
commit
814f4b4989
1 changed files with 15 additions and 13 deletions
|
|
@ -133,22 +133,24 @@ class KarnLiberatedEffect extends OneShotEffect {
|
|||
game.getState().addCard(card);
|
||||
}
|
||||
for (Player player : game.getPlayers().values()) {
|
||||
player.getGraveyard().clear();
|
||||
player.getHand().clear();
|
||||
player.getLibrary().clear();
|
||||
for (Card card : game.getCards()) {
|
||||
if (card.getOwnerId().equals(player.getId()) && !card.isCopy() // no copies
|
||||
&& !player.getSideboard().contains(card.getId())
|
||||
&& !cards.contains(card)) { // not the exiled cards
|
||||
if (card.getId().equals(player.getCommanderId())) {
|
||||
game.addCommander(new Commander(card));
|
||||
game.setZone(card.getId(), Zone.COMMAND);
|
||||
} else {
|
||||
player.getLibrary().putOnTop(card, game);
|
||||
if (player.isInGame()) { // only players alive are in the restarted game
|
||||
player.getGraveyard().clear();
|
||||
player.getHand().clear();
|
||||
player.getLibrary().clear();
|
||||
for (Card card : game.getCards()) {
|
||||
if (card.getOwnerId().equals(player.getId()) && !card.isCopy() // no copies
|
||||
&& !player.getSideboard().contains(card.getId())
|
||||
&& !cards.contains(card)) { // not the exiled cards
|
||||
if (card.getId().equals(player.getCommanderId())) {
|
||||
game.addCommander(new Commander(card));
|
||||
game.setZone(card.getId(), Zone.COMMAND);
|
||||
} else {
|
||||
player.getLibrary().putOnTop(card, game);
|
||||
}
|
||||
}
|
||||
}
|
||||
player.init(game);
|
||||
}
|
||||
player.init(game);
|
||||
}
|
||||
for (Card card : cards) {
|
||||
game.getState().setZone(card.getId(), Zone.EXILED);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue