Avoid choosing a commander as a starting planeswalker

This commit is contained in:
drdev
2016-02-08 02:31:00 +00:00
parent fdf1fc749d
commit 99cc5a9602
2 changed files with 5 additions and 3 deletions

View File

@@ -109,7 +109,7 @@ public class NewConquestScreen extends MultiStepWizardScreen<NewConquestScreenMo
}
private static class SelectStartingPlaneswalkerStep extends WizardStep<NewConquestScreenModel> {
private final FChoiceList<PaperCard> lstPlaneswalkers = add(new FChoiceList<PaperCard>(ConquestUtil.getAllPlaneswalkers()) {
private final FChoiceList<PaperCard> lstPlaneswalkers = add(new FChoiceList<PaperCard>(ConquestUtil.getStartingPlaneswalkerOptions()) {
@Override
protected void onItemActivate(Integer index, PaperCard value) {
advance();

View File

@@ -8,6 +8,7 @@ import java.util.Map.Entry;
import com.google.common.base.Predicate;
import com.google.common.collect.Iterables;
import forge.card.CardRules;
import forge.card.ColorSet;
import forge.deck.CardPool;
import forge.deck.Deck;
@@ -125,11 +126,12 @@ public class ConquestUtil {
return pool;
}
public static Iterable<PaperCard> getAllPlaneswalkers() {
public static Iterable<PaperCard> getStartingPlaneswalkerOptions() {
return Iterables.filter(FModel.getMagicDb().getCommonCards().getUniqueCards(), new Predicate<PaperCard>() {
@Override
public boolean apply(PaperCard card) {
return card.getRules().getType().isPlaneswalker();
CardRules rules = card.getRules();
return rules.getType().isPlaneswalker() && !rules.canBeCommander(); //don't allow picking a commander as a starting planeswalker
}
});
}