mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-15 06:52:15 -07:00
Move new method to DeckListModel so we don't have to include CardDatabaseManager in common.
This commit is contained in:
parent
7bb18c84c7
commit
268d3f2e6b
3 changed files with 3 additions and 67 deletions
|
|
@ -1,7 +1,5 @@
|
|||
#include "decklist.h"
|
||||
|
||||
#include "../cockatrice/src/game/cards/card_database_manager.h"
|
||||
|
||||
#include <QCryptographicHash>
|
||||
#include <QDebug>
|
||||
#include <QFile>
|
||||
|
|
@ -866,66 +864,6 @@ QMap<QString, QString> DeckList::getCardListWithProviderId() const
|
|||
return result;
|
||||
}
|
||||
|
||||
QList<CardInfoPtr> *DeckList::getCardsAsCardInfoPtrs() const
|
||||
{
|
||||
QList<CardInfoPtr> *cards = new QList<CardInfoPtr>();
|
||||
InnerDecklistNode *listRoot = getRoot();
|
||||
if (!listRoot)
|
||||
return cards;
|
||||
|
||||
for (int i = 0; i < listRoot->size(); i++) {
|
||||
InnerDecklistNode *currentZone = dynamic_cast<InnerDecklistNode *>(listRoot->at(i));
|
||||
if (!currentZone)
|
||||
continue;
|
||||
for (int j = 0; j < currentZone->size(); j++) {
|
||||
DecklistCardNode *currentCard = dynamic_cast<DecklistCardNode *>(currentZone->at(j));
|
||||
if (!currentCard)
|
||||
continue;
|
||||
for (int k = 0; k < currentCard->getNumber(); ++k) {
|
||||
CardInfoPtr info = CardDatabaseManager::getInstance()->getCardByNameAndProviderId(
|
||||
currentCard->getName(), currentCard->getCardProviderId());
|
||||
if (info) {
|
||||
cards->append(info);
|
||||
} else {
|
||||
qDebug() << "Card not found in database!";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return cards;
|
||||
}
|
||||
|
||||
QList<CardInfoPtr> *DeckList::getCardsAsCardInfoPtrsForZone(QString zoneName) const
|
||||
{
|
||||
QList<CardInfoPtr> *cards = new QList<CardInfoPtr>();
|
||||
InnerDecklistNode *listRoot = getRoot();
|
||||
if (!listRoot)
|
||||
return cards;
|
||||
|
||||
for (int i = 0; i < listRoot->size(); i++) {
|
||||
InnerDecklistNode *currentZone = dynamic_cast<InnerDecklistNode *>(listRoot->at(i));
|
||||
if (!currentZone)
|
||||
continue;
|
||||
if (currentZone->getName() == zoneName) {
|
||||
for (int j = 0; j < currentZone->size(); j++) {
|
||||
DecklistCardNode *currentCard = dynamic_cast<DecklistCardNode *>(currentZone->at(j));
|
||||
if (!currentCard)
|
||||
continue;
|
||||
for (int k = 0; k < currentCard->getNumber(); ++k) {
|
||||
CardInfoPtr info = CardDatabaseManager::getInstance()->getCardByNameAndProviderId(
|
||||
currentCard->getName(), currentCard->getCardProviderId());
|
||||
if (info) {
|
||||
cards->append(info);
|
||||
} else {
|
||||
qDebug() << "Card not found in database!";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return cards;
|
||||
}
|
||||
|
||||
int DeckList::getSideboardSize() const
|
||||
{
|
||||
int size = 0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue