Additional Divider Options: Curse, Trash, Start Decks - 2nd attempt (#201)
* Trash, Curse, Start Deck Options
This commit is contained in:
parent
a33ec8f6d7
commit
236feff33c
@ -878,6 +878,19 @@
|
|||||||
"types": [
|
"types": [
|
||||||
"Treasure"
|
"Treasure"
|
||||||
]
|
]
|
||||||
|
},{
|
||||||
|
"card_tag": "Start Deck",
|
||||||
|
"cardset_tags": [
|
||||||
|
"base",
|
||||||
|
"dominion1stEdition",
|
||||||
|
"dominion2ndEdition",
|
||||||
|
"intrigue1stEdition"
|
||||||
|
],
|
||||||
|
"cost": "",
|
||||||
|
"count": "0",
|
||||||
|
"types": [
|
||||||
|
"Start Deck"
|
||||||
|
]
|
||||||
},{
|
},{
|
||||||
"card_tag": "Trash",
|
"card_tag": "Trash",
|
||||||
"cardset_tags": [
|
"cardset_tags": [
|
||||||
|
|||||||
@ -485,6 +485,12 @@
|
|||||||
"name": "Medák",
|
"name": "Medák",
|
||||||
"untranslated": "description, extra"
|
"untranslated": "description, extra"
|
||||||
},
|
},
|
||||||
|
"Start Deck": {
|
||||||
|
"description": "Player's starting deck of cards:<n>7 Copper cards<n>3 Estate cards",
|
||||||
|
"extra": "",
|
||||||
|
"name": "Player Start Deck",
|
||||||
|
"untranslated": "description, extra, name"
|
||||||
|
},
|
||||||
"Trash": {
|
"Trash": {
|
||||||
"description": "Pile of trash.",
|
"description": "Pile of trash.",
|
||||||
"extra": "",
|
"extra": "",
|
||||||
|
|||||||
@ -26,6 +26,7 @@
|
|||||||
"Shelter": "Shelter",
|
"Shelter": "Shelter",
|
||||||
"Shelters": "Shelters",
|
"Shelters": "Shelters",
|
||||||
"Spirit": "Spirit",
|
"Spirit": "Spirit",
|
||||||
|
"Start Deck": "Start Deck",
|
||||||
"State": "State",
|
"State": "State",
|
||||||
"Trash": "Trash",
|
"Trash": "Trash",
|
||||||
"Traveller": "Traveller",
|
"Traveller": "Traveller",
|
||||||
|
|||||||
@ -424,6 +424,12 @@
|
|||||||
"name": "Silber",
|
"name": "Silber",
|
||||||
"untranslated": "extra"
|
"untranslated": "extra"
|
||||||
},
|
},
|
||||||
|
"Start Deck": {
|
||||||
|
"description": "Player's starting deck of cards:<n>7 Copper cards<n>3 Estate cards",
|
||||||
|
"extra": "",
|
||||||
|
"name": "Player Start Deck",
|
||||||
|
"untranslated": "description, extra, name"
|
||||||
|
},
|
||||||
"Trash": {
|
"Trash": {
|
||||||
"description": "Pile of trash.",
|
"description": "Pile of trash.",
|
||||||
"extra": "",
|
"extra": "",
|
||||||
@ -907,44 +913,37 @@
|
|||||||
"Artisan": {
|
"Artisan": {
|
||||||
"description": "Nimm eine Karte vom Vorrat auf die Hand, die bis zu 5 kostet.<n>Lege eine Handkarte auf deinen Nachziehstapel.",
|
"description": "Nimm eine Karte vom Vorrat auf die Hand, die bis zu 5 kostet.<n>Lege eine Handkarte auf deinen Nachziehstapel.",
|
||||||
"extra": "Nimm eine Karte vom Vorrat, die zu diesem Zeitpunkt maximal 5 kostet.<n>Du darfst kein zusätzliches _ Coin einsetzen, um dir eine teurere Karte zu nehmen.<n>Außer _ Coin darf die Karte keine zusätzlichen Kosten enthalten.<n>Du darfst dir zum Beispiel keine Karte mit Trank (aus Alchemie) oder Schulden (aus Empires) in den Kosten nehmen.<n>Die genommene Karte nimmst du direkt auf die Hand.<n>Anschließend legst du eine beliebige Handkarte (das kann die gerade genommene oder eine andere sein) oben auf deinen Nachziehstapel.",
|
"extra": "Nimm eine Karte vom Vorrat, die zu diesem Zeitpunkt maximal 5 kostet.<n>Du darfst kein zusätzliches _ Coin einsetzen, um dir eine teurere Karte zu nehmen.<n>Außer _ Coin darf die Karte keine zusätzlichen Kosten enthalten.<n>Du darfst dir zum Beispiel keine Karte mit Trank (aus Alchemie) oder Schulden (aus Empires) in den Kosten nehmen.<n>Die genommene Karte nimmst du direkt auf die Hand.<n>Anschließend legst du eine beliebige Handkarte (das kann die gerade genommene oder eine andere sein) oben auf deinen Nachziehstapel.",
|
||||||
"name": "Töpferei"
|
"name": "Töpferei"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Bandit": {
|
"Bandit": {
|
||||||
"description": "Nimm ein Gold vom Vorrat.<n>Jeder Mitspieler deckt die obersten 2 Karten seines Nachziehstapels auf, entsorgt eine aufgedeckte Geldkarte nach seiner Wahl – außer Kupfer – und legt den Rest ab.",
|
"description": "Nimm ein Gold vom Vorrat.<n>Jeder Mitspieler deckt die obersten 2 Karten seines Nachziehstapels auf, entsorgt eine aufgedeckte Geldkarte nach seiner Wahl – außer Kupfer – und legt den Rest ab.",
|
||||||
"extra": "Zuerst nimmst du ein Gold vom Vorrat und legst es auf deinen Ablagestapel.<n>Dann deckt jeder Mitspieler – beginnend bei deinem linken Mitspieler – die obersten zwei Karten seines Nachziehstapels auf.<n>Deckt ein Spieler zwei Geldkarten (auch ggf. kombinierte) außer Kupfer auf, muss er eine davon entsorgen.<n>Dabei darf er selbst entscheiden, welche Geldkarte er entsorgt.<n>Die andere Geldkarte wird – genauso wie alle anderen Karten – abgelegt.<n>Deckt ein Spieler eine Geldkarte außer Kupfer sowie eine andere Karte (z.B. ein Kupfer oder eine beliebige Aktionskarte) auf, wird diese Geldkarte entsorgt.<n>Die andere aufgedeckte Karte wird abgelegt.",
|
"extra": "Zuerst nimmst du ein Gold vom Vorrat und legst es auf deinen Ablagestapel.<n>Dann deckt jeder Mitspieler – beginnend bei deinem linken Mitspieler – die obersten zwei Karten seines Nachziehstapels auf.<n>Deckt ein Spieler zwei Geldkarten (auch ggf. kombinierte) außer Kupfer auf, muss er eine davon entsorgen.<n>Dabei darf er selbst entscheiden, welche Geldkarte er entsorgt.<n>Die andere Geldkarte wird – genauso wie alle anderen Karten – abgelegt.<n>Deckt ein Spieler eine Geldkarte außer Kupfer sowie eine andere Karte (z.B. ein Kupfer oder eine beliebige Aktionskarte) auf, wird diese Geldkarte entsorgt.<n>Die andere aufgedeckte Karte wird abgelegt.",
|
||||||
"name": "Banditin"
|
"name": "Banditin"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Harbinger": {
|
"Harbinger": {
|
||||||
"description": "+1 Karte<br>+1 Aktion<n>Sieh deinen Ablagestapel durch.<n>Du darfst eine Karte daraus auf deinen Nachziehstapel legen.",
|
"description": "+1 Karte<br>+1 Aktion<n>Sieh deinen Ablagestapel durch.<n>Du darfst eine Karte daraus auf deinen Nachziehstapel legen.",
|
||||||
"extra": "Du ziehst 1 Karte und erhälst +1 Aktion.<n> Schau dir deinen Ablagestapel an.<n>Du darfst eine Karte daraus auswählen und oben auf deinen Nachziehstapel legen. Die restlichen Karten (oder alle) legst du in beliebiger Reihenfolge zurück auf den Ablagestapel.<n>Ist dein Ablagestapel leer, passiert nichts.",
|
"extra": "Du ziehst 1 Karte und erhälst +1 Aktion.<n> Schau dir deinen Ablagestapel an.<n>Du darfst eine Karte daraus auswählen und oben auf deinen Nachziehstapel legen. Die restlichen Karten (oder alle) legst du in beliebiger Reihenfolge zurück auf den Ablagestapel.<n>Ist dein Ablagestapel leer, passiert nichts.",
|
||||||
"name": "Vorbotin"
|
"name": "Vorbotin"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Merchant": {
|
"Merchant": {
|
||||||
"description": "+1 Karte<br>+1 Aktion<n>Spielst du in diesem Zug das erste Mal ein Silber aus: +1 Geld",
|
"description": "+1 Karte<br>+1 Aktion<n>Spielst du in diesem Zug das erste Mal ein Silber aus: +1 Geld",
|
||||||
"extra": "Du ziehst 1 Karte und erhälst +1 Aktion.<n>Wenn du in diesem Zug vor dem Ausspielen dieser Händlerin noch kein Silber ausgespielt hast, erhälst du für das erste danach ausgespielte Silber +1 Geld.<n>Für jedes weitere ausgespielte Silber erhälst du keinen zusätzlichen Bonus.<n>Hast du mehrere Händlerinnen ausgespielt, erhälst du pro Händlerin +1 Geld.",
|
"extra": "Du ziehst 1 Karte und erhälst +1 Aktion.<n>Wenn du in diesem Zug vor dem Ausspielen dieser Händlerin noch kein Silber ausgespielt hast, erhälst du für das erste danach ausgespielte Silber +1 Geld.<n>Für jedes weitere ausgespielte Silber erhälst du keinen zusätzlichen Bonus.<n>Hast du mehrere Händlerinnen ausgespielt, erhälst du pro Händlerin +1 Geld.",
|
||||||
"name": "Händlerin"
|
"name": "Händlerin"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Poacher": {
|
"Poacher": {
|
||||||
"description": "+1 Karte<br>+1 Aktion<br>+1 Geld<n>Lege pro leerem Vorratsstapel eine Handkarte ab.",
|
"description": "+1 Karte<br>+1 Aktion<br>+1 Geld<n>Lege pro leerem Vorratsstapel eine Handkarte ab.",
|
||||||
"extra": "Du ziehst 1 Karte, erhältst + 1 Aktion und + 1 Geld.<n>Dann schaust du, wie viele Vorratsstapel (Fluch-, Geld-, Punkte- und Aktionskarten, ggf. Ruinenkarten etc.) bereits leer sind.<n>Ist kein Stapel leer, musst du keine Handkarten ablegen.<n>Ist ein Stapel leer, legst du 1 Handkarte ab usw.<n>Wenn du nicht so viele Karten auf der Hand hast, wie Vorratsstapel leer sind, legst du so viele Karten ab, wie du kannst.",
|
"extra": "Du ziehst 1 Karte, erhältst + 1 Aktion und + 1 Geld.<n>Dann schaust du, wie viele Vorratsstapel (Fluch-, Geld-, Punkte- und Aktionskarten, ggf. Ruinenkarten etc.) bereits leer sind.<n>Ist kein Stapel leer, musst du keine Handkarten ablegen.<n>Ist ein Stapel leer, legst du 1 Handkarte ab usw.<n>Wenn du nicht so viele Karten auf der Hand hast, wie Vorratsstapel leer sind, legst du so viele Karten ab, wie du kannst.",
|
||||||
"name": "Wilddiebin"
|
"name": "Wilddiebin"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Sentry": {
|
"Sentry": {
|
||||||
"description": "+1 Karte<br>+1 Aktion<n>Sieh dir die obersten 2 Karten deines Nachziehstapels an.<n>Entsorge und/oder lege beliebig viele davon ab.<n>Lege die übrigen Karten in beliebiger Reihenfolge auf deinen Nachziehstapel zurück.",
|
"description": "+1 Karte<br>+1 Aktion<n>Sieh dir die obersten 2 Karten deines Nachziehstapels an.<n>Entsorge und/oder lege beliebig viele davon ab.<n>Lege die übrigen Karten in beliebiger Reihenfolge auf deinen Nachziehstapel zurück.",
|
||||||
"extra": "Du ziehst 1 Karte und erhältst +1 Aktion.<n>Dann siehst du dir die obersten 2 Karten deines Nachziehstapels an.<n>Du kannst beide Karten entsorgen, beide Karten ablegen oder sie in beliebiger Reihenfolge zurück auf den Nachziehstapel legen.<n>Du kannst aber auch eine entsorgen und eine ablegen, oder eine entsorgen und die andere zurück auf den Nachziehstapel legen, oder eine ablegen und die andere zurücklegen.",
|
"extra": "Du ziehst 1 Karte und erhältst +1 Aktion.<n>Dann siehst du dir die obersten 2 Karten deines Nachziehstapels an.<n>Du kannst beide Karten entsorgen, beide Karten ablegen oder sie in beliebiger Reihenfolge zurück auf den Nachziehstapel legen.<n>Du kannst aber auch eine entsorgen und eine ablegen, oder eine entsorgen und die andere zurück auf den Nachziehstapel legen, oder eine ablegen und die andere zurücklegen.",
|
||||||
"name": "Torwächterin"
|
"name": "Torwächterin"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Vassal": {
|
"Vassal": {
|
||||||
"description": "+2 Geld<n>Lege die oberste Karte deines Nachziehstapels ab.<n>Ist es eine Aktionskarte, darfst du sie ausspielen.",
|
"description": "+2 Geld<n>Lege die oberste Karte deines Nachziehstapels ab.<n>Ist es eine Aktionskarte, darfst du sie ausspielen.",
|
||||||
"extra": "Ist die aufgedeckte Karte eine Aktionskarte (auch ggf. kombinierte), darfst du sie sofort ausspielen.<n>Wenn du sie ausspielst, legst du sie in deinen Spielbereich und führst sofort die Anweisungen darauf aus.<n>Dafür benötigst du keine zusätzliche Aktion.<n>Das Ausspielen der Aktionskarte verbraucht auch keine freie oder zusätzliche Aktion, die du durch das Ausspielen anderer Karten bereits gesammelt hast.",
|
"extra": "Ist die aufgedeckte Karte eine Aktionskarte (auch ggf. kombinierte), darfst du sie sofort ausspielen.<n>Wenn du sie ausspielst, legst du sie in deinen Spielbereich und führst sofort die Anweisungen darauf aus.<n>Dafür benötigst du keine zusätzliche Aktion.<n>Das Ausspielen der Aktionskarte verbraucht auch keine freie oder zusätzliche Aktion, die du durch das Ausspielen anderer Karten bereits gesammelt hast.",
|
||||||
"name": "Vasall"
|
"name": "Vasall"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Advance": {
|
"Advance": {
|
||||||
"description": "You may trash an Action card from your hand. If you do, gain an Action card costing up to 6 Coins.",
|
"description": "You may trash an Action card from your hand. If you do, gain an Action card costing up to 6 Coins.",
|
||||||
@ -1671,44 +1670,37 @@
|
|||||||
"Courtier": {
|
"Courtier": {
|
||||||
"description": "Decke eine Handkarte auf.<n>Für jeden Kartentyp (Aktion, Angriff ...), den sie hat, wähle eine andere Option:<br>+1 Aktion<br>+1 Kauf<br>+3 Geld oder<br>nimm ein Gold vom Vorrat.",
|
"description": "Decke eine Handkarte auf.<n>Für jeden Kartentyp (Aktion, Angriff ...), den sie hat, wähle eine andere Option:<br>+1 Aktion<br>+1 Kauf<br>+3 Geld oder<br>nimm ein Gold vom Vorrat.",
|
||||||
"extra": "Decke eine Karte aus deiner Hand auf.<n>Zähle dann die Typen, denen diese Karte angehört – also AKTION, GELD, REAKTION, ANGRIFF, PUNKTE, FLUCH etc.<n>Pro Typ, dem die Karte angehört, entscheidest du dich für eine der vier angegebenen Optionen. Dabei darfst du keine der Optionen doppelt auswählen.<n>Wenn du zum Beispiel eine PATROUILLE (AKTION) aufdeckst, darfst du eine Option auswählen, deckst du einen KARAWANENWÄCHTER aus Abenteuer (AKTION – DAUER – REAKTION) auf, darfst du 3 unterschiedliche Optionen wählen.<n>Entscheidest du dich für das Gold, legst du dieses auf den Ablagestapel.<n>Kannst du keine Handkarte aufdecken, erhältst du nichts.",
|
"extra": "Decke eine Karte aus deiner Hand auf.<n>Zähle dann die Typen, denen diese Karte angehört – also AKTION, GELD, REAKTION, ANGRIFF, PUNKTE, FLUCH etc.<n>Pro Typ, dem die Karte angehört, entscheidest du dich für eine der vier angegebenen Optionen. Dabei darfst du keine der Optionen doppelt auswählen.<n>Wenn du zum Beispiel eine PATROUILLE (AKTION) aufdeckst, darfst du eine Option auswählen, deckst du einen KARAWANENWÄCHTER aus Abenteuer (AKTION – DAUER – REAKTION) auf, darfst du 3 unterschiedliche Optionen wählen.<n>Entscheidest du dich für das Gold, legst du dieses auf den Ablagestapel.<n>Kannst du keine Handkarte aufdecken, erhältst du nichts.",
|
||||||
"name": "Höflinge"
|
"name": "Höflinge"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Diplomat": {
|
"Diplomat": {
|
||||||
"description": "+2 Karten<br>Hast du nach dem Ziehen 5 oder weniger Handkarten: +2 Aktionen.<line>Wenn ein Mitspieler eine Angriffskarte ausspielt und du mindestens 5 Handkarten hast, darfst du diese Karte aus deiner Hand aufdecken.<n>Wenn du das tust: Ziehe 2 Karten und lege dann 3 Karten ab.",
|
"description": "+2 Karten<br>Hast du nach dem Ziehen 5 oder weniger Handkarten: +2 Aktionen.<line>Wenn ein Mitspieler eine Angriffskarte ausspielt und du mindestens 5 Handkarten hast, darfst du diese Karte aus deiner Hand aufdecken.<n>Wenn du das tust: Ziehe 2 Karten und lege dann 3 Karten ab.",
|
||||||
"extra": " Diese Karte ist eine Aktions- und Reaktionskarte.<n>Wird sie als Aktion in der Aktionsphase ausgespielt, nimmst du 2 Karten.<n>Hast du dann 5 oder weniger Karten auf der Hand, erhältst du außerdem + 2 Aktionen.<n>Spielt ein Mitspieler eine Angriffskarte aus und du hast zu diesem Zeitpunkt 5 oder mehr Karten auf der Hand, darfst du diese Karte – bevor der ausgespielte Angriff ausgeführt wird – aus der Hand aufdecken.<n>Wenn du das tust, nimmst du diese DIPLOMATIN wieder auf die Hand, ziehst 2 Karten und legst dann 3 Karten (auch möglich inklusive dieser DIPLOMATIN) ab.<n>Hast du dann immer noch 5 oder mehr Karten sowie eine DIPLOMATIN auf der Hand, darfst du die DIPLOMATIN noch einmal aufdecken – und dies so oft wiederholen wie du möchtest und die Bedingung der 5 oder mehr Karten auf der Hand erfüllt ist.<n>Erst dann wird der Angriff ausgeführt.<n>Hast du mehrere Reaktionskarten auf der Hand, mit denen du auf das Ausspielen einer Angriffskarte reagieren kannst, darfst du diese nacheinander in beliebiger Reihenfolge aufdecken.",
|
"extra": " Diese Karte ist eine Aktions- und Reaktionskarte.<n>Wird sie als Aktion in der Aktionsphase ausgespielt, nimmst du 2 Karten.<n>Hast du dann 5 oder weniger Karten auf der Hand, erhältst du außerdem + 2 Aktionen.<n>Spielt ein Mitspieler eine Angriffskarte aus und du hast zu diesem Zeitpunkt 5 oder mehr Karten auf der Hand, darfst du diese Karte – bevor der ausgespielte Angriff ausgeführt wird – aus der Hand aufdecken.<n>Wenn du das tust, nimmst du diese DIPLOMATIN wieder auf die Hand, ziehst 2 Karten und legst dann 3 Karten (auch möglich inklusive dieser DIPLOMATIN) ab.<n>Hast du dann immer noch 5 oder mehr Karten sowie eine DIPLOMATIN auf der Hand, darfst du die DIPLOMATIN noch einmal aufdecken – und dies so oft wiederholen wie du möchtest und die Bedingung der 5 oder mehr Karten auf der Hand erfüllt ist.<n>Erst dann wird der Angriff ausgeführt.<n>Hast du mehrere Reaktionskarten auf der Hand, mit denen du auf das Ausspielen einer Angriffskarte reagieren kannst, darfst du diese nacheinander in beliebiger Reihenfolge aufdecken.",
|
||||||
"name": "Diplomatin"
|
"name": "Diplomatin"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Lurker": {
|
"Lurker": {
|
||||||
"description": "+1 Aktion<br>Wähle eins:<n>Entsorge eine Aktionskarte vom Vorrat<n>oder<n>nimm eine Aktionskarte vom Müll.",
|
"description": "+1 Aktion<br>Wähle eins:<n>Entsorge eine Aktionskarte vom Vorrat<n>oder<n>nimm eine Aktionskarte vom Müll.",
|
||||||
"extra": "Die Karte, die du entsorgst oder vom Müllstapel nimmst, muss den Typ AKTION beinhalten, d.h. sie kann auch eine kombinierte Aktionskarte (z.B. Mühle) sein.<n>Genommene Karten werden auf den Ablagestapel gelegt - es sei denn, auf der Karte steht etwas anderes.<n>Wird eine Karte entsorgt, die einen speziellen Effekt beim Entsorgen hat, tritt dieser ein.",
|
"extra": "Die Karte, die du entsorgst oder vom Müllstapel nimmst, muss den Typ AKTION beinhalten, d.h. sie kann auch eine kombinierte Aktionskarte (z.B. Mühle) sein.<n>Genommene Karten werden auf den Ablagestapel gelegt - es sei denn, auf der Karte steht etwas anderes.<n>Wird eine Karte entsorgt, die einen speziellen Effekt beim Entsorgen hat, tritt dieser ein.",
|
||||||
"name": "Herumtreiberin"
|
"name": "Herumtreiberin"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Mill": {
|
"Mill": {
|
||||||
"description": "+1 Karte<br>+1 Aktion<br>Du darfst 2 Handkarten ablegen.<n>Wenn du das tust: +2 Geld.<line>1 <*VP*>",
|
"description": "+1 Karte<br>+1 Aktion<br>Du darfst 2 Handkarten ablegen.<n>Wenn du das tust: +2 Geld.<line>1 <*VP*>",
|
||||||
"extra": " Diese Karte ist eine kombinierte Aktions- und Punktekarte.<n>Als Punktekarte bringt sie beim Zählen der Punkte 1 .<n>Spielst du die MÜHLE als Aktionskarte aus, ziehst du 1 Karte und erhältst + 1 Aktion.<n>Du darfst 2 Karten aus deiner Hand ablegen. Wenn du das tust, erhältst du + 2 Geld. Tust du das nicht (weil du zum Beispiel nicht genügend Karten auf der Hand hast), erhältst du nichts.<n>Nur, wenn du nicht mehr als eine Karte auf der Hand hast, darfst du genau eine Karte ablegen, erhältst dafür aber kein Geld.",
|
"extra": " Diese Karte ist eine kombinierte Aktions- und Punktekarte.<n>Als Punktekarte bringt sie beim Zählen der Punkte 1 .<n>Spielst du die MÜHLE als Aktionskarte aus, ziehst du 1 Karte und erhältst + 1 Aktion.<n>Du darfst 2 Karten aus deiner Hand ablegen. Wenn du das tust, erhältst du + 2 Geld. Tust du das nicht (weil du zum Beispiel nicht genügend Karten auf der Hand hast), erhältst du nichts.<n>Nur, wenn du nicht mehr als eine Karte auf der Hand hast, darfst du genau eine Karte ablegen, erhältst dafür aber kein Geld.",
|
||||||
"name": "Mühle"
|
"name": "Mühle"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Patrol": {
|
"Patrol": {
|
||||||
"description": "+3 Karten<n>Decke die obersten 4 Karten deines Nachziehstapels auf.<n>Nimm alle aufgedeckten Punkte- und Fluchkarten auf die Hand.<n>Lege die übrigen Karten in beliebiger Reihenfolge auf deinen Nachziehstapel zurück.",
|
"description": "+3 Karten<n>Decke die obersten 4 Karten deines Nachziehstapels auf.<n>Nimm alle aufgedeckten Punkte- und Fluchkarten auf die Hand.<n>Lege die übrigen Karten in beliebiger Reihenfolge auf deinen Nachziehstapel zurück.",
|
||||||
"extra": "Ziehe zuerst 3 Karten.<n>Decke dann die obersten 4 Karten deines Nachziehstapels auf.<n>So aufgedeckte Punktekarten (auch ggf. kombinierte) und Flüche nimmst du alle auf die Hand.<n>Die restlichen Karten legst du in beliebiger Reihenfolge zurück auf den Nachziehstapel.",
|
"extra": "Ziehe zuerst 3 Karten.<n>Decke dann die obersten 4 Karten deines Nachziehstapels auf.<n>So aufgedeckte Punktekarten (auch ggf. kombinierte) und Flüche nimmst du alle auf die Hand.<n>Die restlichen Karten legst du in beliebiger Reihenfolge zurück auf den Nachziehstapel.",
|
||||||
"name": "Patrouille"
|
"name": "Patrouille"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Replace": {
|
"Replace": {
|
||||||
"description": "Entsorge eine Handkarte.<n>Nimm eine Karte vom Vorrat, die bis zu 2 Geld mehr kostet als die entsorgte Karte.<n>Ist die genommene Karte eine Aktions- oder Geldkarte, lege sie auf deinen Nachziehstapel.<n>Ist es eine Punktekarte, nimmt jeder Mitspieler einen Fluch vom Vorrat.",
|
"description": "Entsorge eine Handkarte.<n>Nimm eine Karte vom Vorrat, die bis zu 2 Geld mehr kostet als die entsorgte Karte.<n>Ist die genommene Karte eine Aktions- oder Geldkarte, lege sie auf deinen Nachziehstapel.<n>Ist es eine Punktekarte, nimmt jeder Mitspieler einen Fluch vom Vorrat.",
|
||||||
"extra": "Entsorge zuerst eine Karte aus deiner Hand.<n>Dann nimmst du dir eine Karte vom Vorrat, die maximal 2 Geld mehr kostet als die entsorgte Karte.<n>Eine Karte kostet nur dann maximal 2 Geld mehr, wenn die restlichen Kosten (z.B. Schulden aus Empires oder Trank aus Alchemie) gleich oder niedriger sind.<n>Wenn die genommene Karte eine Aktions- und/oder Geldkarte ist, legst du die Karte oben auf deinen Nachziehstapel.<n>Ansonsten legst du die Karte auf den Ablagestapel.<n>Ist die genommene Karte eine Punktekarte, nimmt sich jeder Mitspieler – beginnend bei deinem linken Mitspieler – einen Fluch.<n>Ist die genommene Karte eine Punktekarte sowie eine Aktions- oder Geldkarte (z.B. MÜHLE), legst du die Karte oben auf deinen Nachziehstapel und jeder Mitspieler muss sich einen Fluch nehmen.",
|
"extra": "Entsorge zuerst eine Karte aus deiner Hand.<n>Dann nimmst du dir eine Karte vom Vorrat, die maximal 2 Geld mehr kostet als die entsorgte Karte.<n>Eine Karte kostet nur dann maximal 2 Geld mehr, wenn die restlichen Kosten (z.B. Schulden aus Empires oder Trank aus Alchemie) gleich oder niedriger sind.<n>Wenn die genommene Karte eine Aktions- und/oder Geldkarte ist, legst du die Karte oben auf deinen Nachziehstapel.<n>Ansonsten legst du die Karte auf den Ablagestapel.<n>Ist die genommene Karte eine Punktekarte, nimmt sich jeder Mitspieler – beginnend bei deinem linken Mitspieler – einen Fluch.<n>Ist die genommene Karte eine Punktekarte sowie eine Aktions- oder Geldkarte (z.B. MÜHLE), legst du die Karte oben auf deinen Nachziehstapel und jeder Mitspieler muss sich einen Fluch nehmen.",
|
||||||
"name": "Austausch"
|
"name": "Austausch"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Secret Passage": {
|
"Secret Passage": {
|
||||||
"description": "+2 Karten<br>+1 Aktion<n>Lege eine Handkarte an eine beliebige Stelle in deinen Nachziehstapel.",
|
"description": "+2 Karten<br>+1 Aktion<n>Lege eine Handkarte an eine beliebige Stelle in deinen Nachziehstapel.",
|
||||||
"extra": "Du ziehst 2 Karten und erhältst +1 Aktion.<n>Dann nimmst du eine beliebige Karte aus deiner Hand (auch ggf. eine, die du gerade gezogen hast) und legst sie an eine beliebige Stelle in deinen Nachziehstapel.<n>Du darfst sie oben drauf, unten drunter oder irgendwo in die Mitte legen.<n>Du darfst dabei die Karten deines Nachziehstapels zählen, aber nicht ansehen.<n>Befinden sich keine Karten in deinem Nachziehstapel, wird die zurückgelegte Karte zur einzigen Karte in deinem Nachziehstapel.",
|
"extra": "Du ziehst 2 Karten und erhältst +1 Aktion.<n>Dann nimmst du eine beliebige Karte aus deiner Hand (auch ggf. eine, die du gerade gezogen hast) und legst sie an eine beliebige Stelle in deinen Nachziehstapel.<n>Du darfst sie oben drauf, unten drunter oder irgendwo in die Mitte legen.<n>Du darfst dabei die Karten deines Nachziehstapels zählen, aber nicht ansehen.<n>Befinden sich keine Karten in deinem Nachziehstapel, wird die zurückgelegte Karte zur einzigen Karte in deinem Nachziehstapel.",
|
||||||
"name": "Geheimgang"
|
"name": "Geheimgang"
|
||||||
|
|
||||||
},
|
},
|
||||||
"Bad Omens": {
|
"Bad Omens": {
|
||||||
"description": "Put your deck into your discard pile. Look through it and put 2 Coppers from it onto your deck (or reveal you can't.)",
|
"description": "Put your deck into your discard pile. Look through it and put 2 Coppers from it onto your deck (or reveal you can't.)",
|
||||||
|
|||||||
@ -26,6 +26,7 @@
|
|||||||
"Shelter": "Unterschlupf",
|
"Shelter": "Unterschlupf",
|
||||||
"Shelters": "Unterschlüpfe",
|
"Shelters": "Unterschlüpfe",
|
||||||
"Spirit": "Spirit",
|
"Spirit": "Spirit",
|
||||||
|
"Start Deck": "Start Deck",
|
||||||
"State": "State",
|
"State": "State",
|
||||||
"Trash": "Müll",
|
"Trash": "Müll",
|
||||||
"Traveller": "Reisender",
|
"Traveller": "Reisender",
|
||||||
|
|||||||
@ -404,6 +404,11 @@
|
|||||||
"extra": "40 cards per game.",
|
"extra": "40 cards per game.",
|
||||||
"name": "Silver"
|
"name": "Silver"
|
||||||
},
|
},
|
||||||
|
"Start Deck": {
|
||||||
|
"description": "Player's starting deck of cards:<n>7 Copper cards<n>3 Estate cards",
|
||||||
|
"extra": "",
|
||||||
|
"name": "Player Start Deck"
|
||||||
|
},
|
||||||
"Trash": {
|
"Trash": {
|
||||||
"description": "Pile of trash.",
|
"description": "Pile of trash.",
|
||||||
"extra": "",
|
"extra": "",
|
||||||
|
|||||||
@ -26,6 +26,7 @@
|
|||||||
"Shelter": "Shelter",
|
"Shelter": "Shelter",
|
||||||
"Shelters": "Shelters",
|
"Shelters": "Shelters",
|
||||||
"Spirit": "Spirit",
|
"Spirit": "Spirit",
|
||||||
|
"Start Deck": "Start Deck",
|
||||||
"State": "State",
|
"State": "State",
|
||||||
"Trash": "Trash",
|
"Trash": "Trash",
|
||||||
"Traveller": "Traveller",
|
"Traveller": "Traveller",
|
||||||
|
|||||||
@ -420,6 +420,12 @@
|
|||||||
"extra": "40 cartes par partie.",
|
"extra": "40 cartes par partie.",
|
||||||
"name": "Argent"
|
"name": "Argent"
|
||||||
},
|
},
|
||||||
|
"Start Deck": {
|
||||||
|
"description": "Player's starting deck of cards:<n>7 Copper cards<n>3 Estate cards",
|
||||||
|
"extra": "",
|
||||||
|
"name": "Player Start Deck",
|
||||||
|
"untranslated": "description, extra, name"
|
||||||
|
},
|
||||||
"Trash": {
|
"Trash": {
|
||||||
"description": "Pile du rebut.",
|
"description": "Pile du rebut.",
|
||||||
"extra": "",
|
"extra": "",
|
||||||
@ -2736,4 +2742,3 @@
|
|||||||
"untranslated": "description, extra, name"
|
"untranslated": "description, extra, name"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -26,6 +26,7 @@
|
|||||||
"Shelter": "Refuge",
|
"Shelter": "Refuge",
|
||||||
"Shelters": "Refuges",
|
"Shelters": "Refuges",
|
||||||
"Spirit": "Spirit",
|
"Spirit": "Spirit",
|
||||||
|
"Start Deck": "Start Deck",
|
||||||
"State": "State",
|
"State": "State",
|
||||||
"Trash": "Rebut",
|
"Trash": "Rebut",
|
||||||
"Traveller": "Itinérant",
|
"Traveller": "Itinérant",
|
||||||
|
|||||||
@ -465,6 +465,12 @@
|
|||||||
"extra": " 40 carte per partita.",
|
"extra": " 40 carte per partita.",
|
||||||
"name": "Argento"
|
"name": "Argento"
|
||||||
},
|
},
|
||||||
|
"Start Deck": {
|
||||||
|
"description": "Player's starting deck of cards:<n>7 Copper cards<n>3 Estate cards",
|
||||||
|
"extra": "",
|
||||||
|
"name": "Player Start Deck",
|
||||||
|
"untranslated": "description, extra, name"
|
||||||
|
},
|
||||||
"Trash": {
|
"Trash": {
|
||||||
"description": "Pila delle carte eliminate.",
|
"description": "Pila delle carte eliminate.",
|
||||||
"extra": "",
|
"extra": "",
|
||||||
|
|||||||
@ -26,6 +26,7 @@
|
|||||||
"Shelter": "Shelter",
|
"Shelter": "Shelter",
|
||||||
"Shelters": "Shelters",
|
"Shelters": "Shelters",
|
||||||
"Spirit": "Spirit",
|
"Spirit": "Spirit",
|
||||||
|
"Start Deck": "Start Deck",
|
||||||
"State": "State",
|
"State": "State",
|
||||||
"Trash": "Trash",
|
"Trash": "Trash",
|
||||||
"Traveller": "Traveller",
|
"Traveller": "Traveller",
|
||||||
|
|||||||
@ -410,6 +410,12 @@
|
|||||||
"extra": " 40 kaarten per spel.",
|
"extra": " 40 kaarten per spel.",
|
||||||
"name": "Zilver"
|
"name": "Zilver"
|
||||||
},
|
},
|
||||||
|
"Start Deck": {
|
||||||
|
"description": "Player's starting deck of cards:<n>7 Copper cards<n>3 Estate cards",
|
||||||
|
"extra": "",
|
||||||
|
"name": "Player Start Deck",
|
||||||
|
"untranslated": "description, extra, name"
|
||||||
|
},
|
||||||
"Trash": {
|
"Trash": {
|
||||||
"description": "stapel van vernietigde kaarten.",
|
"description": "stapel van vernietigde kaarten.",
|
||||||
"extra": "",
|
"extra": "",
|
||||||
|
|||||||
@ -26,6 +26,7 @@
|
|||||||
"Shelter": "Onderdak",
|
"Shelter": "Onderdak",
|
||||||
"Shelters": "Onderdakkaarten",
|
"Shelters": "Onderdakkaarten",
|
||||||
"Spirit": "Spirit",
|
"Spirit": "Spirit",
|
||||||
|
"Start Deck": "Start Deck",
|
||||||
"State": "State",
|
"State": "State",
|
||||||
"Trash": "Vernietigde Kaarten",
|
"Trash": "Vernietigde Kaarten",
|
||||||
"Traveller": "Traveller",
|
"Traveller": "Traveller",
|
||||||
|
|||||||
@ -48,6 +48,7 @@
|
|||||||
"latest"
|
"latest"
|
||||||
],
|
],
|
||||||
"image": "",
|
"image": "",
|
||||||
|
"no_randomizer": true,
|
||||||
"set_name": "*base*",
|
"set_name": "*base*",
|
||||||
"set_text": "",
|
"set_text": "",
|
||||||
"text_icon": "*"
|
"text_icon": "*"
|
||||||
|
|||||||
@ -391,6 +391,14 @@
|
|||||||
"defaultCardCount": 0,
|
"defaultCardCount": 0,
|
||||||
"tabCostHeightOffset": -1,
|
"tabCostHeightOffset": -1,
|
||||||
"tabTextHeightOffset": 0
|
"tabTextHeightOffset": 0
|
||||||
|
},{
|
||||||
|
"card_type": [
|
||||||
|
"Start Deck"
|
||||||
|
],
|
||||||
|
"card_type_image": "action.png",
|
||||||
|
"defaultCardCount": 0,
|
||||||
|
"tabCostHeightOffset": -1,
|
||||||
|
"tabTextHeightOffset": 0
|
||||||
},{
|
},{
|
||||||
"card_type": [
|
"card_type": [
|
||||||
"State"
|
"State"
|
||||||
|
|||||||
@ -485,6 +485,12 @@
|
|||||||
"name": "Silver",
|
"name": "Silver",
|
||||||
"untranslated": "description, extra, name"
|
"untranslated": "description, extra, name"
|
||||||
},
|
},
|
||||||
|
"Start Deck": {
|
||||||
|
"description": "Player's starting deck of cards:<n>7 Copper cards<n>3 Estate cards",
|
||||||
|
"extra": "",
|
||||||
|
"name": "Player Start Deck",
|
||||||
|
"untranslated": "description, extra, name"
|
||||||
|
},
|
||||||
"Trash": {
|
"Trash": {
|
||||||
"description": "Pile of trash.",
|
"description": "Pile of trash.",
|
||||||
"extra": "",
|
"extra": "",
|
||||||
|
|||||||
@ -26,6 +26,7 @@
|
|||||||
"Shelter": "Shelter",
|
"Shelter": "Shelter",
|
||||||
"Shelters": "Shelters",
|
"Shelters": "Shelters",
|
||||||
"Spirit": "Spirit",
|
"Spirit": "Spirit",
|
||||||
|
"Start Deck": "Start Deck",
|
||||||
"State": "State",
|
"State": "State",
|
||||||
"Trash": "Trash",
|
"Trash": "Trash",
|
||||||
"Traveller": "Traveller",
|
"Traveller": "Traveller",
|
||||||
|
|||||||
@ -50,19 +50,19 @@ class Card(object):
|
|||||||
self.image = image
|
self.image = image
|
||||||
self.text_icon = text_icon
|
self.text_icon = text_icon
|
||||||
self.cardset_tag = cardset_tag
|
self.cardset_tag = cardset_tag
|
||||||
if count < 0:
|
self.setCardCount(count)
|
||||||
self.count = [self.getType().getTypeDefaultCardCount()]
|
|
||||||
elif count == 0:
|
|
||||||
self.count = []
|
|
||||||
else:
|
|
||||||
self.count = [int(count)]
|
|
||||||
self.randomizer = randomizer
|
self.randomizer = randomizer
|
||||||
|
|
||||||
def getCardCount(self):
|
def getCardCount(self):
|
||||||
return sum(i for i in self.count)
|
return sum(i for i in self.count)
|
||||||
|
|
||||||
def setCardCount(self, value):
|
def setCardCount(self, value):
|
||||||
self.count = value
|
if value < 0:
|
||||||
|
self.count = [self.getType().getTypeDefaultCardCount()]
|
||||||
|
elif value == 0:
|
||||||
|
self.count = []
|
||||||
|
else:
|
||||||
|
self.count = [int(value)]
|
||||||
|
|
||||||
def addCardCount(self, value):
|
def addCardCount(self, value):
|
||||||
self.count.extend(value)
|
self.count.extend(value)
|
||||||
|
|||||||
109
domdiv/main.py
109
domdiv/main.py
@ -293,6 +293,21 @@ def parse_opts(cmdline_args=None):
|
|||||||
action="store_true",
|
action="store_true",
|
||||||
help="Group cards that generally are used together "
|
help="Group cards that generally are used together "
|
||||||
"(e.g., Shelters, Tournament and Prizes, Urchin/Mercenary, etc.).")
|
"(e.g., Shelters, Tournament and Prizes, Urchin/Mercenary, etc.).")
|
||||||
|
group_select.add_argument(
|
||||||
|
"--no-trash",
|
||||||
|
action="store_true",
|
||||||
|
dest="no_trash",
|
||||||
|
help="Exclude Trash from cards.")
|
||||||
|
group_select.add_argument(
|
||||||
|
"--curse10",
|
||||||
|
action="store_true",
|
||||||
|
dest="curse10",
|
||||||
|
help="Package Curse cards into groups of ten cards.")
|
||||||
|
group_select.add_argument(
|
||||||
|
"--start-decks",
|
||||||
|
action="store_true",
|
||||||
|
dest="start_decks",
|
||||||
|
help="Include four start decks with the Base cards.")
|
||||||
group_select.add_argument(
|
group_select.add_argument(
|
||||||
"--include-blanks",
|
"--include-blanks",
|
||||||
action="store_true",
|
action="store_true",
|
||||||
@ -541,6 +556,32 @@ def get_resource_stream(path):
|
|||||||
return codecs.EncodedFile(pkg_resources.resource_stream('domdiv', path), "utf-8")
|
return codecs.EncodedFile(pkg_resources.resource_stream('domdiv', path), "utf-8")
|
||||||
|
|
||||||
|
|
||||||
|
def find_index_of_object(lst=[], attributes={}):
|
||||||
|
# Returns the index of the first object in lst that matches the given attributes. Otherwise returns None.
|
||||||
|
# attributes is a dict of key: value pairs. Object attributes that are lists are checked to have value in them.
|
||||||
|
for i, d in enumerate(lst):
|
||||||
|
# Set match to false just in case there are no attributes.
|
||||||
|
match = False
|
||||||
|
for key, value in attributes.iteritems():
|
||||||
|
# if anything does not match, then break out and start the next one.
|
||||||
|
match = hasattr(d, key)
|
||||||
|
if match:
|
||||||
|
test = getattr(d, key, None)
|
||||||
|
if type(test) is list:
|
||||||
|
match = value in test
|
||||||
|
else:
|
||||||
|
match = value == test
|
||||||
|
if not match:
|
||||||
|
break
|
||||||
|
|
||||||
|
if match:
|
||||||
|
# If all the attributes are found, then we have a match
|
||||||
|
return i
|
||||||
|
|
||||||
|
# nothing matched
|
||||||
|
return None
|
||||||
|
|
||||||
|
|
||||||
def read_card_data(options):
|
def read_card_data(options):
|
||||||
|
|
||||||
# Read in the card types
|
# Read in the card types
|
||||||
@ -576,6 +617,72 @@ def read_card_data(options):
|
|||||||
Card.sets[s]['no_randomizer'] = Card.sets[s].get('no_randomizer', False)
|
Card.sets[s]['no_randomizer'] = Card.sets[s].get('no_randomizer', False)
|
||||||
Card.sets[s]['fan'] = Card.sets[s].get('fan', False)
|
Card.sets[s]['fan'] = Card.sets[s].get('fan', False)
|
||||||
|
|
||||||
|
# Remove the Trash card. Do early before propagating to various sets.
|
||||||
|
if options.no_trash:
|
||||||
|
i = find_index_of_object(cards, {'card_tag': 'Trash'})
|
||||||
|
if i is not None:
|
||||||
|
del cards[i]
|
||||||
|
|
||||||
|
# Repackage Curse cards into 10 per divider. Do early before propagating to various sets.
|
||||||
|
if options.curse10:
|
||||||
|
i = find_index_of_object(cards, {'card_tag': 'Curse'})
|
||||||
|
if i is not None:
|
||||||
|
new_cards = []
|
||||||
|
cards_remaining = cards[i].getCardCount()
|
||||||
|
while cards_remaining > 10:
|
||||||
|
# make a new copy of the card and set count to 10
|
||||||
|
new_card = copy.deepcopy(cards[i])
|
||||||
|
new_card.setCardCount(10)
|
||||||
|
new_cards.append(new_card)
|
||||||
|
cards_remaining -= 10
|
||||||
|
|
||||||
|
# Adjust original Curse card to the remaining cards (should be 10)
|
||||||
|
cards[i].setCardCount(cards_remaining)
|
||||||
|
# Add the new dividers
|
||||||
|
cards.extend(new_cards)
|
||||||
|
|
||||||
|
# Create Start Deck dividers. 4 sets. Adjust totals for other cards, too.
|
||||||
|
# Do early before propagating to various sets.
|
||||||
|
# The card database contains one prototype divider that needs to be either duplicated or deleted.
|
||||||
|
if options.start_decks:
|
||||||
|
# Find the index to the individual cards that need changed in the cards list
|
||||||
|
StartDeck_index = find_index_of_object(cards, {'card_tag': 'Start Deck'})
|
||||||
|
Copper_index = find_index_of_object(cards, {'card_tag': 'Copper'})
|
||||||
|
Estate_index = find_index_of_object(cards, {'card_tag': 'Estate'})
|
||||||
|
if Copper_index is None or Estate_index is None or StartDeck_index is None:
|
||||||
|
# Something is wrong, can't find one or more of the cards that need to change
|
||||||
|
print "Error - cannot create Start Decks"
|
||||||
|
|
||||||
|
# Remove the Start Deck prototype if we can
|
||||||
|
if StartDeck_index is not None:
|
||||||
|
del cards[StartDeck_index]
|
||||||
|
else:
|
||||||
|
# Start Deck Constants
|
||||||
|
STARTDECK_COPPERS = 7
|
||||||
|
STARTDECK_ESTATES = 3
|
||||||
|
STARTDECK_NUMBER = 4
|
||||||
|
|
||||||
|
# Add correct card counts to Start Deck prototype. This will be used to make copies.
|
||||||
|
cards[StartDeck_index].setCardCount(STARTDECK_COPPERS)
|
||||||
|
cards[StartDeck_index].addCardCount([int(STARTDECK_ESTATES)])
|
||||||
|
|
||||||
|
# Make new Start Deck Dividers and adjust the corresponding card counts
|
||||||
|
for x in range(0, STARTDECK_NUMBER):
|
||||||
|
# Add extra copies of the Start Deck prototype.
|
||||||
|
# But don't need to add the first one again, since the prototype is already there.
|
||||||
|
if x > 0:
|
||||||
|
cards.append(copy.deepcopy(cards[StartDeck_index]))
|
||||||
|
# Note: By appending, it should not change any of the index values being used
|
||||||
|
|
||||||
|
# Remove Copper and Estate card counts from their dividers
|
||||||
|
cards[Copper_index].setCardCount(cards[Copper_index].getCardCount() - STARTDECK_COPPERS)
|
||||||
|
cards[Estate_index].setCardCount(cards[Estate_index].getCardCount() - STARTDECK_ESTATES)
|
||||||
|
else:
|
||||||
|
# Remove Start Deck prototype. It is not needed.
|
||||||
|
StartDeck_index = find_index_of_object(cards, {'card_tag': 'Start Deck'})
|
||||||
|
if StartDeck_index is not None:
|
||||||
|
del cards[StartDeck_index]
|
||||||
|
|
||||||
# Set cardset_tag and expand cards that are used in multiple sets
|
# Set cardset_tag and expand cards that are used in multiple sets
|
||||||
new_cards = []
|
new_cards = []
|
||||||
for card in cards:
|
for card in cards:
|
||||||
@ -613,7 +720,7 @@ class CardSorter(object):
|
|||||||
|
|
||||||
self.baseOrder = ['Copper', 'Silver', 'Gold', 'Platinum', 'Potion',
|
self.baseOrder = ['Copper', 'Silver', 'Gold', 'Platinum', 'Potion',
|
||||||
'Curse', 'Estate', 'Duchy', 'Province', 'Colony',
|
'Curse', 'Estate', 'Duchy', 'Province', 'Colony',
|
||||||
'Trash']
|
'Trash', 'Start Deck']
|
||||||
self.baseCards = []
|
self.baseCards = []
|
||||||
for tag in self.baseOrder:
|
for tag in self.baseOrder:
|
||||||
if tag in baseCards:
|
if tag in baseCards:
|
||||||
|
|||||||
@ -22,10 +22,12 @@ def rmtestcardb(request):
|
|||||||
|
|
||||||
|
|
||||||
def test_cardread():
|
def test_cardread():
|
||||||
|
cardsExpected = 524
|
||||||
|
|
||||||
options = main.parse_opts([])
|
options = main.parse_opts([])
|
||||||
options.data_path = '.'
|
options.data_path = '.'
|
||||||
cards = main.read_card_data(options)
|
cards = main.read_card_data(options)
|
||||||
assert len(cards) == 524
|
assert len(cards) == cardsExpected
|
||||||
valid_cardsets = {
|
valid_cardsets = {
|
||||||
u'base',
|
u'base',
|
||||||
u'dominion1stEdition',
|
u'dominion1stEdition',
|
||||||
@ -57,6 +59,13 @@ def test_cardread():
|
|||||||
assert isinstance(c, domdiv_cards.Card)
|
assert isinstance(c, domdiv_cards.Card)
|
||||||
assert c.cardset_tag in valid_cardsets
|
assert c.cardset_tag in valid_cardsets
|
||||||
|
|
||||||
|
# Option modified card count
|
||||||
|
options = main.parse_opts(['--no-trash', '--curse10', '--start-decks'])
|
||||||
|
options.data_path = '.'
|
||||||
|
cards = main.read_card_data(options)
|
||||||
|
# Total delta cards is +21 from Trash: -1 * 3 sets = -3; Curse: +2 * 4 sets =+8; Start Decks: +4 * 4 sets = +16
|
||||||
|
assert len(cards) == cardsExpected + 21
|
||||||
|
|
||||||
|
|
||||||
def test_languages():
|
def test_languages():
|
||||||
languages = main.get_languages('card_db')
|
languages = main.get_languages('card_db')
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user