foul-magics/Mage/src/main/java/mage/abilities/hint/common/CovenHint.java
2021-09-02 19:27:37 -04:00

44 lines
1.2 KiB
Java

package mage.abilities.hint.common;
import mage.MageInt;
import mage.MageObject;
import mage.abilities.Ability;
import mage.abilities.hint.Hint;
import mage.filter.StaticFilters;
import mage.game.Game;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* @author TheElk801
*/
public enum CovenHint implements Hint {
instance;
@Override
public String getText(Game game, Ability ability) {
List<String> powers = game
.getBattlefield()
.getActivePermanents(
StaticFilters.FILTER_CONTROLLED_CREATURE,
ability.getControllerId(), ability.getSourceId(), game
)
.stream()
.filter(Objects::nonNull)
.map(MageObject::getPower)
.mapToInt(MageInt::getValue)
.distinct()
.sorted()
.mapToObj(String::valueOf)
.collect(Collectors.toList());
return "Different powers among creatures you control: " + powers.size()
+ (powers.size() > 0 ? " (" + String.join(", ", powers) + ')' : "");
}
@Override
public Hint copy() {
return this;
}
}