Honor finite deck copy limits across printings and deck zones [skip ci] (#7719)

This commit is contained in:
Bryce! 2026-11-09 07:57:39 -05:00 • committed by GitHub
parent 18388d9994
commit 16455c9fd5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 440 additions and 48 deletions

View file

@ -172,6 +172,10 @@ private:
*/
CardNameMap cards;
// Shared defaults are immutable; card-specific copy limits belong to this import.
FormatRulesNameMap magicFormats;
bool magicFormatsDirty = true;
/**
* The sets, indexed by short name.
*/
@ -339,7 +343,8 @@ public:
bool saveToFile(const QString &fileName, const QString &sourceUrl, const QString &sourceVersion);
int importCardsFromSet(const CardSetPtr &currentSet, const QJsonArray &cardsList);
/**
* @brief Returns the default format rules. The result is memoized on first use and must be treated as immutable.
* @brief Returns format rules including finite copy allowances from imported cards.
* The result is cached until cards are added or cleared and must be treated as immutable.
*/
const FormatRulesNameMap &createDefaultMagicFormats();
const CardNameMap &getCardList() const