diff --git a/Mage.Client/src/main/java/org/mage/plugins/card/images/DownloadPictures.java b/Mage.Client/src/main/java/org/mage/plugins/card/images/DownloadPictures.java index 6e2e7d8153f..a8ee8288688 100644 --- a/Mage.Client/src/main/java/org/mage/plugins/card/images/DownloadPictures.java +++ b/Mage.Client/src/main/java/org/mage/plugins/card/images/DownloadPictures.java @@ -236,6 +236,13 @@ public class DownloadPictures extends DefaultBoundedRangeModel implements Runnab url.setSplitCard(card.isSplitCard()); allCardsUrls.add(url); + if (card.isDoubleFaced()) { + if (card.getSecondSideName() == null || card.getSecondSideName().trim().isEmpty()) { + throw new IllegalStateException("Second side card can't have empty name."); + } + url = new CardDownloadData(card.getSecondSideName(), card.getSetCode(), card.getCardNumber(), usesVariousArt(card), 0, false, card.isDoubleFaced(), true); + allCardsUrls.add(url); + } if (card.isFlipCard()) { if (card.getFlipCardName() == null || card.getFlipCardName().trim().isEmpty()) { throw new IllegalStateException("Flipped card can't have empty name."); diff --git a/Mage/src/mage/cards/repository/CardCriteria.java b/Mage/src/mage/cards/repository/CardCriteria.java index 4db23e12205..4997a612354 100644 --- a/Mage/src/mage/cards/repository/CardCriteria.java +++ b/Mage/src/mage/cards/repository/CardCriteria.java @@ -171,7 +171,8 @@ public class CardCriteria { public void buildQuery(QueryBuilder qb) throws SQLException { Where where = qb.where(); - int clausesCount = 0; + where.eq("nightCard", false); + int clausesCount = 1; if (name != null) { where.like("name", new SelectArg('%' + name + '%')); clausesCount++; diff --git a/Mage/src/mage/cards/repository/CardInfo.java b/Mage/src/mage/cards/repository/CardInfo.java index 0cbcbab17b4..405e9166a9b 100644 --- a/Mage/src/mage/cards/repository/CardInfo.java +++ b/Mage/src/mage/cards/repository/CardInfo.java @@ -117,7 +117,7 @@ public class CardInfo { this.flipCard = card.isFlipCard(); this.flipCardName = card.getFlipCardName(); - this.doubleFaced = card.canTransform(); + this.doubleFaced = card.canTransform() && card.getSecondCardFace() != null; this.nightCard = card.isNightCard(); Card secondSide = card.getSecondCardFace(); if (secondSide != null) { diff --git a/Mage/src/mage/cards/repository/CardRepository.java b/Mage/src/mage/cards/repository/CardRepository.java index d283e6e5fd3..f30c038ee86 100644 --- a/Mage/src/mage/cards/repository/CardRepository.java +++ b/Mage/src/mage/cards/repository/CardRepository.java @@ -54,7 +54,7 @@ public enum CardRepository { private static final String JDBC_URL = "jdbc:sqlite:db/cards.db"; private static final String VERSION_ENTITY_NAME = "card"; - private static final long CARD_DB_VERSION = 7; + private static final long CARD_DB_VERSION = 8; private Random random = new Random(); private Dao cardDao; @@ -247,7 +247,10 @@ public enum CardRepository { public List getAllCards() { try { - return cardDao.queryForAll(); + QueryBuilder queryBuilder = cardDao.queryBuilder(); + queryBuilder.where().eq("nightCard", false); + + return cardDao.query(queryBuilder.prepare()); } catch (SQLException ex) { } return new ArrayList();