From 21c4134e9f476f609fa3da6b6ab4169dca096d96 Mon Sep 17 00:00:00 2001 From: Peter Date: Tue, 4 Oct 2016 23:46:42 -0700 Subject: [PATCH] German promo cards (#77) * Add German texts for promo cards. * fix logic around missing set images; add translations of german promo card names to mapping --- card_db/de/cards.json | 78 +++++++++++++++++++++++++++++++++++++++++ card_db/de/mapping.json | 9 ++++- domdiv/cards.py | 12 +++---- 3 files changed, 90 insertions(+), 9 deletions(-) diff --git a/card_db/de/cards.json b/card_db/de/cards.json index ea0894b..9b5c317 100644 --- a/card_db/de/cards.json +++ b/card_db/de/cards.json @@ -3026,5 +3026,83 @@ "Action", "Duration" ] +}, +{ +"name": "Schwarzmarkt", +"cost": "3", +"description": "+2 Coins\nDecke die obersten 3 Karten vom Schwarzmarkt-Stapel auf. Du darfst sofort eine der aufgedeckten Karten kaufen. Lege die nicht gekauften Karten in beliebiger Reihenfolge unter den Schwarzmarkt-Stapel zurück.\n(Vor dem Spiel wird ein Schwarzmarkt-Stapel gebildet. Der Schwarzmarkt-Stapel enthält je eine Karte aller Königreichkarten, die nicht im Vorrat sind.", +"extra": "", +"cardset": "promo", +"potcost": 0, +"types": [ +"Action" +] +}, +{ + +"name": "Gesandter", +"cost": "4", +"description": "Decke die obersten 5 Karten von deinem Nachziehstapel auf. Der Spieler links von dir wählt eine der aufgedeckten Karten aus. Lege die gewählte Karte ab. Nimm die übrigen Karten auf die Hand.", +"extra": "", +"cardset": "promo", +"potcost": 0, +"types": [ +"Action" +] +}, +{ +"name": "Geldversteck", +"cost": "5", +"description": "2 Coins\nNachdem du deinen Ablagestapel gemischt hast, darfst du diese Karte an eine beliebige Stelle in deinem Nachziehstapel einsortieren.", +"extra": "", +"cardset": "promo", +"potcost": 0, +"types": [ +"Treasure" +] +}, +{ +"name": "Carcassonne", +"cost": "4", +"description": "+1 Karte\n+2 Aktionen\nWenn du zu Beginn deiner Aufräumphase außer dieser Karte nur noch eine weitere Aktionskarte im Spiel hast, darfst du die Karte Carcassonne auf deinen Nachziehstapel legen.", +"extra": "", +"cardset": "promo", +"potcost": 0, +"types": [ +"Action" +] +}, +{ +"name": "Gouverneur", +"cost": "5", +"description": "+1 Aktion\nWähle eins (deine Mitspieler erhalten, was in Klammern angegeben ist): +3 Karten (+1 Karte)\noder\nNimm dir ein Gold (Silber)\noder\nJeder Spieler darf eine Karte aus seiner Hand entsorgen und nimmt sich dafür eine Karte, die genau 2 Coins (1 Coin) mehr kostet.", +"extra": " ", +"cardset": "promo", +"potcost": 0, +"types": [ +"Action" +] +}, +{ +"name": "Prinz", +"cost": "8", +"description": "Du darfst diese Karte zur Seite legen. Wenn du das tust: Lege eine Aktionskarte aus deiner Hand zur Seite, die bis zu 4 Coins kostet.\nZu Beginn deines Zuges: Spiele die zur Seite gelegte Aktionskarte. Sobald du sie ablegen musst, legst du sie stattdessen wieder zur Seite. Solltest du sie nicht ablegen müssen, legst du sie nicht wieder zur Seite. Die Wirkung der Karte Prinz wird sofort aufgehoben. Sie bleibt bis zum Spielende beiseitegelegt und kommt nicht mehr zum Einsatz.", +"extra": "", +"cardset": "promo", +"potcost": 0, +"types": [ +"Action" +] +}, +{ +"name": "Einladung", +"cost": "5", +"description": "Nimm eine Aktionskarte, die bis zu 4 Coins kostet und lege sie zur Seite. Spiele sie zu Beginn deines nächsten Zuges.", +"extra": "", +"cardset": "promo", +"potcost": 0, +"types": [ +"Event" +] } ] diff --git a/card_db/de/mapping.json b/card_db/de/mapping.json index 5c60974..4a13009 100644 --- a/card_db/de/mapping.json +++ b/card_db/de/mapping.json @@ -8,5 +8,12 @@ "Reiche Ernte": "cornucopia", "Abenteuer": "adventures", "Dark Ages": "dark ages", - "Die Gilden": "guilds" + "Die Gilden": "guilds", + "Prinz": "prince", + "Schwarzmarkt": "black market", + "Einladung": "summon", + "Gouverneur": "Governor", + "Gesandter": "Envoy", + "Geldversteck": "Stash", + "Carcassonne": "Walled Village" } diff --git a/domdiv/cards.py b/domdiv/cards.py index d23fb57..8839911 100644 --- a/domdiv/cards.py +++ b/domdiv/cards.py @@ -153,18 +153,14 @@ class Card(object): def setImage(self): setImage = Card.getSetImage(self.cardset, self.name) - if setImage is None and self.cardset not in ['base', 'extra'] and not self.isExpansion(): - print 'warning, no set image for set "%s" card "%s"' % (self.cardset, self.name) - setImages[self.cardset] = 0 - promoImages[self.name.lower()] = 0 + if setImage is None and self.cardset != 'base': + print 'warning, no set image for set "{}" card "{}"'.format(self.cardset, self.name) return setImage def setTextIcon(self): setTextIcon = Card.getSetText(self.cardset, self.name) - if setTextIcon is None and self.cardset not in ['base', 'extra'] and not self.isExpansion(): - print 'warning, no set text for set "%s" card "%s"' % (self.cardset, self.name) - setTextIcons[self.cardset] = 0 - promoTextIcons[self.name.lower()] = 0 + if setTextIcon is None and self.cardset != 'base': + print 'warning, no set text for set "{}" card "{}"'.format(self.cardset, self.name) return setTextIcon def isBlank(self):