* Golgari Thug - Fixed that card in graveyard was not a mandatory target.

This commit is contained in:
LevelX2 2014-04-05 03:13:27 +02:00
parent 5af7a444d3
commit a4f73a9fde
3 changed files with 6 additions and 10 deletions

View file

@ -64,7 +64,7 @@ public class GolgariThug extends CardImpl<GolgariThug> {
// When Golgari Thug dies, put target creature card from your graveyard on top of your library.
Ability ability = new DiesTriggeredAbility(new PutOnLibraryTargetEffect(true));
ability.addTarget(new TargetCardInYourGraveyard(filter));
ability.addTarget(new TargetCardInYourGraveyard(filter, true));
this.addAbility(ability);
// Dredge 4
this.addAbility(new DredgeAbility(4));

View file

@ -95,19 +95,15 @@ class DredgeEffect extends ReplacementEffectImpl<DredgeEffect> {
Player player = game.getPlayer(source.getControllerId());
if (player != null && player.getLibrary().size() >= amount
&& player.chooseUse(outcome, new StringBuilder("Dredge ").append(sourceCard.getName()).
append(" (").append(amount).append(" cards go from top of library to graveyard)").toString(), game)) {
append("? (").append(amount).append(" cards go from top of library to graveyard)").toString(), game)) {
game.informPlayers(new StringBuilder(player.getName()).append(" dreges ").append(sourceCard.getName()).toString());
for (int i = 0; i < amount; i++) {
Card card = player.getLibrary().removeFromTop(game);
if (card != null) {
player.moveCardToGraveyardWithInfo(card, source.getSourceId(), game, Zone.LIBRARY);
}
}
Card card = game.getCard(source.getSourceId());
if (card != null) {
game.informPlayers(new StringBuilder(player.getName()).append(" dreges ").append(card.getName()).toString());
player.moveCardToHandWithInfo(card, source.getSourceId(), game, Zone.GRAVEYARD);
}
player.moveCardToHandWithInfo(sourceCard, source.getSourceId(), game, Zone.GRAVEYARD);
return true;
}
return false;

View file

@ -88,7 +88,7 @@ public class SoulbondWatcher extends WatcherImpl<SoulbondWatcher> {
if (chosen != null) {
chosen.setPairedCard(permanent.getId());
permanent.setPairedCard(chosen.getId());
game.informPlayers(new StringBuilder(controller.getName()).append(" souldbounded ").append(permanent.getName()).append(" with ").append(chosen.getName()).toString());
game.informPlayers(new StringBuilder(controller.getName()).append(" souldbonds ").append(permanent.getName()).append(" with ").append(chosen.getName()).toString());
}
}
}
@ -112,7 +112,7 @@ public class SoulbondWatcher extends WatcherImpl<SoulbondWatcher> {
if (controller.chooseUse(Outcome.Benefit, "Use Soulbond for recent " + permanent.getName() + "?", game)) {
chosen.setPairedCard(permanent.getId());
permanent.setPairedCard(chosen.getId());
game.informPlayers(new StringBuilder(controller.getName()).append(" souldbounded ").append(permanent.getName()).append(" with ").append(chosen.getName()).toString());
game.informPlayers(new StringBuilder(controller.getName()).append(" souldbonds ").append(permanent.getName()).append(" with ").append(chosen.getName()).toString());
break;
}
}