diff --git a/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java b/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java index acf7022327b..25478ff44e0 100644 --- a/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java +++ b/Mage.Verify/src/test/java/mage/verify/VerifyCardDataTest.java @@ -1676,9 +1676,11 @@ public class VerifyCardDataTest { String[] cardRules = card .getRules() .stream() - .reduce("", (a, b) -> a + '\n' + b) + .collect(Collectors.joining("\n")) .replace("
", "\n") .replace("
", "\n") + .replace("", "") + .replace("", "") .split("[\\$\\\n]"); for (int i = 0; i < cardRules.length; i++) { cardRules[i] = prepareRule(card.getName(), cardRules[i]); diff --git a/Mage/src/main/java/mage/abilities/effects/Effects.java b/Mage/src/main/java/mage/abilities/effects/Effects.java index 5c11da1c4d0..d22d0e4d663 100644 --- a/Mage/src/main/java/mage/abilities/effects/Effects.java +++ b/Mage/src/main/java/mage/abilities/effects/Effects.java @@ -107,7 +107,7 @@ public class Effects extends ArrayList { && !lastRule.endsWith(".") && !lastRule.endsWith("\"") && !lastRule.endsWith(".]") - && !lastRule.startsWith("Level ") + && !lastRule.startsWith("LEVEL ") && !lastRule.endsWith(".)") && !lastRule.endsWith("
") && !lastRule.endsWith("")) { diff --git a/Mage/src/main/java/mage/abilities/keyword/LevelerCardBuilder.java b/Mage/src/main/java/mage/abilities/keyword/LevelerCardBuilder.java index 7158bd8ce37..697718d6d46 100644 --- a/Mage/src/main/java/mage/abilities/keyword/LevelerCardBuilder.java +++ b/Mage/src/main/java/mage/abilities/keyword/LevelerCardBuilder.java @@ -1,8 +1,5 @@ - package mage.abilities.keyword; -import java.util.ArrayList; -import java.util.List; import mage.abilities.Abilities; import mage.abilities.AbilitiesImpl; import mage.abilities.Ability; @@ -18,10 +15,14 @@ import mage.constants.SubLayer; import mage.constants.Zone; import mage.counters.CounterType; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + /** * The implementation by BetaSteward was discarded as requires special handling * in Mage.Core. - * + *

* Instead it was replaced by conditional continuous effects and builder * pattern. * @@ -181,19 +182,24 @@ public class LevelerCardBuilder { } public String getRule() { - StringBuilder sb = new StringBuilder(); - sb.append("Level ").append(level1); + StringBuilder sb = new StringBuilder("LEVEL "); + sb.append(level1); if (level2 == -1) { sb.append('+'); } else { - sb.append('-').append(level2); + sb.append('-'); + sb.append(level2); } - sb.append(": ").append(power).append('/').append(toughness).append(' '); - for (String rule : abilities.getRules("{this}")) { - sb.append(rule).append(' '); + sb.append("
"); + sb.append(power); + sb.append('/'); + sb.append(toughness); + List abilityText = abilities.getRules("{this}"); + if (!abilityText.isEmpty()) { + sb.append("
"); + sb.append(abilityText.stream().collect(Collectors.joining("
"))); } return sb.toString(); } - } }