diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.cpp index f51d0f3e7..7a424de8b 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.cpp @@ -4,29 +4,10 @@ void ArchidektApiResponseCardEntry::fromJson(const QJsonObject &json) { id = json.value("id").toInt(); - categories.clear(); - auto categoriesJson = json.value("categories").toArray(); - for (const auto &categoryValue : categoriesJson) { - Category cat; - - if (categoryValue.isObject()) { - QJsonObject obj = categoryValue.toObject(); - - cat.id = obj.value("id").toInt(); - cat.name = obj.value("name").toString(); - cat.isPremier = obj.value("isPremier").toBool(); - cat.includedInDeck = obj.value("includedInDeck").toBool(); - cat.includedInPrice = obj.value("includedInPrice").toBool(); - } else if (categoryValue.isString()) { - cat.name = categoryValue.toString(); - - // assume mainboard unless known otherwise - cat.includedInDeck = true; - } - - categories.append(cat); + for (auto category : categoriesJson) { + categories.append(category.toString()); } companion = json.value("companion").toBool(); @@ -46,13 +27,7 @@ void ArchidektApiResponseCardEntry::fromJson(const QJsonObject &json) void ArchidektApiResponseCardEntry::debugPrint() const { qDebug() << "Id:" << id; - for (auto category : categories) { - qDebug() << "Category ID:" << category.id; - qDebug() << "Category Name:" << category.name; - qDebug() << "Category Premier:" << category.isPremier; - qDebug() << "Category Included in Deck:" << category.includedInDeck; - qDebug() << "Category Included in Price:" << category.includedInPrice; - } + qDebug() << "Categories:" << categories; qDebug() << "Companion:" << companion; qDebug() << "FlippedDefault:" << flippedDefault; qDebug() << "Label:" << label; diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.h index f3961dc6f..f7f86e9ed 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/api_response/card/archidekt_api_response_card_entry.h @@ -9,15 +9,6 @@ #include #include -struct Category -{ - int id; - QString name; - bool isPremier; - bool includedInDeck; - bool includedInPrice; -}; - class ArchidektApiResponseCardEntry { public: @@ -35,7 +26,7 @@ public: return card; }; - QList getCategories() const + QStringList getCategories() const { return categories; } @@ -47,7 +38,7 @@ public: private: int id; - QList categories; + QStringList categories; bool companion; bool flippedDefault; QString label; diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp index 66b68d823..8b17cd49e 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_display_widget.cpp @@ -63,60 +63,16 @@ ArchidektApiResponseDeckDisplayWidget::ArchidektApiResponseDeckDisplayWidget(QWi QString tempDeck; QTextStream deckStream(&tempDeck); - QString mainboardText; - QString sideboardText; - - QTextStream mainStream(&mainboardText); - QTextStream sideStream(&sideboardText); - - for (const auto &card : response.getCards()) { + for (auto card : response.getCards()) { QString fullName = card.getCard().getOracleCard().value("name").toString(); // We don't really care about the second card, the card database already has it as a relation QString cleanName = fullName.split("//").first().trimmed(); - QString line = QString("%1 %2 (%3) %4\n") - .arg(card.getQuantity()) - .arg(cleanName) - .arg(card.getCard().getEdition().getEditionCode().toUpper()) - .arg(card.getCard().getCollectorNumber()); - - bool isCommander = false; - bool isSideboardCategory = false; - bool includedInDeck = false; - - for (const auto &cat : card.getCategories()) { - - if (cat.name.compare("Commander", Qt::CaseInsensitive) == 0) { - isCommander = true; - } - - if (cat.name.compare("Sideboard", Qt::CaseInsensitive) == 0 || - cat.name.compare("Maybeboard", Qt::CaseInsensitive) == 0) { - isSideboardCategory = true; - } - - if (cat.includedInDeck) { - includedInDeck = true; - } - } - - QString target; - - if (isCommander || isSideboardCategory) { - sideStream << line; - } else if (includedInDeck) { - mainStream << line; - } else { - sideStream << line; - } - } - - // Combine with blank line separator - tempDeck = mainboardText; - - if (!sideboardText.isEmpty()) { - tempDeck += "\n"; - tempDeck += sideboardText; + tempDeck += QString("%1 %2 (%3) %4\n") + .arg(card.getQuantity()) + .arg(cleanName) + .arg(card.getCard().getEdition().getEditionCode().toUpper()) + .arg(card.getCard().getCollectorNumber()); } model = new DeckListModel(this); diff --git a/cockatrice/src/interface/widgets/tabs/tab_game.cpp b/cockatrice/src/interface/widgets/tabs/tab_game.cpp index 161829b35..cf8269069 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_game.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_game.cpp @@ -259,9 +259,6 @@ TabGame::~TabGame() if (replayManager) { delete replayManager->replay; } - for (auto &player : game->getPlayerManager()->getPlayers()) { - player->clear(); - } } void TabGame::updatePlayerListDockTitle()