Merge pull request #808 from argonui/better-custom-card-detection

Better custom card detection for Card Index
This commit is contained in:
dscarpac 2024-08-13 22:12:35 -05:00 committed by GitHub
commit 5a9cd953ab
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 40 additions and 6 deletions

View File

@ -6,5 +6,5 @@
"level": 3, "level": 3,
"traits": "Item. Clothing.", "traits": "Item. Clothing.",
"agilityIcons": 1, "agilityIcons": 1,
"cycle": "Standalone" "cycle": "Beta"
} }

View File

@ -6,5 +6,5 @@
"level": 2, "level": 2,
"traits": "Item. Relic. Weapon. Melee.", "traits": "Item. Relic. Weapon. Melee.",
"combatIcons": 1, "combatIcons": 1,
"cycle": "Standalone" "cycle": "Beta"
} }

View File

@ -7,5 +7,5 @@
"traits": "Item. Relic.", "traits": "Item. Relic.",
"willpowerIcons": 1, "willpowerIcons": 1,
"wildIcons": 2, "wildIcons": 2,
"cycle": "Red Ride Rising" "cycle": "Red Tide Rising"
} }

View File

@ -30,7 +30,37 @@ local classesInOrder = {
"Survivor", "Survivor",
"Neutral" "Neutral"
} }
local OFFICIAL_CYCLE_LIST = {
-- campaigns
["investigator packs"] = true,
["core"] = true,
["the dunwich legacy"] = true,
["the path to carcosa"] = true,
["the forgotten age"] = true,
["the circle undone"] = true,
["the dream-eaters"] = true,
["the innsmouth conspiracy"] = true,
["edge of the earth"] = true,
["the scarlet keys"] = true,
["the feast of hemlock vale"] = true,
["the drowned city"] = true,
-- standalones / parallels etc.
["standalone"] = true,
["the blob that ate everything else"] = true,
["all or nothing"] = true,
["bad blood"] = true,
["read or die"] = true,
["by the book"] = true,
["red tide rising"] = true,
["on the road again"] = true,
["laid to rest"] = true,
["path of the righteous"] = true,
["relics of the past"] = true,
["hunting for answers"] = true,
["pistols and pearls"] = true,
["beta"] = true,
["promo"] = true
}
-- conversion tables to simplify type sorting -- conversion tables to simplify type sorting
local typeConversion = { local typeConversion = {
Investigator = 1, Investigator = 1,
@ -209,7 +239,7 @@ function buildSupplementalIndexes()
end end
end end
-- add to cycle index -- start parsing the cycle data
local cycleName = card.metadata.cycle local cycleName = card.metadata.cycle
-- if this is a minicard without cycle, check the parent card for cycle data -- if this is a minicard without cycle, check the parent card for cycle data
@ -232,6 +262,10 @@ function buildSupplementalIndexes()
else else
-- track cards without defined cycle (should only be fan-made cards) -- track cards without defined cycle (should only be fan-made cards)
cycleName = "other" cycleName = "other"
end
-- check if card is not from an official cycle
if OFFICIAL_CYCLE_LIST[cycleName] ~= true then
otherCardsDetected = true otherCardsDetected = true
-- maybe add to special investigator / minicard index -- maybe add to special investigator / minicard index
@ -254,7 +288,7 @@ function buildSupplementalIndexes()
end end
end end
-- maybe initialize table -- add to cycle index
writeToNestedTable(cycleIndex, cycleName, cardId) writeToNestedTable(cycleIndex, cycleName, cardId)
end end
end end