mirror of
https://github.com/magefree/mage.git
synced 2025-12-22 19:41:59 -08:00
[CardRepository] Replaced findCard methods from Sets and ExpansionSet
This commit is contained in:
parent
042e4baa1f
commit
08815ffb88
12 changed files with 165 additions and 129 deletions
|
|
@ -43,7 +43,6 @@ public class DeckGenerator {
|
|||
private static final int DECK_LANDS = 16;
|
||||
private static final int MAX_NON_BASIC_SOURCE = DECK_LANDS / 2;
|
||||
|
||||
private static final boolean GENERATE_RANDOM_BASIC_LAND = true;
|
||||
private static final int MAX_TRIES = 4096;
|
||||
|
||||
private static Deck deck = new Deck();
|
||||
|
|
@ -341,19 +340,24 @@ public class DeckGenerator {
|
|||
*/
|
||||
private static Card getBestBasicLand(ColoredManaSymbol color) {
|
||||
if (color.equals(ColoredManaSymbol.G)) {
|
||||
return Sets.findCard("Forest", GENERATE_RANDOM_BASIC_LAND);
|
||||
CardInfo cardInfo = CardRepository.instance.findCard("Forest");
|
||||
return cardInfo != null ? cardInfo.getCard() : null;
|
||||
}
|
||||
if (color.equals(ColoredManaSymbol.R)) {
|
||||
return Sets.findCard("Mountain", GENERATE_RANDOM_BASIC_LAND);
|
||||
CardInfo cardInfo = CardRepository.instance.findCard("Mountain");
|
||||
return cardInfo != null ? cardInfo.getCard() : null;
|
||||
}
|
||||
if (color.equals(ColoredManaSymbol.B)) {
|
||||
return Sets.findCard("Swamp", GENERATE_RANDOM_BASIC_LAND);
|
||||
CardInfo cardInfo = CardRepository.instance.findCard("Swamp");
|
||||
return cardInfo != null ? cardInfo.getCard() : null;
|
||||
}
|
||||
if (color.equals(ColoredManaSymbol.U)) {
|
||||
return Sets.findCard("Island", GENERATE_RANDOM_BASIC_LAND);
|
||||
CardInfo cardInfo = CardRepository.instance.findCard("Island");
|
||||
return cardInfo != null ? cardInfo.getCard() : null;
|
||||
}
|
||||
if (color.equals(ColoredManaSymbol.W)) {
|
||||
return Sets.findCard("Plains", GENERATE_RANDOM_BASIC_LAND);
|
||||
CardInfo cardInfo = CardRepository.instance.findCard("Plains");
|
||||
return cardInfo != null ? cardInfo.getCard() : null;
|
||||
}
|
||||
|
||||
return null;
|
||||
|
|
|
|||
|
|
@ -34,10 +34,14 @@
|
|||
|
||||
package mage.client.dialog;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
import javax.swing.JLayeredPane;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.decks.Deck;
|
||||
import mage.cards.repository.CardInfo;
|
||||
import mage.cards.repository.CardRepository;
|
||||
import mage.client.MageFrame;
|
||||
import mage.sets.Sets;
|
||||
|
||||
/**
|
||||
*
|
||||
|
|
@ -59,6 +63,19 @@ public class AddLandDialog extends MageDialog {
|
|||
this.setVisible(true);
|
||||
}
|
||||
|
||||
private void addLands(String landName, int number) {
|
||||
Random random = new Random();
|
||||
List<CardInfo> cards = CardRepository.instance.findCards(landName);
|
||||
if (cards.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (int i = 0; i < number; i++) {
|
||||
Card land = cards.get(random.nextInt(cards.size())).getCard();
|
||||
deck.getCards().add(land);
|
||||
}
|
||||
}
|
||||
|
||||
/** This method is called from within the constructor to
|
||||
* initialize the form.
|
||||
* WARNING: Do NOT modify this code. The content of this method is
|
||||
|
|
@ -194,25 +211,16 @@ public class AddLandDialog extends MageDialog {
|
|||
|
||||
private void btnAddActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAddActionPerformed
|
||||
int nForest = ((Number)spnForest.getValue()).intValue();
|
||||
for (int i = 0; i < nForest; i++) {
|
||||
deck.getCards().add(Sets.findCard("Forest", true));
|
||||
}
|
||||
int nIsland = ((Number)spnIsland.getValue()).intValue();
|
||||
for (int i = 0; i < nIsland; i++) {
|
||||
deck.getCards().add(Sets.findCard("Island", true));
|
||||
}
|
||||
int nMountain = ((Number)spnMountain.getValue()).intValue();
|
||||
for (int i = 0; i < nMountain; i++) {
|
||||
deck.getCards().add(Sets.findCard("Mountain", true));
|
||||
}
|
||||
int nPlains = ((Number)spnPlains.getValue()).intValue();
|
||||
for (int i = 0; i < nPlains; i++) {
|
||||
deck.getCards().add(Sets.findCard("Plains", true));
|
||||
}
|
||||
int nSwamp = ((Number)spnSwamp.getValue()).intValue();
|
||||
for (int i = 0; i < nSwamp; i++) {
|
||||
deck.getCards().add(Sets.findCard("Swamp", true));
|
||||
}
|
||||
|
||||
addLands("Forest", nForest);
|
||||
addLands("Island", nIsland);
|
||||
addLands("Mountain", nMountain);
|
||||
addLands("Plains", nPlains);
|
||||
addLands("Swamp", nSwamp);
|
||||
this.hideDialog();
|
||||
}//GEN-LAST:event_btnAddActionPerformed
|
||||
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@ package mage.client.game;
|
|||
import mage.cards.MageCard;
|
||||
import mage.cards.action.ActionCallback;
|
||||
import mage.cards.decks.importer.DckDeckImporter;
|
||||
import mage.cards.repository.CardRepository;
|
||||
import mage.client.MageFrame;
|
||||
import mage.client.cards.BigCard;
|
||||
import mage.client.components.HoverButton;
|
||||
|
|
@ -50,7 +51,6 @@ import mage.client.util.ImageHelper;
|
|||
import mage.client.util.gui.BufferedImageBuilder;
|
||||
import mage.components.ImagePanel;
|
||||
import mage.remote.Session;
|
||||
import mage.sets.Sets;
|
||||
import mage.view.CardView;
|
||||
import mage.view.ManaPoolView;
|
||||
import mage.view.PlayerView;
|
||||
|
|
@ -202,7 +202,7 @@ public class PlayerPanelExt extends javax.swing.JPanel {
|
|||
// Avatar
|
||||
Image image = ImageHelper.getImageFromResources("/avatars/unknown.jpg");
|
||||
|
||||
topCardPanel = Plugins.getInstance().getMageCard(new CardView(Sets.findCard("Forest")), bigCard, topCardDimension, gameId, true);
|
||||
topCardPanel = Plugins.getInstance().getMageCard(new CardView(CardRepository.instance.findCard("Forest").getCard()), bigCard, topCardDimension, gameId, true);
|
||||
topCardPanel.setVisible(false);
|
||||
panelBackground.add(topCardPanel);
|
||||
|
||||
|
|
|
|||
|
|
@ -29,9 +29,9 @@
|
|||
package mage.client.util;
|
||||
|
||||
import mage.cards.Card;
|
||||
import mage.cards.ExpansionSet;
|
||||
import mage.cards.decks.Deck;
|
||||
import mage.sets.Sets;
|
||||
import mage.cards.repository.CardInfo;
|
||||
import mage.cards.repository.CardRepository;
|
||||
import mage.view.DeckView;
|
||||
import mage.view.SimpleCardView;
|
||||
import org.apache.log4j.Logger;
|
||||
|
|
@ -51,25 +51,21 @@ public class DeckUtil {
|
|||
public static Deck construct(DeckView view) {
|
||||
Deck deck = new Deck();
|
||||
for (SimpleCardView cardView : view.getCards().values()) {
|
||||
ExpansionSet set = Sets.findSet(cardView.getExpansionSetCode());
|
||||
if (set != null) {
|
||||
Card card = set.findCard(cardView.getCardNumber());
|
||||
if (card != null) {
|
||||
deck.getCards().add(card);
|
||||
} else {
|
||||
log.fatal("(Deck constructing) Couldn't find card: set=" + cardView.getExpansionSetCode() + ", cid=" + Integer.valueOf(cardView.getCardNumber()));
|
||||
}
|
||||
CardInfo cardInfo = CardRepository.instance.findCard(cardView.getExpansionSetCode(), cardView.getCardNumber());
|
||||
Card card = cardInfo != null ? cardInfo.getCard() : null;
|
||||
if (card != null) {
|
||||
deck.getCards().add(card);
|
||||
} else {
|
||||
log.fatal("(Deck constructing) Couldn't find card: set=" + cardView.getExpansionSetCode() + ", cid=" + Integer.valueOf(cardView.getCardNumber()));
|
||||
}
|
||||
}
|
||||
for (SimpleCardView cardView : view.getSideboard().values()) {
|
||||
ExpansionSet set = Sets.findSet(cardView.getExpansionSetCode());
|
||||
if (set != null) {
|
||||
Card card = set.findCard(cardView.getCardNumber());
|
||||
if (card != null) {
|
||||
deck.getSideboard().add(card);
|
||||
} else {
|
||||
log.fatal("(Deck constructing) Couldn't find card: set=" + cardView.getExpansionSetCode() + ", cid=" + Integer.valueOf(cardView.getCardNumber()));
|
||||
}
|
||||
CardInfo cardInfo = CardRepository.instance.findCard(cardView.getExpansionSetCode(), cardView.getCardNumber());
|
||||
Card card = cardInfo != null ? cardInfo.getCard() : null;
|
||||
if (card != null) {
|
||||
deck.getSideboard().add(card);
|
||||
} else {
|
||||
log.fatal("(Deck constructing) Couldn't find card: set=" + cardView.getExpansionSetCode() + ", cid=" + Integer.valueOf(cardView.getCardNumber()));
|
||||
}
|
||||
}
|
||||
return deck;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue