mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-07-21 09:52:16 -07:00
DeckList no longer pre-populates uuids.
This commit is contained in:
parent
d6035cec56
commit
b81035e63b
1 changed files with 2 additions and 33 deletions
|
|
@ -1,7 +1,5 @@
|
|||
#include "decklist.h"
|
||||
|
||||
#include "../cockatrice/src/game/cards/card_database_manager.h"
|
||||
|
||||
#include <QCryptographicHash>
|
||||
#include <QDebug>
|
||||
#include <QFile>
|
||||
|
|
@ -284,39 +282,10 @@ bool InnerDecklistNode::readElement(QXmlStreamReader *xml)
|
|||
InnerDecklistNode *newZone = new InnerDecklistNode(xml->attributes().value("name").toString(), this);
|
||||
newZone->readElement(xml);
|
||||
} else if (childName == "card") {
|
||||
QString uuid = xml->attributes().value("uuid").toString();
|
||||
QString collectorNumber = xml->attributes().value("collectorNumber").toString();
|
||||
if (uuid.isEmpty() || collectorNumber.isEmpty()) {
|
||||
CardInfoPerSet preferredSetForCard = CardDatabaseManager::getInstance()->getPreferredSetForCard(
|
||||
xml->attributes().value("name").toString());
|
||||
|
||||
// If we don't have a UUID and the preferred set has one, we use that as a default.
|
||||
if (!preferredSetForCard.getProperty("uuid").isEmpty() && uuid.isEmpty()) {
|
||||
uuid = preferredSetForCard.getProperty("uuid");
|
||||
}
|
||||
|
||||
// If we don't have a collectorsNumber, the preferred Set has one, AND we've already set the UUID
|
||||
// to the preferred Set, we use the one from the preferred set.
|
||||
if (!preferredSetForCard.getProperty("num").isEmpty() && collectorNumber.isEmpty() &&
|
||||
preferredSetForCard.getProperty("uuid") == uuid) {
|
||||
collectorNumber = preferredSetForCard.getProperty("num");
|
||||
|
||||
// Otherwise check which Set has the UUID we've set or reused and use the collectorNumber from
|
||||
// there.
|
||||
} else if (!preferredSetForCard.getProperty("num").isEmpty() && collectorNumber.isEmpty()) {
|
||||
CardInfoPtr card_by_name_and_uuid = CardDatabaseManager::getInstance()->getCardByNameAndUUID(
|
||||
xml->attributes().value("name").toString(), uuid);
|
||||
for (auto &set : card_by_name_and_uuid->getSets()) {
|
||||
if (set.getProperty("uuid") == uuid) {
|
||||
collectorNumber = set.getProperty("num");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
DecklistCardNode *newCard = new DecklistCardNode(xml->attributes().value("name").toString(),
|
||||
xml->attributes().value("number").toString().toInt(),
|
||||
this, uuid, collectorNumber);
|
||||
this, xml->attributes().value("uuid").toString(),
|
||||
xml->attributes().value("collectorNumber").toString());
|
||||
newCard->readElement(xml);
|
||||
}
|
||||
} else if (xml->isEndElement() && (childName == "zone"))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue