mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 20:28:00 +00:00
Read rankings from cache instead of reading file every time.
This commit is contained in:
@@ -16,8 +16,8 @@ import forge.gui.toolbox.FOptionPane;
|
||||
import forge.gui.toolbox.itemmanager.ItemManagerConfig;
|
||||
import forge.item.InventoryItem;
|
||||
import forge.item.PaperCard;
|
||||
import forge.limited.DraftRankCache;
|
||||
import forge.limited.LimitedPoolType;
|
||||
import forge.limited.ReadDraftRankings;
|
||||
import forge.limited.SealedCardPoolGenerator;
|
||||
import forge.limited.SealedDeckBuilder;
|
||||
import forge.properties.ForgePreferences.FPref;
|
||||
@@ -233,8 +233,6 @@ public enum CSubmenuSealed implements ICDoc {
|
||||
}
|
||||
|
||||
static class DeckComparer implements java.util.Comparator<Deck> {
|
||||
ReadDraftRankings ranker = new ReadDraftRankings();
|
||||
|
||||
public double getDraftValue(Deck d) {
|
||||
double value = 0;
|
||||
double divider = 0;
|
||||
@@ -248,8 +246,8 @@ public enum CSubmenuSealed implements ICDoc {
|
||||
for (Entry<PaperCard, Integer> kv : d.getMain()) {
|
||||
PaperCard evalCard = kv.getKey();
|
||||
int count = kv.getValue();
|
||||
if (ranker.getRanking(evalCard.getName(), evalCard.getEdition()) != null) {
|
||||
double add = ranker.getRanking(evalCard.getName(), evalCard.getEdition());
|
||||
if (DraftRankCache.getRanking(evalCard.getName(), evalCard.getEdition()) != null) {
|
||||
double add = DraftRankCache.getRanking(evalCard.getName(), evalCard.getEdition());
|
||||
// System.out.println(evalCard.getName() + " is worth " + add);
|
||||
value += add * count;
|
||||
divider += count;
|
||||
|
||||
@@ -51,7 +51,6 @@ public class BoosterDraftAI {
|
||||
private final List<List<PaperCard>> deck = new ArrayList<List<PaperCard>>();
|
||||
private final ArrayList<DeckColors> playerColors = new ArrayList<DeckColors>();
|
||||
|
||||
private ReadDraftRankings draftRankings;
|
||||
// roughly equivalent to 25 ranks in a core set, or 15 ranks in a small set
|
||||
private static final double TAKE_BEST_THRESHOLD = 0.1;
|
||||
|
||||
@@ -132,7 +131,7 @@ public class BoosterDraftAI {
|
||||
private List<Pair<PaperCard, Double>> rankCards(final Iterable<PaperCard> chooseFrom) {
|
||||
List<Pair<PaperCard, Double>> rankedCards = new ArrayList<Pair<PaperCard,Double>>();
|
||||
for (PaperCard card : chooseFrom) {
|
||||
Double rkg = draftRankings.getRanking(card.getName(), card.getEdition());
|
||||
Double rkg = DraftRankCache.getRanking(card.getName(), card.getEdition());
|
||||
if (rkg != null) {
|
||||
rankedCards.add(MutablePair.of(card, rkg));
|
||||
} else {
|
||||
@@ -174,9 +173,6 @@ public class BoosterDraftAI {
|
||||
this.deck.add(new ArrayList<PaperCard>());
|
||||
this.playerColors.add(new DeckColors());
|
||||
}
|
||||
|
||||
// Initialize card rankings
|
||||
this.draftRankings = new ReadDraftRankings();
|
||||
} // BoosterDraftAI()
|
||||
|
||||
/**
|
||||
|
||||
@@ -40,8 +40,6 @@ public class LimitedDeckBuilder extends DeckGeneratorBase{
|
||||
private Iterable<PaperCard> onColorCreatures;
|
||||
private Iterable<PaperCard> onColorNonCreatures;
|
||||
|
||||
private static ReadDraftRankings draftRankings = new ReadDraftRankings();
|
||||
|
||||
private static final boolean logToConsole = false;
|
||||
|
||||
/**
|
||||
@@ -677,7 +675,7 @@ public class LimitedDeckBuilder extends DeckGeneratorBase{
|
||||
protected List<Pair<Double, PaperCard>> rankCards(Iterable<PaperCard> cards) {
|
||||
List<Pair<Double, PaperCard>> ranked = new ArrayList<Pair<Double, PaperCard>>();
|
||||
for (PaperCard card : cards) {
|
||||
Double rkg = draftRankings.getRanking(card.getName(), card.getEdition());
|
||||
Double rkg = DraftRankCache.getRanking(card.getName(), card.getEdition());
|
||||
if (rkg != null) {
|
||||
ranked.add(Pair.of(rkg, card));
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user