Fix rules text for abilities with up to one target

This commit is contained in:
Iain Monro 2019-08-14 17:16:01 +01:00
parent 1ac6a7a5a2
commit d53b9fd656
2 changed files with 21 additions and 4 deletions

View file

@ -0,0 +1,17 @@
package org.mage.test.cards.text;
import mage.cards.Card;
import mage.cards.repository.CardRepository;
import org.junit.Assert;
import org.junit.Test;
public class WrennAndSixTest {
@Test
public void testFirstLoyaltyAbilityRulesText() {
Card wrennAndSix = CardRepository.instance.findCard("Wrenn and Six").getCard();
String firstLoyaltyAbilityRulesText = wrennAndSix.getRules().get(0);
Assert.assertEquals(firstLoyaltyAbilityRulesText, "+1: Return up to one target land card from your graveyard to your hand.");
}
}

View file

@ -56,10 +56,10 @@ public class ReturnFromGraveyardToHandTargetEffect extends OneShotEffect {
StringBuilder sb = new StringBuilder();
Target target = mode.getTargets().get(0);
sb.append("return ");
if (target.getMaxNumberOfTargets() > 1) {
if (target.getMaxNumberOfTargets() != target.getNumberOfTargets()) {
sb.append("up to ");
}
if (target.getMaxNumberOfTargets() != target.getNumberOfTargets()) {
sb.append("up to ");
sb.append(CardUtil.numberToText(target.getMaxNumberOfTargets())).append(' ');
} else if (target.getMaxNumberOfTargets() > 1) {
sb.append(CardUtil.numberToText(target.getMaxNumberOfTargets())).append(' ');
}
if (!mode.getTargets().get(0).getTargetName().startsWith("another")) {