From 3301cc3b7879a28d9f24dfe32d4592640fa41e92 Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Sat, 13 Apr 2019 20:28:52 -0400 Subject: [PATCH] fixed Niv-Mizzet Reborn not allowing any selections (fixes #5713) --- Mage.Sets/src/mage/cards/n/NivMizzetReborn.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Mage.Sets/src/mage/cards/n/NivMizzetReborn.java b/Mage.Sets/src/mage/cards/n/NivMizzetReborn.java index 28e5913f164..761aac87406 100644 --- a/Mage.Sets/src/mage/cards/n/NivMizzetReborn.java +++ b/Mage.Sets/src/mage/cards/n/NivMizzetReborn.java @@ -91,11 +91,19 @@ class NivMizzetRebornEffect extends OneShotEffect { String otherColors = ""; for (char c : "WUBRG".toCharArray()) { if (color1.charAt(0) == c || color2.charAt(0) == c) { - otherColors += c; + continue; } + otherColors += c; } return otherColors; } + + private boolean isInCards(Cards cards, Game game) { + FilterCard filter = new FilterCard(getDescription()); + filter.add(new ColorPredicate(new ObjectColor(color1 + color2))); + filter.add(Predicates.not(new ColorPredicate(new ObjectColor(getOtherColors())))); + return cards.getCards(game).stream().anyMatch(card -> filter.match(card, game)); + } } NivMizzetRebornEffect() { @@ -127,6 +135,9 @@ class NivMizzetRebornEffect extends OneShotEffect { } player.revealCards(source, cards, game); for (Guild guild : Guild.values()) { + if (!guild.isInCards(cards, game)) { + continue; + } TargetCard target = guild.getTarget(); if (player.choose(outcome, cards, target, game)) { Card card = game.getCard(target.getFirstTarget());