diff --git a/cockatrice/cockatrice.qrc b/cockatrice/cockatrice.qrc
index abeeeeab..563ee21d 100644
--- a/cockatrice/cockatrice.qrc
+++ b/cockatrice/cockatrice.qrc
@@ -38,6 +38,10 @@
resources/icon_player.svgresources/icon_spectator.svg
+ resources/genders/male.svg
+ resources/genders/female.svg
+ resources/genders/unknown.svg
+
translations/cockatrice_de.qmtranslations/cockatrice_en.qmtranslations/cockatrice_es.qm
@@ -103,7 +107,7 @@
resources/userlevels/normal.svgresources/userlevels/registered.svg
- resources/userlevels/judge.svg
+ resources/userlevels/moderator.svgresources/userlevels/admin.svgresources/news/exclamation_mark.svg
diff --git a/cockatrice/resources/genders/female.svg b/cockatrice/resources/genders/female.svg
new file mode 100644
index 00000000..b0fbb130
--- /dev/null
+++ b/cockatrice/resources/genders/female.svg
@@ -0,0 +1,33 @@
+
+
+
diff --git a/cockatrice/resources/genders/male.svg b/cockatrice/resources/genders/male.svg
new file mode 100644
index 00000000..8c58a40f
--- /dev/null
+++ b/cockatrice/resources/genders/male.svg
@@ -0,0 +1,12 @@
+
+
+
\ No newline at end of file
diff --git a/cockatrice/resources/genders/unknown.svg b/cockatrice/resources/genders/unknown.svg
new file mode 100644
index 00000000..99f681f9
--- /dev/null
+++ b/cockatrice/resources/genders/unknown.svg
@@ -0,0 +1,10 @@
+
+
+
diff --git a/cockatrice/resources/userlevels/judge.svg b/cockatrice/resources/userlevels/moderator.svg
similarity index 100%
rename from cockatrice/resources/userlevels/judge.svg
rename to cockatrice/resources/userlevels/moderator.svg
diff --git a/cockatrice/src/cardzone.cpp b/cockatrice/src/cardzone.cpp
index 3c3606ee..ceaf0852 100644
--- a/cockatrice/src/cardzone.cpp
+++ b/cockatrice/src/cardzone.cpp
@@ -46,35 +46,36 @@ void CardZone::clearContents()
QString CardZone::getTranslatedName(bool hisOwn, GrammaticalCase gc) const
{
QString ownerName = player->getName();
+ bool female = player->getUserInfo()->getGender() == ServerInfo_User::Female;
if (name == "hand")
switch (gc) {
- case CaseNominative: return hisOwn ? tr("his hand", "nominative") : tr("%1's hand", "nominative").arg(ownerName);
- case CaseGenitive: return hisOwn ? tr("of his hand", "genitive") : tr("of %1's hand", "genitive").arg(ownerName);
- case CaseAccusative: return hisOwn ? tr("his hand", "accusative") : tr("%1's hand", "accusative").arg(ownerName);
+ case CaseNominative: return female ? (hisOwn ? tr("her hand", "nominative, female owner") : tr("%1's hand", "nominative, female owner").arg(ownerName)) : (hisOwn ? tr("his hand", "nominative, male owner") : tr("%1's hand", "nominative, male owner").arg(ownerName));
+ case CaseGenitive: return female ? (hisOwn ? tr("of her hand", "genitive, female owner") : tr("of %1's hand", "genitive, female owner").arg(ownerName)) : (hisOwn ? tr("of his hand", "genitive, male owner") : tr("of %1's hand", "genitive, male owner").arg(ownerName));
+ case CaseAccusative: return female ? (hisOwn ? tr("her hand", "accusative, female owner") : tr("%1's hand", "accusative, female owner").arg(ownerName)) : (hisOwn ? tr("his hand", "accusative, male owner") : tr("%1's hand", "accusative, male owner").arg(ownerName));
}
else if (name == "deck")
switch (gc) {
- case CaseNominative: return hisOwn ? tr("his library", "nominative") : tr("%1's library", "nominative").arg(ownerName);
- case CaseGenitive: return hisOwn ? tr("of his library", "genitive") : tr("of %1's library", "genitive").arg(ownerName);
- case CaseAccusative: return hisOwn ? tr("his library", "accusative") : tr("%1's library", "accusative").arg(ownerName);
+ case CaseNominative: return female ? (hisOwn ? tr("her library", "nominative, female owner") : tr("%1's library", "nominative, female owner").arg(ownerName)) : (hisOwn ? tr("his library", "nominative, male owner") : tr("%1's library", "nominative, male owner").arg(ownerName));
+ case CaseGenitive: return female ? (hisOwn ? tr("of her library", "genitive, female owner") : tr("of %1's library", "genitive, female owner").arg(ownerName)) : (hisOwn ? tr("of his library", "genitive, male owner") : tr("of %1's library", "genitive, male owner").arg(ownerName));
+ case CaseAccusative: return female ? (hisOwn ? tr("her library", "accusative, female owner") : tr("%1's library", "accusative, female owner").arg(ownerName)) : (hisOwn ? tr("his library", "accusative, male owner") : tr("%1's library", "accusative, male owner").arg(ownerName));
}
else if (name == "grave")
switch (gc) {
- case CaseNominative: return hisOwn ? tr("his graveyard", "nominative") : tr("%1's graveyard", "nominative").arg(ownerName);
- case CaseGenitive: return hisOwn ? tr("of his graveyard", "genitive") : tr("of %1's graveyard", "genitive").arg(ownerName);
- case CaseAccusative: return hisOwn ? tr("his graveyard", "accusative") : tr("%1's graveyard", "accusative").arg(ownerName);
+ case CaseNominative: return female ? (hisOwn ? tr("her graveyard", "nominative, female owner") : tr("%1's graveyard", "nominative, female owner").arg(ownerName)) : (hisOwn ? tr("his graveyard", "nominative, male owner") : tr("%1's graveyard", "nominative, male owner").arg(ownerName));
+ case CaseGenitive: return female ? (hisOwn ? tr("of her graveyard", "genitive, female owner") : tr("of %1's graveyard", "genitive, female owner").arg(ownerName)) : (hisOwn ? tr("of his graveyard", "genitive, male owner") : tr("of %1's graveyard", "genitive, male owner").arg(ownerName));
+ case CaseAccusative: return female ? (hisOwn ? tr("her graveyard", "accusative, female owner") : tr("%1's graveyard", "accusative, female owner").arg(ownerName)) : (hisOwn ? tr("his graveyard", "accusative, male owner") : tr("%1's graveyard", "accusative, male owner").arg(ownerName));
}
else if (name == "rfg")
switch (gc) {
- case CaseNominative: return hisOwn ? tr("his exile", "nominative") : tr("%1's exile", "nominative").arg(ownerName);
- case CaseGenitive: return hisOwn ? tr("of his exile", "genitive") : tr("of %1's exile", "genitive").arg(ownerName);
- case CaseAccusative: return hisOwn ? tr("his exile", "accusative") : tr("%1's exile", "accusative").arg(ownerName);
+ case CaseNominative: return female ? (hisOwn ? tr("her exile", "nominative, female owner") : tr("%1's exile", "nominative, female owner").arg(ownerName)) : (hisOwn ? tr("his exile", "nominative, male owner") : tr("%1's exile", "nominative, male owner").arg(ownerName));
+ case CaseGenitive: return female ? (hisOwn ? tr("of her exile", "genitive, female owner") : tr("of %1's exile", "genitive, female owner").arg(ownerName)) : (hisOwn ? tr("of his exile", "genitive, male owner") : tr("of %1's exile", "genitive, male owner").arg(ownerName));
+ case CaseAccusative: return female ? (hisOwn ? tr("her exile", "accusative, female owner") : tr("%1's exile", "accusative, female owner").arg(ownerName)) : (hisOwn ? tr("his exile", "accusative, male owner") : tr("%1's exile", "accusative, male owner").arg(ownerName));
}
else if (name == "sb")
switch (gc) {
- case CaseNominative: return hisOwn ? tr("his sideboard", "nominative") : tr("%1's sideboard", "nominative").arg(ownerName);
- case CaseGenitive: return hisOwn ? tr("of his sideboard", "genitive") : tr("of %1's sideboard", "genitive").arg(ownerName);
- case CaseAccusative: return hisOwn ? tr("his sideboard", "accusative") : tr("%1's sideboard", "accusative").arg(ownerName);
+ case CaseNominative: return female ? (hisOwn ? tr("her sideboard", "nominative, female owner") : tr("%1's sideboard", "nominative, female owner").arg(ownerName)) : (hisOwn ? tr("his sideboard", "nominative, male owner") : tr("%1's sideboard", "nominative, male owner").arg(ownerName));
+ case CaseGenitive: return female ? (hisOwn ? tr("of her sideboard", "genitive, female owner") : tr("of %1's sideboard", "genitive, female owner").arg(ownerName)) : (hisOwn ? tr("of his sideboard", "genitive, male owner") : tr("of %1's sideboard", "genitive, male owner").arg(ownerName));
+ case CaseAccusative: return female ? (hisOwn ? tr("her sideboard", "accusative, female owner") : tr("%1's sideboard", "accusative, female owner").arg(ownerName)) : (hisOwn ? tr("his sideboard", "accusative, male owner") : tr("%1's sideboard", "accusative, male owner").arg(ownerName));
}
return QString();
}
diff --git a/cockatrice/src/messagelogwidget.cpp b/cockatrice/src/messagelogwidget.cpp
index 18cf52b8..be218d6b 100644
--- a/cockatrice/src/messagelogwidget.cpp
+++ b/cockatrice/src/messagelogwidget.cpp
@@ -15,6 +15,11 @@ QString MessageLogWidget::sanitizeHtml(QString dirty) const
.replace(">", ">");
}
+bool MessageLogWidget::isFemale(Player *player) const
+{
+ return player->getUserInfo()->getGender() == ServerInfo_User::Female;
+}
+
void MessageLogWidget::logConnecting(QString hostname)
{
append(tr("Connecting to %1...").arg(sanitizeHtml(hostname)));
@@ -122,11 +127,11 @@ void MessageLogWidget::logSpectatorSay(QString spectatorName, QString message)
append(QString("%1: %2").arg(sanitizeHtml(spectatorName)).arg(sanitizeHtml(message)));
}
-void MessageLogWidget::logShuffle(Player *player)
+void MessageLogWidget::logShuffle(Player *player, CardZone *zone)
{
soundEngine->shuffle();
if (currentContext != MessageContext_Mulligan)
- append(tr("%1 shuffles his library.").arg(sanitizeHtml(player->getName())));
+ append(tr("%1 shuffles %2.").arg(sanitizeHtml(player->getName())).arg(zone->getTranslatedName(true, CaseAccusative)));
}
void MessageLogWidget::logRollDie(Player *player, int sides, int roll)
@@ -147,9 +152,9 @@ void MessageLogWidget::logDrawCards(Player *player, int number)
void MessageLogWidget::logUndoDraw(Player *player, QString cardName)
{
if (cardName.isEmpty())
- append(tr("%1 undoes his last draw.").arg(sanitizeHtml(player->getName())));
+ append((isFemale(player) ? tr("%1 undoes her last draw.") : tr("%1 undoes his last draw.")).arg(sanitizeHtml(player->getName())));
else
- append(tr("%1 undoes his last draw (%2).").arg(sanitizeHtml(player->getName())).arg(QString("%1").arg(sanitizeHtml(cardName))));
+ append((isFemale(player) ? tr("%1 undoes her last draw (%2).") : tr("%1 undoes his last draw (%2).")).arg(sanitizeHtml(player->getName())).arg(QString("%1").arg(sanitizeHtml(cardName))));
}
QPair MessageLogWidget::getFromStr(CardZone *zone, QString cardName, int position) const
@@ -169,16 +174,16 @@ QPair MessageLogWidget::getFromStr(CardZone *zone, QString car
else if (startName == "deck") {
if (position == zone->getCards().size() - 1) {
if (cardName.isEmpty()) {
- cardName = tr("the bottom card of his library");
+ cardName = isFemale(zone->getPlayer()) ? tr("the bottom card of her library") : tr("the bottom card of his library");
cardNameContainsStartZone = true;
} else
- fromStr = tr(" from the bottom of his library");
+ fromStr = isFemale(zone->getPlayer()) ? tr(" from the bottom of her library") : tr(" from the bottom of his library");
} else if (position == 0) {
if (cardName.isEmpty()) {
- cardName = tr("the top card of his library");
+ cardName = isFemale(zone->getPlayer()) ? tr("the top card of her library") : tr("the top card of his library");
cardNameContainsStartZone = true;
} else
- fromStr = tr(" from the top of his library");
+ fromStr = isFemale(zone->getPlayer()) ? tr(" from the top of her library") : tr(" from the top of his library");
} else
fromStr = tr(" from library");
} else if (startName == "sb")
@@ -233,13 +238,13 @@ void MessageLogWidget::doMoveCard(LogMoveCard &attributes)
finalStr = tr("%1 moves %2%3 to hand.");
else if (targetName == "deck") {
if (attributes.newX == -1)
- finalStr = tr("%1 puts %2%3 into his library.");
+ finalStr = isFemale(attributes.targetZone->getPlayer()) ? tr("%1 puts %2%3 into her library.") : tr("%1 puts %2%3 into his library.");
else if (attributes.newX == attributes.targetZone->getCards().size() - 1)
- finalStr = tr("%1 puts %2%3 on bottom of his library.");
+ finalStr = isFemale(attributes.targetZone->getPlayer()) ? tr("%1 puts %2%3 on bottom of her library.") : tr("%1 puts %2%3 on bottom of his library.");
else if (attributes.newX == 0)
- finalStr = tr("%1 puts %2%3 on top of his library.");
+ finalStr = isFemale(attributes.targetZone->getPlayer()) ? tr("%1 puts %2%3 on top of her library.") : tr("%1 puts %2%3 on top of his library.");
else
- finalStr = tr("%1 puts %2%3 into his library at position %4.");
+ finalStr = isFemale(attributes.targetZone->getPlayer()) ? tr("%1 puts %2%3 into her library at position %4.") : tr("%1 puts %2%3 into his library at position %4.");
} else if (targetName == "sb")
finalStr = tr("%1 moves %2%3 to sideboard.");
else if (targetName == "stack") {
@@ -269,7 +274,7 @@ void MessageLogWidget::logMulligan(Player *player, int number)
if (number > -1)
append(tr("%1 takes a mulligan to %n.", "", number).arg(sanitizeHtml(player->getName())));
else
- append(tr("%1 draws his initial hand.").arg(sanitizeHtml(player->getName())));
+ append((isFemale(player) ? tr("%1 draws her initial hand.") : tr("%1 draws his initial hand.")).arg(sanitizeHtml(player->getName())));
}
void MessageLogWidget::logFlipCard(Player *player, QString cardName, bool faceDown)
@@ -351,7 +356,7 @@ void MessageLogWidget::logSetTapped(Player *player, CardItem *card, bool tapped)
else {
QString cardStr;
if (!card)
- cardStr = tr("his permanents");
+ cardStr = isFemale(player) ? tr("her permanents") : tr("his permanents");
else
cardStr = QString("%1").arg(sanitizeHtml(card->getName()));
append(tr("%1 %2 %3.").arg(sanitizeHtml(player->getName())).arg(tapped ? tr("taps") : tr("untaps")).arg(cardStr));
@@ -495,7 +500,7 @@ void MessageLogWidget::containerProcessingDone()
void MessageLogWidget::connectToPlayer(Player *player)
{
connect(player, SIGNAL(logSay(Player *, QString)), this, SLOT(logSay(Player *, QString)));
- connect(player, SIGNAL(logShuffle(Player *)), this, SLOT(logShuffle(Player *)));
+ connect(player, SIGNAL(logShuffle(Player *, CardZone *)), this, SLOT(logShuffle(Player *, CardZone *)));
connect(player, SIGNAL(logRollDie(Player *, int, int)), this, SLOT(logRollDie(Player *, int, int)));
connect(player, SIGNAL(logCreateArrow(Player *, Player *, QString, Player *, QString, bool)), this, SLOT(logCreateArrow(Player *, Player *, QString, Player *, QString, bool)));
connect(player, SIGNAL(logCreateToken(Player *, QString, QString)), this, SLOT(logCreateToken(Player *, QString, QString)));
diff --git a/cockatrice/src/messagelogwidget.h b/cockatrice/src/messagelogwidget.h
index 1a42a326..fe548547 100644
--- a/cockatrice/src/messagelogwidget.h
+++ b/cockatrice/src/messagelogwidget.h
@@ -31,6 +31,7 @@ private:
CardInfoWidget *infoWidget;
QString sanitizeHtml(QString dirty) const;
+ bool isFemale(Player *player) const;
QPair getFromStr(CardZone *zone, QString cardName, int position) const;
QString getCardNameUnderMouse(const QPoint &pos) const;
MessageContext currentContext;
@@ -66,7 +67,7 @@ public slots:
void logGameStart();
void logSay(Player *player, QString message);
void logSpectatorSay(QString spectatorName, QString message);
- void logShuffle(Player *player);
+ void logShuffle(Player *player, CardZone *zone);
void logRollDie(Player *player, int sides, int roll);
void logDrawCards(Player *player, int number);
void logUndoDraw(Player *player, QString cardName);
diff --git a/cockatrice/src/pixmapgenerator.cpp b/cockatrice/src/pixmapgenerator.cpp
index a27b081d..1c04e922 100644
--- a/cockatrice/src/pixmapgenerator.cpp
+++ b/cockatrice/src/pixmapgenerator.cpp
@@ -78,6 +78,36 @@ QPixmap PingPixmapGenerator::generatePixmap(int size, int value, int max)
QMap PingPixmapGenerator::pmCache;
+QPixmap GenderPixmapGenerator::generatePixmap(int height, int _gender)
+{
+ ServerInfo_User::Gender gender = static_cast(_gender);
+ if ((gender != ServerInfo_User::Male) && (gender != ServerInfo_User::Female))
+ gender = ServerInfo_User::GenderUnknown;
+
+ int key = gender * 100000 + height;
+ if (pmCache.contains(key))
+ return pmCache.value(key);
+
+ QString genderStr;
+ switch (gender) {
+ case ServerInfo_User::Male: genderStr = "male"; break;
+ case ServerInfo_User::Female: genderStr = "female"; break;
+ default: genderStr = "unknown";
+ };
+
+ QSvgRenderer svg(QString(":/resources/genders/" + genderStr + ".svg"));
+ int width = (int) round(height * (double) svg.defaultSize().width() / (double) svg.defaultSize().height());
+ QPixmap pixmap(width, height);
+ pixmap.fill(Qt::transparent);
+ QPainter painter(&pixmap);
+ svg.render(&painter, QRectF(0, 0, width, height));
+
+ pmCache.insert(key, pixmap);
+ return pixmap;
+}
+
+QMap GenderPixmapGenerator::pmCache;
+
QPixmap CountryPixmapGenerator::generatePixmap(int height, const QString &countryCode)
{
if (countryCode.size() != 2)
@@ -110,8 +140,8 @@ QPixmap UserLevelPixmapGenerator::generatePixmap(int height, int userLevel)
QString levelString;
if (userLevel & ServerInfo_User::IsAdmin)
levelString = "admin";
- else if (userLevel & ServerInfo_User::IsJudge)
- levelString = "judge";
+ else if (userLevel & ServerInfo_User::IsModerator)
+ levelString = "moderator";
else if (userLevel &ServerInfo_User::IsRegistered)
levelString = "registered";
else
diff --git a/cockatrice/src/pixmapgenerator.h b/cockatrice/src/pixmapgenerator.h
index 7f69c26d..25fa00c9 100644
--- a/cockatrice/src/pixmapgenerator.h
+++ b/cockatrice/src/pixmapgenerator.h
@@ -28,6 +28,14 @@ public:
static void clear() { pmCache.clear(); }
};
+class GenderPixmapGenerator {
+private:
+ static QMap pmCache;
+public:
+ static QPixmap generatePixmap(int height, int gender);
+ static void clear() { pmCache.clear(); }
+};
+
class CountryPixmapGenerator {
private:
static QMap pmCache;
diff --git a/cockatrice/src/player.cpp b/cockatrice/src/player.cpp
index d6a34978..7ebf9cdf 100644
--- a/cockatrice/src/player.cpp
+++ b/cockatrice/src/player.cpp
@@ -713,7 +713,7 @@ void Player::eventSay(Event_Say *event)
void Player::eventShuffle(Event_Shuffle * /*event*/)
{
- emit logShuffle(this);
+ emit logShuffle(this, zones.value("deck"));
}
void Player::eventRollDie(Event_RollDie *event)
diff --git a/cockatrice/src/player.h b/cockatrice/src/player.h
index 4096c1e9..8645d70f 100644
--- a/cockatrice/src/player.h
+++ b/cockatrice/src/player.h
@@ -70,7 +70,7 @@ signals:
void newCardAdded(AbstractCardItem *card);
// Log events
void logSay(Player *player, QString message);
- void logShuffle(Player *player);
+ void logShuffle(Player *player, CardZone *zone);
void logRollDie(Player *player, int sides, int roll);
void logCreateArrow(Player *player, Player *startPlayer, QString startCard, Player *targetPlayer, QString targetCard, bool _playerTarget);
void logCreateToken(Player *player, QString cardName, QString pt);
diff --git a/cockatrice/src/userinfobox.cpp b/cockatrice/src/userinfobox.cpp
index 40b4b012..53b319c0 100644
--- a/cockatrice/src/userinfobox.cpp
+++ b/cockatrice/src/userinfobox.cpp
@@ -17,6 +17,8 @@ UserInfoBox::UserInfoBox(AbstractClient *_client, bool _fullInfo, QWidget *paren
nameLabel->setFont(nameFont);
realNameLabel1 = new QLabel;
realNameLabel2 = new QLabel;
+ genderLabel1 = new QLabel;
+ genderLabel2 = new QLabel;
countryLabel1 = new QLabel;
countryLabel2 = new QLabel;
userLevelLabel1 = new QLabel;
@@ -28,11 +30,13 @@ UserInfoBox::UserInfoBox(AbstractClient *_client, bool _fullInfo, QWidget *paren
mainLayout->addWidget(nameLabel, 1, 0, 1, 3);
mainLayout->addWidget(realNameLabel1, 2, 0, 1, 1);
mainLayout->addWidget(realNameLabel2, 2, 1, 1, 2);
- mainLayout->addWidget(countryLabel1, 3, 0, 1, 1);
- mainLayout->addWidget(countryLabel2, 3, 1, 1, 2);
- mainLayout->addWidget(userLevelLabel1, 4, 0, 1, 1);
- mainLayout->addWidget(userLevelLabel2, 4, 1, 1, 1);
- mainLayout->addWidget(userLevelLabel3, 4, 2, 1, 1);
+ mainLayout->addWidget(genderLabel1, 3, 0, 1, 1);
+ mainLayout->addWidget(genderLabel2, 3, 1, 1, 2);
+ mainLayout->addWidget(countryLabel1, 4, 0, 1, 1);
+ mainLayout->addWidget(countryLabel2, 4, 1, 1, 2);
+ mainLayout->addWidget(userLevelLabel1, 5, 0, 1, 1);
+ mainLayout->addWidget(userLevelLabel2, 5, 1, 1, 1);
+ mainLayout->addWidget(userLevelLabel3, 5, 2, 1, 1);
mainLayout->setColumnStretch(2, 10);
setWindowTitle(tr("User information"));
@@ -43,6 +47,7 @@ UserInfoBox::UserInfoBox(AbstractClient *_client, bool _fullInfo, QWidget *paren
void UserInfoBox::retranslateUi()
{
realNameLabel1->setText(tr("Real name:"));
+ genderLabel1->setText(tr("Gender:"));
countryLabel1->setText(tr("Location:"));
userLevelLabel1->setText(tr("User level:"));
}
@@ -58,13 +63,14 @@ void UserInfoBox::updateInfo(ServerInfo_User *user)
nameLabel->setText(user->getName());
realNameLabel2->setText(user->getRealName());
+ genderLabel2->setPixmap(GenderPixmapGenerator::generatePixmap(15, user->getGender()));
countryLabel2->setPixmap(CountryPixmapGenerator::generatePixmap(15, user->getCountry()));
userLevelLabel2->setPixmap(UserLevelPixmapGenerator::generatePixmap(15, userLevel));
QString userLevelText;
if (userLevel & ServerInfo_User::IsAdmin)
userLevelText = tr("Administrator");
- else if (userLevel & ServerInfo_User::IsJudge)
- userLevelText = tr("Judge");
+ else if (userLevel & ServerInfo_User::IsModerator)
+ userLevelText = tr("Moderator");
else if (userLevel & ServerInfo_User::IsRegistered)
userLevelText = tr("Registered user");
else
diff --git a/cockatrice/src/userinfobox.h b/cockatrice/src/userinfobox.h
index adf5f832..ee4fd604 100644
--- a/cockatrice/src/userinfobox.h
+++ b/cockatrice/src/userinfobox.h
@@ -13,7 +13,7 @@ class UserInfoBox : public QWidget {
private:
AbstractClient *client;
bool fullInfo;
- QLabel *avatarLabel, *nameLabel, *realNameLabel1, *realNameLabel2, *countryLabel1, *countryLabel2, *userLevelLabel1, *userLevelLabel2, *userLevelLabel3;
+ QLabel *avatarLabel, *nameLabel, *realNameLabel1, *realNameLabel2, *genderLabel1, *genderLabel2, *countryLabel1, *countryLabel2, *userLevelLabel1, *userLevelLabel2, *userLevelLabel3;
public:
UserInfoBox(AbstractClient *_client, bool fullInfo, QWidget *parent = 0, Qt::WindowFlags flags = 0);
void retranslateUi();
diff --git a/cockatrice/translations/cockatrice_cs.ts b/cockatrice/translations/cockatrice_cs.ts
index d2acd311..1ce8de4b 100644
--- a/cockatrice/translations/cockatrice_cs.ts
+++ b/cockatrice/translations/cockatrice_cs.ts
@@ -393,183 +393,363 @@
CardZone
-
- his hand
- nominative
+
+ her hand
+ nominative, female owner
-
+ %1's hand
- nominative
+ nominative, female owner
- of his hand
- genitive
+ his hand
+ nominative, male owner
+ %1's hand
+ nominative, male owner
+
+
+
+
+ of her hand
+ genitive, female owner
+
+
+
+ of %1's hand
- genitive
+ genitive, female owner
- his hand
- accusative
+ of his hand
+ genitive, male owner
+ of %1's hand
+ genitive, male owner
+
+
+
+
+ her hand
+ accusative, female owner
+
+
+
+ %1's hand
- accusative
+ accusative, female owner
-
- his library
- nominative
+
+ his hand
+ accusative, male owner
-
+
+ %1's hand
+ accusative, male owner
+
+
+
+
+ her library
+ nominative, female owner
+
+
+
+ %1's library
- nominative
+ nominative, female owner
- of his library
- genitive
+ his library
+ nominative, male owner
+ %1's library
+ nominative, male owner
+
+
+
+
+ of her library
+ genitive, female owner
+
+
+
+ of %1's library
- genitive
+ genitive, female owner
- his library
- accusative
+ of his library
+ genitive, male owner
+ of %1's library
+ genitive, male owner
+
+
+
+
+ her library
+ accusative, female owner
+
+
+
+ %1's library
- accusative
+ accusative, female owner
-
- his graveyard
- nominative
+
+ his library
+ accusative, male owner
-
+
+ %1's library
+ accusative, male owner
+
+
+
+
+ her graveyard
+ nominative, female owner
+
+
+
+ %1's graveyard
- nominative
+ nominative, female owner
- of his graveyard
- genitive
+ his graveyard
+ nominative, male owner
+ %1's graveyard
+ nominative, male owner
+
+
+
+
+ of her graveyard
+ genitive, female owner
+
+
+
+ of %1's graveyard
- genitive
+ genitive, female owner
- his graveyard
- accusative
+ of his graveyard
+ genitive, male owner
+ of %1's graveyard
+ genitive, male owner
+
+
+
+
+ her graveyard
+ accusative, female owner
+
+
+
+ %1's graveyard
- accusative
+ accusative, female owner
-
- his exile
- nominative
+
+ his graveyard
+ accusative, male owner
-
+
+ %1's graveyard
+ accusative, male owner
+
+
+
+
+ her exile
+ nominative, female owner
+
+
+
+ %1's exile
- nominative
+ nominative, female owner
- of his exile
- genitive
+ his exile
+ nominative, male owner
+ %1's exile
+ nominative, male owner
+
+
+
+
+ of her exile
+ genitive, female owner
+
+
+
+ of %1's exile
- genitive
+ genitive, female owner
- his exile
- accusative
+ of his exile
+ genitive, male owner
+ of %1's exile
+ genitive, male owner
+
+
+
+
+ her exile
+ accusative, female owner
+
+
+
+ %1's exile
- accusative
+ accusative, female owner
-
- his sideboard
- nominative
+
+ his exile
+ accusative, male owner
-
+
+ %1's exile
+ accusative, male owner
+
+
+
+
+ her sideboard
+ nominative, female owner
+
+
+
+ %1's sideboard
- nominative
+ nominative, female owner
- of his sideboard
- genitive
+ his sideboard
+ nominative, male owner
+ %1's sideboard
+ nominative, male owner
+
+
+
+
+ of her sideboard
+ genitive, female owner
+
+
+
+ of %1's sideboard
- genitive
+ genitive, female owner
- his sideboard
- accusative
+ of his sideboard
+ genitive, male owner
+ of %1's sideboard
+ genitive, male owner
+
+
+
+
+ her sideboard
+ accusative, female owner
+
+
+
+ %1's sideboard
- accusative
+ accusative, female owner
+
+
+
+
+ his sideboard
+ accusative, male owner
+
+
+
+
+ %1's sideboard
+ accusative, male owner
@@ -1427,107 +1607,107 @@ Local version is %1, remote version is %2.
MessageLogWidget
-
+ Connecting to %1...
-
+ Connected.
-
+ Disconnected from server.
-
+ Invalid password.
-
+ Protocol version mismatch. Client: %1, Server: %2
-
+ Protocol error.
-
+ You have joined game #%1.
-
+ %1 has joined the game.
-
+ %1 has left the game.
-
+ The game has been closed.
-
+ %1 is now watching the game.
-
+ %1 is not watching the game any more.
-
+ %1 has loaded a local deck.
-
+ %1 has loaded deck #%2.
-
+ %1 is ready to start the game.
-
+ %1 is not ready to start the game any more.
-
+ %1 has conceded the game.
-
+ The game has started.
-
- %1 shuffles his library.
+
+ %1 shuffles %2.
-
+ %1 rolls a %2 with a %3-sided die.
-
+ %1 draws %n card(s).
@@ -1536,138 +1716,188 @@ Local version is %1, remote version is %2.
-
+ %1 undoes his last draw.
-
+
+ %1 undoes her last draw.
+
+
+
+ %1 undoes his last draw (%2).
-
+
+ %1 undoes her last draw (%2).
+
+
+
+ from table
-
+ from graveyard
-
+ from exile
-
+ from hand
-
+ the bottom card of his library
-
+
+ the bottom card of her library
+
+
+
+ from the bottom of his library
-
- the top card of his library
-
-
-
-
- from the top of his library
+
+ from the bottom of her library
+ the top card of his library
+
+
+
+
+ the top card of her library
+
+
+
+
+ from the top of his library
+
+
+
+
+ from the top of her library
+
+
+
+ from library
-
+ from sideboard
-
+ from the stack
-
-
+
+ a card
-
+ %1 gives %2 control over %3.
-
+ %1 puts %2 into play tapped%3.
-
+ %1 puts %2 into play%3.
-
+ %1 puts %2%3 into graveyard.
-
+ %1 exiles %2%3.
-
+ %1 moves %2%3 to hand.
-
+ %1 puts %2%3 into his library.
-
+
+ %1 puts %2%3 into her library.
+
+
+
+ %1 puts %2%3 on bottom of his library.
-
+
+ %1 puts %2%3 on bottom of her library.
+
+
+
+ %1 puts %2%3 on top of his library.
-
- %1 puts %2%3 into his library at position %4.
-
-
-
-
- %1 moves %2%3 to sideboard.
+
+ %1 puts %2%3 on top of her library.
+ %1 puts %2%3 into his library at position %4.
+
+
+
+
+ %1 puts %2%3 into her library at position %4.
+
+
+
+
+ %1 moves %2%3 to sideboard.
+
+
+
+ %1 plays %2%3.
-
+ %1 takes a mulligan to %n.
@@ -1676,52 +1906,57 @@ Local version is %1, remote version is %2.
-
+ %1 draws his initial hand.
-
+
+ %1 draws her initial hand.
+
+
+
+ %1 flips %2 face-down.
-
+ %1 flips %2 face-up.
-
+ %1 destroys %2.
-
+ %1 attaches %2 to %3's %4.
-
+ %1 unattaches %2.
-
+ %1 creates token: %2%3.
-
+ %1 points from %2's %3 to %4.
-
+ %1 points from %2's %3 to %4's %5.
-
+ %1 places %n %2 counter(s) on %3 (now %4).
@@ -1730,7 +1965,7 @@ Local version is %1, remote version is %2.
-
+ %1 removes %n %2 counter(s) from %3 (now %4).
@@ -1739,7 +1974,7 @@ Local version is %1, remote version is %2.
-
+ red
@@ -1748,7 +1983,7 @@ Local version is %1, remote version is %2.
-
+ yellow
@@ -1757,7 +1992,7 @@ Local version is %1, remote version is %2.
-
+ green
@@ -1766,157 +2001,162 @@ Local version is %1, remote version is %2.
-
+ his permanents
-
+
+ her permanents
+
+
+
+ %1 %2 %3.
-
+ taps
-
+ untaps
-
+ %1 sets counter %2 to %3 (%4%5).
-
+ %1 sets %2 to not untap normally.
-
+ %1 sets %2 to untap normally.
-
+ %1 sets PT of %2 to %3.
-
+ %1 sets annotation of %2 to %3.
-
+ %1 is looking at the top %2 cards %3.
-
+ %1 is looking at %2.
-
+ %1 stops looking at %2.
-
+ %1 reveals %2 to %3.
-
+ %1 reveals %2.
-
+ %1 randomly reveals %2%3 to %4.
-
+ %1 randomly reveals %2%3.
-
+ %1 reveals %2%3 to %4.
-
+ %1 reveals %2%3.
-
+ It is now %1's turn.
-
+ untap step
-
+ upkeep step
-
+ draw step
-
+ first main phase
-
+ beginning of combat step
-
+ declare attackers step
-
+ declare blockers step
-
+ combat damage step
-
+ end of combat step
-
+ second main phase
-
+ ending phase
-
+ It is now the %1.
@@ -2788,42 +3028,47 @@ Please enter a name:
UserInfoBox
-
+ User information
-
+ Real name:
-
+
+ Gender:
+
+
+
+ Location:
-
+ User level:
-
+ Administrator
-
- Judge
+
+ Moderator
-
+ Registered user
-
+ Unregistered user
diff --git a/cockatrice/translations/cockatrice_de.ts b/cockatrice/translations/cockatrice_de.ts
index 6dff3bbc..85e2d47b 100644
--- a/cockatrice/translations/cockatrice_de.ts
+++ b/cockatrice/translations/cockatrice_de.ts
@@ -520,40 +520,34 @@
von %1s Sideboard
- his handnominative
- seine Hand
+ seine Hand
- %1's handnominative
- %1s Hand
+ %1s Hand
- of his handgenitive
- seiner Hand
+ seiner Hand
- of %1's handgenitive
- von %1s Hand
+ von %1s Hand
- his handaccusative
- seine Hand
+ seine Hand
- %1's handaccusative
- %1s Hand
+ %1s Handhis hand
@@ -566,40 +560,34 @@
%1s Hand
- his librarynominative
- seine Bibliothek
+ seine Bibliothek
- %1's librarynominative
- %1s Bibliothek
+ %1s Bibliothek
- of his librarygenitive
- seiner Bibliothek
+ seiner Bibliothek
- of %1's librarygenitive
- von %1s Bibliothek
+ von %1s Bibliothek
- his libraryaccusative
- seine Bibliothek
+ seine Bibliothek
- %1's libraryaccusative
- %1s Bibliothek
+ %1s Bibliothekhis library
@@ -612,40 +600,394 @@
%1s Bibliothek
-
- his graveyard
- nominative
- sein Friedhof
+
+ her hand
+ nominative, female owner
+ ihre Hand
-
+
+ %1's hand
+ nominative, female owner
+ %1s Hand
+
+
+
+ his hand
+ nominative, male owner
+ seine Hand
+
+
+
+ %1's hand
+ nominative, male owner
+ %1s Hand
+
+
+
+ of her hand
+ genitive, female owner
+ ihrer Hand
+
+
+
+ of %1's hand
+ genitive, female owner
+ von %1s Hand
+
+
+
+ of his hand
+ genitive, male owner
+ seiner Hand
+
+
+
+ of %1's hand
+ genitive, male owner
+ von %1s Hand
+
+
+
+ her hand
+ accusative, female owner
+ ihre Hand
+
+
+
+ %1's hand
+ accusative, female owner
+ %1s Hand
+
+
+
+ his hand
+ accusative, male owner
+ seine Hand
+
+
+
+ %1's hand
+ accusative, male owner
+ %1s Hand
+
+
+
+ her library
+ nominative, female owner
+ ihre Bibliothek
+
+
+
+ %1's library
+ nominative, female owner
+ %1s Bibliothek
+
+
+
+ his library
+ nominative, male owner
+ seine Bibliothek
+
+
+
+ %1's library
+ nominative, male owner
+ %1s Bibliothek
+
+
+
+ of her library
+ genitive, female owner
+ ihrer Bibliothek
+
+
+
+ of %1's library
+ genitive, female owner
+ von %1s Bibliothek
+
+
+
+ of his library
+ genitive, male owner
+ seiner Bibliothek
+
+
+
+ of %1's library
+ genitive, male owner
+ von %1s Bibliothek
+
+
+
+ her library
+ accusative, female owner
+ ihre Bibliothek
+
+
+
+ %1's library
+ accusative, female owner
+ %1s Bibliothek
+
+
+
+ his library
+ accusative, male owner
+ seine Bibliothek
+
+
+
+ %1's library
+ accusative, male owner
+ %1s Bibliothek
+
+
+
+ her graveyard
+ nominative, female owner
+ ihr Friedhof
+
+
+ %1's graveyard
- nominative
+ nominative, female owner%1s Friedhof
- of his graveyard
- genitive
- seines Friedhofs
+ his graveyard
+ nominative, male owner
+ sein Friedhof
+ %1's graveyard
+ nominative, male owner
+ %1s Friedhof
+
+
+
+ of her graveyard
+ genitive, female owner
+ ihres Friedhofs
+
+
+ of %1's graveyard
- genitive
+ genitive, female ownervon %1s Friedhof
- his graveyard
- accusative
- sein Friedhof
+ of his graveyard
+ genitive, male owner
+ seines Friedhofs
+ of %1's graveyard
+ genitive, male owner
+ von %1s Friedhof
+
+
+
+ her graveyard
+ accusative, female owner
+ ihren Friedhof
+
+
+
+ %1's graveyard
+ accusative, female owner
+ %1s Friedhof
+
+
+
+ his graveyard
+ accusative, male owner
+ seinen Friedhof
+
+
+
+ %1's graveyard
+ accusative, male owner
+ %1s Friedhof
+
+
+
+ her exile
+ nominative, female owner
+ ihr Exil
+
+
+
+ %1's exile
+ nominative, female owner
+ %1s Exil
+
+
+
+ his exile
+ nominative, male owner
+ sein Exil
+
+
+
+ %1's exile
+ nominative, male owner
+ %1s Exil
+
+
+
+ of her exile
+ genitive, female owner
+ ihres Exils
+
+
+
+ of %1's exile
+ genitive, female owner
+ von %1s Exil
+
+
+
+ of his exile
+ genitive, male owner
+ seines Exils
+
+
+
+ of %1's exile
+ genitive, male owner
+ von %1s Exil
+
+
+
+ her exile
+ accusative, female owner
+ ihr Exil
+
+
+
+ %1's exile
+ accusative, female owner
+ %1s Exil
+
+
+
+ his exile
+ accusative, male owner
+ sein Exil
+
+
+
+ %1's exile
+ accusative, male owner
+ %1s Exil
+
+
+
+ her sideboard
+ nominative, female owner
+ ihr Sideboard
+
+
+
+ %1's sideboard
+ nominative, female owner
+ %1s Sideboard
+
+
+
+ his sideboard
+ nominative, male owner
+ sein Sideboard
+
+
+
+ %1's sideboard
+ nominative, male owner
+ %1s Sideboard
+
+
+
+ of her sideboard
+ genitive, female owner
+ ihres Sideboards
+
+
+
+ of %1's sideboard
+ genitive, female owner
+ von %1s Sideboard
+
+
+
+ of his sideboard
+ genitive, male owner
+ seines Sideboards
+
+
+
+ of %1's sideboard
+ genitive, male owner
+ von %1s Sideboard
+
+
+
+ her sideboard
+ accusative, female owner
+ ihr Sideboard
+
+
+
+ %1's sideboard
+ accusative, female owner
+ %1s Sideboard
+
+
+
+ his sideboard
+ accusative, male owner
+ sein Sideboard
+
+
+
+ %1's sideboard
+ accusative, male owner
+ %1s Sideboard
+
+
+ his graveyard
+ nominative
+ sein Friedhof
+
+
+ %1's graveyard
+ nominative
+ %1s Friedhof
+
+
+ of his graveyard
+ genitive
+ seines Friedhofs
+
+
+ of %1's graveyard
+ genitive
+ von %1s Friedhof
+
+
+ his graveyard
+ accusative
+ sein Friedhof
+
+ %1's graveyardaccusative
- %1s Friedhof
+ %1s Friedhofhis graveyard
@@ -658,40 +1000,34 @@
%1s Friedhof
- his exilenominative
- sein Exil
+ sein Exil
- %1's exilenominative
- %1s Exil
+ %1s Exil
- of his exilegenitive
- seines Exils
+ seines Exils
- of %1's exilegenitive
- von %1s Exil
+ von %1s Exil
- his exileaccusative
- sein Exil
+ sein Exil
- %1's exileaccusative
- %1s Exil
+ %1s Exilhis exile
@@ -704,40 +1040,34 @@
%1s Exil
- his sideboardnominative
- sein Sideboard
+ sein Sideboard
- %1's sideboardnominative
- %1s Sideboard
+ %1s Sideboard
- of his sideboardgenitive
- seines Sideboards
+ seines Sideboards
- of %1's sideboardgenitive
- von %1s Sideboard
+ von %1s Sideboard
- his sideboardaccusative
- sein Sideboard
+ sein Sideboard
- %1's sideboardaccusative
- %1s Sideboard
+ %1s Sideboardhis sideboard
@@ -1899,7 +2229,7 @@ Grund: %1
Slovak:
-
+ Slowakisch:
@@ -2075,22 +2405,22 @@ Lokale Version ist %1, Serverversion ist %2.
MessageLogWidget
-
+ Connecting to %1...Verbinde zu %1...
-
+ Connected.Verbunden.
-
+ Disconnected from server.Verbindung zum Server getrennt.
-
+ Invalid password.Ungültiges Passwort.
@@ -2131,8 +2461,8 @@ Lokale Version ist %1, Serverversion ist %2.
%1 zieht %2 Karten
-
-
+
+ a cardeine Karte
@@ -2189,14 +2519,13 @@ Lokale Version ist %1, Serverversion ist %2.
%1s Sideboard
-
+ The game has started.Das Spiel hat begonnen.
- %1 shuffles his library.
- %1 mischt seine Bibliothek.
+ %1 mischt seine Bibliothek.%1 rolls a %2 with a %3-sided dice.
@@ -2211,72 +2540,77 @@ Lokale Version ist %1, Serverversion ist %2.
Protokollversion stimmt nicht überein.
-
+ Protocol version mismatch. Client: %1, Server: %2
-
+ Protocol error.Protokollfehler.
-
+ You have joined game #%1.Sie sind dem Spiel %1 beigetreten.
-
+ %1 has joined the game.%1 ist dem Spiel beigetreten.
-
+ %1 has left the game.%1 hat das Spiel verlassen.
-
+ The game has been closed.Das Spiel wurde geschlossen.
-
+ %1 is now watching the game.%1 schaut nun dem Spiel zu.
-
+ %1 is not watching the game any more.%1 schaut dem Spiel nicht mehr zu.
-
+ %1 has loaded a local deck.%1 hat ein lokales Deck geladen.
-
+ %1 has loaded deck #%2.%1 hat das Deck Nr. %2 geladen.
-
+ %1 is ready to start the game.%1 ist bereit, das Spiel zu starten.
-
+ %1 is not ready to start the game any more.%1 ist nicht mehr bereit, das Spiel zu starten.
-
+ %1 has conceded the game.%1 hat das Spiel aufgegeben.
+ %1 shuffles %2.
+ %1 mischt %2.
+
+
+ %1 rolls a %2 with a %3-sided die.%1 würfelt eine %2 mit einem %3-seitigen Würfel.
@@ -2289,7 +2623,7 @@ Lokale Version ist %1, Serverversion ist %2.
%1 zieht %2 Karten.
-
+ %1 draws %n card(s).%1 zieht eine Karte.
@@ -2297,132 +2631,182 @@ Lokale Version ist %1, Serverversion ist %2.
-
+ %1 undoes his last draw.%1 legt die zuletzt gezogene Karte zurück.
-
+
+ %1 undoes her last draw.
+ %1 legt die zuletzt gezogene Karte zurück.
+
+
+ %1 undoes his last draw (%2).%1 legt die zuletzt gezogene Karte zurück (%2).
-
+
+ %1 undoes her last draw (%2).
+ %1 legt die zuletzt gezogene Karte zurück (%2).
+
+
+ from table vom Spielfeld
-
+ from graveyard aus dem Friedhof
-
+ from exile aus dem Exil
-
+ from hand von der Hand
-
+ the bottom card of his librarydie unterste Karte seiner Bibliothek
-
+
+ the bottom card of her library
+ die unterste Karte ihrer Bibliothek
+
+
+ from the bottom of his library, die unterste Karte seiner Bibliothek,
-
+
+ from the bottom of her library
+ , die unterste Karte ihrer Bibliothek,
+
+
+ the top card of his librarydie oberste Karte seiner Bibliothek
-
+
+ the top card of her library
+ die oberste Karte ihrer Bibliothek
+
+
+ from the top of his library, die oberste Karte seiner Bibliothek,
-
+
+ from the top of her library
+ , die oberste Karte ihrer Bibliothek,
+
+
+ from library aus der Bibliothek
-
+ from sideboard aus dem Sideboard
-
+ from the stack vom Stapel
-
+ %1 gives %2 control over %3.%1 überlässt %2 die Kontrolle über %3.
-
+ %1 puts %2 into play tapped%3.%1 bringt %2 getappt%3 ins Spiel.
-
+ %1 puts %2 into play%3.%1 bringt %2%3 ins Spiel.
-
+ %1 puts %2%3 into graveyard.%1 legt %2%3 auf den Friedhof.
-
+ %1 exiles %2%3.%1 schickt %2%3 ins Exil.
-
+ %1 moves %2%3 to hand.%1 nimmt %2%3 auf die Hand.
-
+ %1 puts %2%3 into his library.%1 legt %2%3 in seine Bibliothek.
-
+
+ %1 puts %2%3 into her library.
+ %1 legt %2%3 in ihre Bibliothek.
+
+
+ %1 puts %2%3 on bottom of his library.%1 legt %2%3 unter seine Bibliothek.
-
+
+ %1 puts %2%3 on bottom of her library.
+ %1 legt %2%3 unter ihre Bibliothek.
+
+
+ %1 puts %2%3 on top of his library.%1 legt %2%3 auf die Bibliothek.
-
+
+ %1 puts %2%3 on top of her library.
+ %1 legt %2%3 auf die Bibliothek.
+
+
+ %1 puts %2%3 into his library at position %4.%1 legt %2%3 in seine Bibliothek an %4. Stelle.
-
+
+ %1 puts %2%3 into her library at position %4.
+ %1 legt %2%3 in ihre Bibliothek an %4. Stelle.
+
+
+ %1 moves %2%3 to sideboard.%1 legt %2%3 in sein Sideboard.
-
+ %1 plays %2%3.%1 spielt %2%3 aus.
-
+ %1 takes a mulligan to %n.%1 nimmt einen Mulligan auf %n.
@@ -2430,47 +2814,52 @@ Lokale Version ist %1, Serverversion ist %2.
-
+ %1 draws his initial hand.%1 zieht seine Starthand.
-
+
+ %1 draws her initial hand.
+ %1 zieht ihre Starthand.
+
+
+ %1 flips %2 face-down.%1 wendet %2 auf die Rückseite.
-
+ %1 flips %2 face-up.%1 wendet %2 auf die Vorderseite.
-
+ %1 destroys %2.%1 zerstört %2.
-
+ %1 attaches %2 to %3's %4.%1 legt %2 an %3s %4 an.
-
+ %1 unattaches %2.%1 löst %2 ab.
-
+ %1 creates token: %2%3.%1 erstellt Token: %2%3.
-
+ %1 points from %2's %3 to %4.%1 zeigt von %2s %3 auf %4.
-
+ %1 places %n %2 counter(s) on %3 (now %4).%1 legt eine %2 Marke auf %3 (jetzt %4).
@@ -2478,7 +2867,7 @@ Lokale Version ist %1, Serverversion ist %2.
-
+ %1 removes %n %2 counter(s) from %3 (now %4).%1 entfernt eine %2 Marke von %3 (jetzt %4).
@@ -2486,22 +2875,27 @@ Lokale Version ist %1, Serverversion ist %2.
-
+
+ her permanents
+ ihre bleibenden Karten
+
+
+ %1 randomly reveals %2%3 to %4.%1 zeigt %4 zufällig %2%3 vor.
-
+ %1 randomly reveals %2%3.%1 zeigt zufällig %2%3 offen vor.
-
+ %1 reveals %2%3 to %4.%1 zeigt %4 %2%3 vor.
-
+ %1 reveals %2%3.%1 zeigt %2%3 offen vor.
@@ -2510,7 +2904,7 @@ Lokale Version ist %1, Serverversion ist %2.
%1 erstellt einen Spielstein: %2 (%3).
-
+ %1 points from %2's %3 to %4's %5.%1 zeigt von %2s %3 auf %4s %5.
@@ -2529,7 +2923,7 @@ Lokale Version ist %1, Serverversion ist %2.
-
+ redrote
@@ -2537,7 +2931,7 @@ Lokale Version ist %1, Serverversion ist %2.
-
+ yellowgelbe
@@ -2545,7 +2939,7 @@ Lokale Version ist %1, Serverversion ist %2.
-
+ greengrüne
@@ -2553,22 +2947,22 @@ Lokale Version ist %1, Serverversion ist %2.
-
+ %1 sets counter %2 to %3 (%4%5).%1 setzt Zähler %2 auf %3 (%4%5).
-
+ %1 sets PT of %2 to %3.%1 setzt Kampfwerte von %2 auf %3.
-
+ %1 sets annotation of %2 to %3.%1 versieht %2 mit dem Hinweis %3.
-
+ %1 is looking at the top %2 cards %3.%1 sieht sich die obersten %2 Karten %3 an.
@@ -2665,7 +3059,7 @@ Lokale Version ist %1, Serverversion ist %2.
%1 entfernt %2 Zählmarken von %3 (jetzt %4).
-
+ %1 %2 %3.%1 %2 %3.
@@ -2678,22 +3072,22 @@ Lokale Version ist %1, Serverversion ist %2.
%1 sieht sich die obersten %2 Karten %3 an.
-
+ %1 is looking at %2.%1 sieht sich %2 an.
-
+ %1 stops looking at %2.%1 sieht sich %2 nicht mehr an.
-
+ %1 reveals %2 to %3.%1 zeigt %3 %2.
-
+ %1 reveals %2.%1 zeigt %2 offen vor.
@@ -2714,7 +3108,7 @@ Lokale Version ist %1, Serverversion ist %2.
%1 zeigt %2 aus %3 offen vor.
-
+ ending phasedie Zugendphase
@@ -2743,57 +3137,57 @@ Lokale Version ist %1, Serverversion ist %2.
%1 sieht sich %2s %3 nicht mehr an
-
+ It is now %1's turn.%1 ist am Zug.
-
+ untap stepdas Enttappsegment
-
+ upkeep stepdas Versorgungssegment
-
+ draw stepdas Ziehsegment
-
+ first main phasedie erste Hauptphase
-
+ beginning of combat stepdas Anfangssegment der Kampfphase
-
+ declare attackers stepdas Angreifer-Deklarieren-Segment
-
+ declare blockers stepdas Blocker-Deklarieren-Segment
-
+ combat damage stepdas Kampfschadenssegment
-
+ end of combat stepdas Endsegment der Kampfphase
-
+ second main phasedie zweite Hauptphase
@@ -2802,7 +3196,7 @@ Lokale Version ist %1, Serverversion ist %2.
das Ende-des-Zuges-Segment
-
+ It is now the %1.Es ist nun %1.
@@ -2811,12 +3205,12 @@ Lokale Version ist %1, Serverversion ist %2.
%1 bewegt %2 %3 nach %4
-
+ tapstappt
-
+ untapsenttappt
@@ -2841,7 +3235,7 @@ Lokale Version ist %1, Serverversion ist %2.
%1 entfernt %2 Zählmarken von %3 (jetzt %4)
-
+ his permanentsseine bleibenden Karten
@@ -2854,12 +3248,12 @@ Lokale Version ist %1, Serverversion ist %2.
%1 setzt Zähler "%2" auf %3 (%4%5)
-
+ %1 sets %2 to not untap normally.%1 setzt %2 auf explizites Enttappen.
-
+ %1 sets %2 to untap normally.%1 setzt %2 auf normales Enttappen.
@@ -4021,42 +4415,51 @@ Bitte geben Sie einen Namen ein:
UserInfoBox
-
+ User informationBenutzerinformationen
-
+ Real name:Richtiger Name:
-
+
+ Gender:
+ Geschlecht:
+
+
+ Location:Ort:
-
+ User level:Nutzerstatus:
-
+ AdministratorAdministrator
-
- Judge
- Schiedsrichter
+
+ Moderator
+ Moderator
-
+ Judge
+ Schiedsrichter
+
+
+ Registered userRegistrierter Benutzer
-
+ Unregistered userUnregistrierter Benutzer
diff --git a/cockatrice/translations/cockatrice_en.ts b/cockatrice/translations/cockatrice_en.ts
index 23356380..415aa3fd 100644
--- a/cockatrice/translations/cockatrice_en.ts
+++ b/cockatrice/translations/cockatrice_en.ts
@@ -393,183 +393,363 @@
CardZone
-
- his hand
- nominative
+
+ her hand
+ nominative, female owner
-
+ %1's hand
- nominative
+ nominative, female owner
- of his hand
- genitive
+ his hand
+ nominative, male owner
+ %1's hand
+ nominative, male owner
+
+
+
+
+ of her hand
+ genitive, female owner
+
+
+
+ of %1's hand
- genitive
+ genitive, female owner
- his hand
- accusative
+ of his hand
+ genitive, male owner
+ of %1's hand
+ genitive, male owner
+
+
+
+
+ her hand
+ accusative, female owner
+
+
+
+ %1's hand
- accusative
+ accusative, female owner
-
- his library
- nominative
+
+ his hand
+ accusative, male owner
-
+
+ %1's hand
+ accusative, male owner
+
+
+
+
+ her library
+ nominative, female owner
+
+
+
+ %1's library
- nominative
+ nominative, female owner
- of his library
- genitive
+ his library
+ nominative, male owner
+ %1's library
+ nominative, male owner
+
+
+
+
+ of her library
+ genitive, female owner
+
+
+
+ of %1's library
- genitive
+ genitive, female owner
- his library
- accusative
+ of his library
+ genitive, male owner
+ of %1's library
+ genitive, male owner
+
+
+
+
+ her library
+ accusative, female owner
+
+
+
+ %1's library
- accusative
+ accusative, female owner
-
- his graveyard
- nominative
+
+ his library
+ accusative, male owner
-
+
+ %1's library
+ accusative, male owner
+
+
+
+
+ her graveyard
+ nominative, female owner
+
+
+
+ %1's graveyard
- nominative
+ nominative, female owner
- of his graveyard
- genitive
+ his graveyard
+ nominative, male owner
+ %1's graveyard
+ nominative, male owner
+
+
+
+
+ of her graveyard
+ genitive, female owner
+
+
+
+ of %1's graveyard
- genitive
+ genitive, female owner
- his graveyard
- accusative
+ of his graveyard
+ genitive, male owner
+ of %1's graveyard
+ genitive, male owner
+
+
+
+
+ her graveyard
+ accusative, female owner
+
+
+
+ %1's graveyard
- accusative
+ accusative, female owner
-
- his exile
- nominative
+
+ his graveyard
+ accusative, male owner
-
+
+ %1's graveyard
+ accusative, male owner
+
+
+
+
+ her exile
+ nominative, female owner
+
+
+
+ %1's exile
- nominative
+ nominative, female owner
- of his exile
- genitive
+ his exile
+ nominative, male owner
+ %1's exile
+ nominative, male owner
+
+
+
+
+ of her exile
+ genitive, female owner
+
+
+
+ of %1's exile
- genitive
+ genitive, female owner
- his exile
- accusative
+ of his exile
+ genitive, male owner
+ of %1's exile
+ genitive, male owner
+
+
+
+
+ her exile
+ accusative, female owner
+
+
+
+ %1's exile
- accusative
+ accusative, female owner
-
- his sideboard
- nominative
+
+ his exile
+ accusative, male owner
-
+
+ %1's exile
+ accusative, male owner
+
+
+
+
+ her sideboard
+ nominative, female owner
+
+
+
+ %1's sideboard
- nominative
+ nominative, female owner
- of his sideboard
- genitive
+ his sideboard
+ nominative, male owner
+ %1's sideboard
+ nominative, male owner
+
+
+
+
+ of her sideboard
+ genitive, female owner
+
+
+
+ of %1's sideboard
- genitive
+ genitive, female owner
- his sideboard
- accusative
+ of his sideboard
+ genitive, male owner
+ of %1's sideboard
+ genitive, male owner
+
+
+
+
+ her sideboard
+ accusative, female owner
+
+
+
+ %1's sideboard
- accusative
+ accusative, female owner
+
+
+
+
+ his sideboard
+ accusative, male owner
+
+
+
+
+ %1's sideboard
+ accusative, male owner
@@ -1427,52 +1607,57 @@ Local version is %1, remote version is %2.
MessageLogWidget
-
+ Connecting to %1...
-
+ Disconnected from server.
-
+ Invalid password.
-
+ Protocol error.
-
+ The game has been closed.
-
+ %1 is now watching the game.
-
+ %1 is not watching the game any more.
-
+ %1 is not ready to start the game any more.
+ %1 shuffles %2.
+
+
+
+ %1 rolls a %2 with a %3-sided die.
-
+ %1 draws %n card(s).%1 draws a card.
@@ -1480,158 +1665,208 @@ Local version is %1, remote version is %2.
-
+ %1 undoes his last draw.
-
+
+ %1 undoes her last draw.
+
+
+
+ %1 undoes his last draw (%2).
-
+
+ %1 undoes her last draw (%2).
+
+
+
+ from table
-
+ from graveyard
-
+ from exile
-
+ from hand
-
+ the bottom card of his library
-
+
+ the bottom card of her library
+
+
+
+ from the bottom of his library
-
- the top card of his library
-
-
-
-
- from the top of his library
+
+ from the bottom of her library
+ the top card of his library
+
+
+
+
+ the top card of her library
+
+
+
+
+ from the top of his library
+
+
+
+
+ from the top of her library
+
+
+
+ from library
-
+ from sideboard
-
+ from the stack
-
+ %1 gives %2 control over %3.
-
+ %1 puts %2 into play tapped%3.
-
+ %1 puts %2 into play%3.
-
+ %1 puts %2%3 into graveyard.
-
+ %1 exiles %2%3.
-
+ %1 moves %2%3 to hand.
-
+ %1 puts %2%3 into his library.
-
+
+ %1 puts %2%3 into her library.
+
+
+
+ %1 puts %2%3 on bottom of his library.
-
+
+ %1 puts %2%3 on bottom of her library.
+
+
+
+ %1 puts %2%3 on top of his library.
-
- %1 puts %2%3 into his library at position %4.
-
-
-
-
- %1 moves %2%3 to sideboard.
+
+ %1 puts %2%3 on top of her library.
+ %1 puts %2%3 into his library at position %4.
+
+
+
+
+ %1 puts %2%3 into her library at position %4.
+
+
+
+
+ %1 moves %2%3 to sideboard.
+
+
+
+ %1 plays %2%3.
-
-
+
+ a card
-
+ %1 flips %2 face-down.
-
+ %1 flips %2 face-up.
-
+ %1 attaches %2 to %3's %4.
-
+ %1 unattaches %2.
-
+ %1 points from %2's %3 to %4's %5.
@@ -1650,7 +1885,7 @@ Local version is %1, remote version is %2.
-
+ red
@@ -1658,7 +1893,7 @@ Local version is %1, remote version is %2.
-
+ yellow
@@ -1666,7 +1901,7 @@ Local version is %1, remote version is %2.
-
+ green
@@ -1674,77 +1909,77 @@ Local version is %1, remote version is %2.
-
+ %1 sets counter %2 to %3 (%4%5).
-
+ %1 sets PT of %2 to %3.
-
+ %1 sets annotation of %2 to %3.
-
+ %1 is looking at the top %2 cards %3.
-
+ The game has started.
-
+ Connected.
-
+ Protocol version mismatch. Client: %1, Server: %2
-
+ You have joined game #%1.
-
+ %1 has joined the game.
-
+ %1 has left the game.
-
+ %1 has loaded a local deck.
-
+ %1 has loaded deck #%2.
-
+ %1 is ready to start the game.
-
+ %1 has conceded the game.
-
+ %1 takes a mulligan to %n.
@@ -1752,27 +1987,32 @@ Local version is %1, remote version is %2.
-
+ %1 draws his initial hand.
-
+
+ %1 draws her initial hand.
+
+
+
+ %1 destroys %2.
-
+ %1 creates token: %2%3.
-
+ %1 points from %2's %3 to %4.
-
+ %1 places %n %2 counter(s) on %3 (now %4).%1 places a %2 counter on %3 (now %4).
@@ -1780,7 +2020,7 @@ Local version is %1, remote version is %2.
-
+ %1 removes %n %2 counter(s) from %3 (now %4).%1 removes a %2 counter from %3 (now %4).
@@ -1788,142 +2028,142 @@ Local version is %1, remote version is %2.
-
+
+ her permanents
+
+
+
+ %1 %2 %3.
-
+ %1 is looking at %2.
-
+ %1 stops looking at %2.
-
+ %1 reveals %2 to %3.
-
+ %1 reveals %2.
-
+ ending phase
-
+ It is now %1's turn.
-
- %1 shuffles his library.
-
-
-
-
+ %1 randomly reveals %2%3 to %4.
-
+ %1 randomly reveals %2%3.
-
+ %1 reveals %2%3 to %4.
-
+ %1 reveals %2%3.
-
+ untap step
-
+ upkeep step
-
+ draw step
-
+ first main phase
-
+ beginning of combat step
-
+ declare attackers step
-
+ declare blockers step
-
+ combat damage step
-
+ end of combat step
-
+ second main phase
-
+ It is now the %1.
-
+ taps
-
+ untaps
-
+ %1 sets %2 to not untap normally.
-
+ %1 sets %2 to untap normally.
-
+ his permanents
@@ -2795,42 +3035,47 @@ Please enter a name:
UserInfoBox
-
+ User information
-
+ Real name:
-
+
+ Gender:
+
+
+
+ Location:
-
+ User level:
-
+ Administrator
-
- Judge
+
+ Moderator
-
+ Registered user
-
+ Unregistered user
diff --git a/cockatrice/translations/cockatrice_es.ts b/cockatrice/translations/cockatrice_es.ts
index 6fe34f61..116265d5 100644
--- a/cockatrice/translations/cockatrice_es.ts
+++ b/cockatrice/translations/cockatrice_es.ts
@@ -485,40 +485,34 @@
de la reserva &de %1
- his handnominative
- su mano
+ su mano
- %1's handnominative
- mano de %1
+ mano de %1
- of his handgenitive
- de su mano
+ de su mano
- of %1's handgenitive
- de la mano de %1
+ de la mano de %1
- his handaccusative
- su mano
+ su mano
- %1's handaccusative
- mano de %1
+ mano de %1his hand
@@ -531,40 +525,34 @@
mano &de %1
- his librarynominative
- su biblioteca
+ su biblioteca
- %1's librarynominative
- biblioteca de %1
+ biblioteca de %1
- of his librarygenitive
- de su biblioteca
+ de su biblioteca
- of %1's librarygenitive
- de la biblioteca de %1
+ de la biblioteca de %1
- his libraryaccusative
- su biblioteca
+ su biblioteca
- %1's libraryaccusative
- biblioteca de %1
+ biblioteca de %1his library
@@ -577,40 +565,394 @@
biblioteca &de %1
-
- his graveyard
- nominative
- su cementerio
+
+ her hand
+ nominative, female owner
+
-
- %1's graveyard
- nominative
- cementerio de %1
+
+ %1's hand
+ nominative, female owner
+
+
+
+
+ his hand
+ nominative, male owner
+ su mano
+
+
+
+ %1's hand
+ nominative, male owner
+
+
+
+
+ of her hand
+ genitive, female owner
+
+
+
+
+ of %1's hand
+ genitive, female owner
+
+
+
+
+ of his hand
+ genitive, male owner
+ de su mano
+
+
+
+ of %1's hand
+ genitive, male owner
+
+
+
+
+ her hand
+ accusative, female owner
+
+
+
+
+ %1's hand
+ accusative, female owner
+
+
+
+
+ his hand
+ accusative, male owner
+ su mano
+
+
+
+ %1's hand
+ accusative, male owner
+
+
+
+
+ her library
+ nominative, female owner
+
+
+
+
+ %1's library
+ nominative, female owner
+
+
+
+
+ his library
+ nominative, male owner
+ su biblioteca
+
+
+
+ %1's library
+ nominative, male owner
+
+
+
+
+ of her library
+ genitive, female owner
+
+
+
+
+ of %1's library
+ genitive, female owner
+
+
+
+
+ of his library
+ genitive, male owner
+ de su biblioteca
+
+
+
+ of %1's library
+ genitive, male owner
+
+
+
+
+ her library
+ accusative, female owner
+
+
+
+
+ %1's library
+ accusative, female owner
+
+
+
+
+ his library
+ accusative, male owner
+ su biblioteca
+
+
+
+ %1's library
+ accusative, male owner
+
+ her graveyard
+ nominative, female owner
+
+
+
+
+ %1's graveyard
+ nominative, female owner
+
+
+
+
+ his graveyard
+ nominative, male owner
+ su cementerio
+
+
+
+ %1's graveyard
+ nominative, male owner
+
+
+
+
+ of her graveyard
+ genitive, female owner
+
+
+
+
+ of %1's graveyard
+ genitive, female owner
+
+
+
+
+ of his graveyard
+ genitive, male owner
+ de su cementerio
+
+
+
+ of %1's graveyard
+ genitive, male owner
+
+
+
+
+ her graveyard
+ accusative, female owner
+
+
+
+
+ %1's graveyard
+ accusative, female owner
+
+
+
+
+ his graveyard
+ accusative, male owner
+ su cementerio
+
+
+
+ %1's graveyard
+ accusative, male owner
+
+
+
+
+ her exile
+ nominative, female owner
+
+
+
+
+ %1's exile
+ nominative, female owner
+ el exilio de %1
+
+
+
+ his exile
+ nominative, male owner
+ su exilio
+
+
+
+ %1's exile
+ nominative, male owner
+ el exilio de %1
+
+
+
+ of her exile
+ genitive, female owner
+
+
+
+
+ of %1's exile
+ genitive, female owner
+ del exilio de %1
+
+
+
+ of his exile
+ genitive, male owner
+ de su exilio
+
+
+
+ of %1's exile
+ genitive, male owner
+ del exilio de %1
+
+
+
+ her exile
+ accusative, female owner
+
+
+
+
+ %1's exile
+ accusative, female owner
+ el exilio de %1
+
+
+
+ his exile
+ accusative, male owner
+ su exilio
+
+
+
+ %1's exile
+ accusative, male owner
+ el exilio de %1
+
+
+
+ her sideboard
+ nominative, female owner
+
+
+
+
+ %1's sideboard
+ nominative, female owner
+ la reserva de %1
+
+
+
+ his sideboard
+ nominative, male owner
+ su reserva
+
+
+
+ %1's sideboard
+ nominative, male owner
+ la reserva de %1
+
+
+
+ of her sideboard
+ genitive, female owner
+
+
+
+
+ of %1's sideboard
+ genitive, female owner
+
+
+
+
+ of his sideboard
+ genitive, male owner
+ de su reserva
+
+
+
+ of %1's sideboard
+ genitive, male owner
+
+
+
+
+ her sideboard
+ accusative, female owner
+
+
+
+
+ %1's sideboard
+ accusative, female owner
+ la reserva de %1
+
+
+
+ his sideboard
+ accusative, male owner
+ su reserva
+
+
+
+ %1's sideboard
+ accusative, male owner
+ la reserva de %1
+
+
+ his graveyard
+ nominative
+ su cementerio
+
+
+ %1's graveyard
+ nominative
+ cementerio de %1
+
+ of his graveyardgenitive
- de su cementerio
+ de su cementerio
- of %1's graveyardgenitive
- del cementerio de %1
+ del cementerio de %1
- his graveyardaccusative
- su cementerio
+ su cementerio
- %1's graveyardaccusative
- cementerio de %1
+ cementerio de %1his graveyard
@@ -623,40 +965,34 @@
cementerio &de %1
- his exilenominative
- su exilio
+ su exilio
- %1's exilenominative
- el exilio de %1
+ el exilio de %1
- of his exilegenitive
- de su exilio
+ de su exilio
- of %1's exilegenitive
- del exilio de %1
+ del exilio de %1
- his exileaccusative
- su exilio
+ su exilio
- %1's exileaccusative
- el exilio de %1
+ el exilio de %1his exile
@@ -669,40 +1005,34 @@
el exilio de %1
- his sideboardnominative
- su reserva
+ su reserva
- %1's sideboardnominative
- la reserva de %1
+ la reserva de %1
- of his sideboardgenitive
- de su reserva
+ de su reserva
- of %1's sideboardgenitive
- de la reserva de %1
+ de la reserva de %1
- his sideboardaccusative
- su reserva
+ su reserva
- %1's sideboardaccusative
- la reserva de %1
+ la reserva de %1his sideboard
@@ -1650,52 +1980,57 @@ La versión local es %1, la versión remota es %2.
MessageLogWidget
-
+ Connecting to %1...Conectando a %1...
-
+ Disconnected from server.Desconectado del servidor.
-
+ Invalid password.Contraseña incorrecta.
-
+ Protocol error.Error del protocolo.
-
+ The game has been closed.La partida ha sido cerrada.
-
+ %1 is now watching the game.%1 está ahora observando la partida.
-
+ %1 is not watching the game any more.%1 ya no está observado más la partida.
-
+ %1 is not ready to start the game any more.%1 ya no está listo para empezar el juego.
+ %1 shuffles %2.
+
+
+
+ %1 rolls a %2 with a %3-sided die.%1 sacó un %2 con un dado de %3 caras.
-
+ %1 draws %n card(s).%1 roba %n carta.
@@ -1703,158 +2038,208 @@ La versión local es %1, la versión remota es %2.
-
+ %1 undoes his last draw.%1 deshace su último robo.
-
+
+ %1 undoes her last draw.
+
+
+
+ %1 undoes his last draw (%2).%1 deshace su último robo (%2).
-
+
+ %1 undoes her last draw (%2).
+
+
+
+ from table de la mesa
-
+ from graveyard del cementerio
-
+ from exile del exilio
-
+ from hand de la mano
-
+ the bottom card of his libraryel fondo de la biblioteca
-
+
+ the bottom card of her library
+
+
+
+ from the bottom of his library del fondo de la biblioteca
-
+
+ from the bottom of her library
+
+
+
+ the top card of his libraryla parte superior de la biblioteca
-
+
+ the top card of her library
+
+
+
+ from the top of his library de la parte superior de la biblioteca
-
+
+ from the top of her library
+
+
+
+ from library de la biblioteca
-
+ from sideboard de la reserva
-
+ from the stack de la pila
-
+ %1 gives %2 control over %3.%1 entrega a %2 el control sobre %3.
-
+ %1 puts %2 into play tapped%3.%1 pone %2 en juego%3 girado.
-
+ %1 puts %2 into play%3.%1 pone %2 en juego%3.
-
+ %1 puts %2%3 into graveyard.%1 pone %2%3 en el cementerio.
-
+ %1 exiles %2%3.%1 exilia %2%3.
-
+ %1 moves %2%3 to hand.%1 mueve %2%3 a la mano.
-
+ %1 puts %2%3 into his library.%1 pone %2%3 en la biblioteca.
-
+
+ %1 puts %2%3 into her library.
+
+
+
+ %1 puts %2%3 on bottom of his library.%1 pone %2%3 en la parte inferior de su biblioteca.
-
+
+ %1 puts %2%3 on bottom of her library.
+
+
+
+ %1 puts %2%3 on top of his library.%1 pone %2%3 en la parte superior de su biblioteca.
-
+
+ %1 puts %2%3 on top of her library.
+
+
+
+ %1 puts %2%3 into his library at position %4.%1 pone %2%3 en su biblioteca en la posición %4.
-
+
+ %1 puts %2%3 into her library at position %4.
+
+
+
+ %1 moves %2%3 to sideboard.%1 mueve %2%3 a la reserva.
-
+ %1 plays %2%3.%1 juega %2%3.
-
-
+
+ a carduna carta
-
+ %1 flips %2 face-down.%1 voltea %2 boca abajo.
-
+ %1 flips %2 face-up.%1 voltea %2 boca arriba.
-
+ %1 attaches %2 to %3's %4.%1 anexa %2 a el %4 de %3.
-
+ %1 unattaches %2.%1 desanexa %2.
-
+ %1 points from %2's %3 to %4's %5.%1 apunta desde el %3 de %2 al %5 de %4.
@@ -1873,7 +2258,7 @@ La versión local es %1, la versión remota es %2.
-
+ redrojo
@@ -1881,7 +2266,7 @@ La versión local es %1, la versión remota es %2.
-
+ yellowamarillo
@@ -1889,7 +2274,7 @@ La versión local es %1, la versión remota es %2.
-
+ greenverde
@@ -1897,72 +2282,72 @@ La versión local es %1, la versión remota es %2.
-
+ %1 sets counter %2 to %3 (%4%5).%1 establece los contadores de %2 a %3 (%4%5).
-
+ %1 sets PT of %2 to %3.%1 establece F/R de %2 a %3.
-
+ %1 sets annotation of %2 to %3.%1 establece la anotación de %2 a %3.
-
+ %1 is looking at the top %2 cards %3.%1 esta mirando las primeras %2 cartas de %3.
-
+ The game has started.La partida ha comenzado.
-
+ Connected.Conectado.
-
+ Protocol version mismatch. Client: %1, Server: %2La versión del protocolo es diferente. Cliente: %1, Servidor: %2
-
+ You have joined game #%1.Te has unido a la partida #%1.
-
+ %1 has joined the game.%1 se ha unido a la partida.
-
+ %1 has left the game.%1 ha dejado la partida.
-
+ %1 has loaded a local deck.%1 ha cargado un mazo local.
-
+ %1 has loaded deck #%2.%1 ha cargado el mazo #%2.
-
+ %1 is ready to start the game.%1 está preparado para empezar la partida.
-
+ %1 has conceded the game.%1 ha concedido la partida.
@@ -1975,22 +2360,22 @@ La versión local es %1, la versión remota es %2.
%1 roba %2 cartas.
-
+ %1 destroys %2.%1 destruye %2.
-
+ %1 creates token: %2%3.%1 crea una ficha: %2%3.
-
+ %1 points from %2's %3 to %4.%1 apunta desde el %3 de %2 a %4.
-
+ %1 places %n %2 counter(s) on %3 (now %4).%1 pone %n %2 contador en %3 (ahora %4).
@@ -1998,7 +2383,7 @@ La versión local es %1, la versión remota es %2.
-
+ %1 removes %n %2 counter(s) from %3 (now %4).%1 remueve %n %2 contador en %3 (ahora %4).
@@ -2006,47 +2391,46 @@ La versión local es %1, la versión remota es %2.
-
+ %1 %2 %3.%1 %2 %3.
-
+ %1 is looking at %2.%1 está mirando: %2.
-
+ %1 stops looking at %2.%1 termina de mirar: %2.
-
+ %1 reveals %2 to %3.%1 revela %2 a %3.
-
+ %1 reveals %2.%1 revela %2.
-
+ ending phasefase de fin de turno
-
+ It is now %1's turn.Es el turno de %1.
- %1 shuffles his library.
- %1 baraja su biblioteca.
+ %1 baraja su biblioteca.
-
+ %1 takes a mulligan to %n.
@@ -2054,107 +2438,117 @@ La versión local es %1, la versión remota es %2.
-
+ %1 draws his initial hand.
-
+
+ %1 draws her initial hand.
+
+
+
+
+ her permanents
+
+
+
+ %1 randomly reveals %2%3 to %4.%1 revela aleatoriamente %2%3 a %4.
-
+ %1 randomly reveals %2%3.%1 revela aleatoriamente %2%3.
-
+ %1 reveals %2%3 to %4.%1 revela %2%3 a %4.
-
+ %1 reveals %2%3.%1 revela %2%3.
-
+ untap steppaso de enderezar
-
+ upkeep steppaso de mantenimiento
-
+ draw steppaso de robar
-
+ first main phaseprimera fase principal
-
+ beginning of combat steppaso de inicio de combate
-
+ declare attackers steppaso de declarar atacantes
-
+ declare blockers steppaso de declarar bloqueadores
-
+ combat damage steppaso de daño de combate
-
+ end of combat steppaso de fin de combate
-
+ second main phasesegunda fase principal
-
+ It is now the %1.Ahora es el %1.
-
+ tapsgira
-
+ untapsendereza
-
+ %1 sets %2 to not untap normally.%1 establece que %2 no se endereze normalmente.
-
+ %1 sets %2 to untap normally.%1 establece que %2 se endereze normalmente.
-
+ his permanentssus permanentes
@@ -3097,42 +3491,51 @@ Por favor, introduzca un nombre:
UserInfoBox
-
+ User informationInformación del usuario
-
+ Real name:Nombre real:
-
+
+ Gender:
+
+
+
+ Location:Localización:
-
+ User level:Nivel de usuario:
-
+ AdministratorAdministrador
-
- Judge
- Juez
+
+ Moderator
+
-
+ Judge
+ Juez
+
+
+ Registered userUsuario registrado
-
+ Unregistered userUsuario no registrado
diff --git a/cockatrice/translations/cockatrice_fr.ts b/cockatrice/translations/cockatrice_fr.ts
index 242d66bb..de17833e 100644
--- a/cockatrice/translations/cockatrice_fr.ts
+++ b/cockatrice/translations/cockatrice_fr.ts
@@ -397,184 +397,514 @@
CardZone
- his handnominative
- sa main
+ sa main
- %1's handnominative
- main de %1
+ main de %1
- of his handgenitive
- de sa main
+ de sa main
+
+
+ of %1's hand
+ genitive
+ de la main de %1
+
+
+ his hand
+ accusative
+ sa main
+
+
+ %1's hand
+ accusative
+ main de %1
+
+
+ his library
+ nominative
+ sa bibliothèque
+
+
+ %1's library
+ nominative
+ bibliothèque de %1
+
+
+ of his library
+ genitive
+ de sa bibliothèque
+
+
+ of %1's library
+ genitive
+ de la bibliothèque de %1
+
+
+ his library
+ accusative
+ sa bibliothèque
+
+
+ %1's library
+ accusative
+ bibliothèque de %1
- of %1's hand
- genitive
- de la main de %1
+ her hand
+ nominative, female owner
+
-
- his hand
- accusative
- sa main
-
-
-
+ %1's hand
- accusative
- main de %1
+ nominative, female owner
+ main de %1
-
- his library
- nominative
- sa bibliothèque
+
+ his hand
+ nominative, male owner
+ sa main
-
+
+ %1's hand
+ nominative, male owner
+ main de %1
+
+
+
+ of her hand
+ genitive, female owner
+
+
+
+
+ of %1's hand
+ genitive, female owner
+ de la main de %1
+
+
+
+ of his hand
+ genitive, male owner
+ de sa main
+
+
+
+ of %1's hand
+ genitive, male owner
+ de la main de %1
+
+
+
+ her hand
+ accusative, female owner
+
+
+
+
+ %1's hand
+ accusative, female owner
+ main de %1
+
+
+
+ his hand
+ accusative, male owner
+ sa main
+
+
+
+ %1's hand
+ accusative, male owner
+ main de %1
+
+
+
+ her library
+ nominative, female owner
+
+
+
+ %1's library
- nominative
- bibliothèque de %1
+ nominative, female owner
+ bibliothèque de %1
- of his library
- genitive
- de sa bibliothèque
+ his library
+ nominative, male owner
+ sa bibliothèque
+ %1's library
+ nominative, male owner
+ bibliothèque de %1
+
+
+
+ of her library
+ genitive, female owner
+
+
+
+ of %1's library
- genitive
- de la bibliothèque de %1
+ genitive, female owner
+ de la bibliothèque de %1
- his library
- accusative
- sa bibliothèque
+ of his library
+ genitive, male owner
+ de sa bibliothèque
+ of %1's library
+ genitive, male owner
+ de la bibliothèque de %1
+
+
+
+ her library
+ accusative, female owner
+
+
+
+ %1's library
- accusative
- bibliothèque de %1
+ accusative, female owner
+ bibliothèque de %1
-
- his graveyard
- nominative
- son cimetière
+
+ his library
+ accusative, male owner
+ sa bibliothèque
-
- %1's graveyard
- nominative
- le cimetière de %1
+
+ %1's library
+ accusative, male owner
+ bibliothèque de %1
+ her graveyard
+ nominative, female owner
+
+
+
+
+ %1's graveyard
+ nominative, female owner
+ le cimetière de %1
+
+
+
+ his graveyard
+ nominative, male owner
+ son cimetière
+
+
+
+ %1's graveyard
+ nominative, male owner
+ le cimetière de %1
+
+
+
+ of her graveyard
+ genitive, female owner
+
+
+
+
+ of %1's graveyard
+ genitive, female owner
+ du cimetière de %1
+
+
+
+ of his graveyard
+ genitive, male owner
+ de son cimetière
+
+
+
+ of %1's graveyard
+ genitive, male owner
+ du cimetière de %1
+
+
+
+ her graveyard
+ accusative, female owner
+
+
+
+
+ %1's graveyard
+ accusative, female owner
+ le cimetière de %1
+
+
+
+ his graveyard
+ accusative, male owner
+ son cimetière
+
+
+
+ %1's graveyard
+ accusative, male owner
+ le cimetière de %1
+
+
+
+ her exile
+ nominative, female owner
+
+
+
+
+ %1's exile
+ nominative, female owner
+ la zone exil de %1
+
+
+
+ his exile
+ nominative, male owner
+ sa zone exil
+
+
+
+ %1's exile
+ nominative, male owner
+ la zone exil de %1
+
+
+
+ of her exile
+ genitive, female owner
+
+
+
+
+ of %1's exile
+ genitive, female owner
+ de la zone exil de %1
+
+
+
+ of his exile
+ genitive, male owner
+ de sa zone exil
+
+
+
+ of %1's exile
+ genitive, male owner
+ de la zone exil de %1
+
+
+
+ her exile
+ accusative, female owner
+
+
+
+
+ %1's exile
+ accusative, female owner
+ la zone exil de %1
+
+
+
+ his exile
+ accusative, male owner
+ sa zone exil
+
+
+
+ %1's exile
+ accusative, male owner
+ la zone exil de %1
+
+
+
+ her sideboard
+ nominative, female owner
+
+
+
+
+ %1's sideboard
+ nominative, female owner
+ la réserve de %1
+
+
+
+ his sideboard
+ nominative, male owner
+ sa réserve
+
+
+
+ %1's sideboard
+ nominative, male owner
+ la réserve de %1
+
+
+
+ of her sideboard
+ genitive, female owner
+
+
+
+
+ of %1's sideboard
+ genitive, female owner
+ de la réserve de %1
+
+
+
+ of his sideboard
+ genitive, male owner
+ de sa réserve
+
+
+
+ of %1's sideboard
+ genitive, male owner
+ de la réserve de %1
+
+
+
+ her sideboard
+ accusative, female owner
+
+
+
+
+ %1's sideboard
+ accusative, female owner
+ la réserve de %1
+
+
+
+ his sideboard
+ accusative, male owner
+ sa réserve
+
+
+
+ %1's sideboard
+ accusative, male owner
+ la réserve de %1
+
+
+ his graveyard
+ nominative
+ son cimetière
+
+
+ %1's graveyard
+ nominative
+ le cimetière de %1
+
+ of his graveyardgenitive
- de son cimetière
+ de son cimetière
- of %1's graveyardgenitive
- du cimetière de %1
+ du cimetière de %1
- his graveyardaccusative
- son cimetière
+ son cimetière
- %1's graveyardaccusative
- le cimetière de %1
+ le cimetière de %1
- his exilenominative
- sa zone exil
+ sa zone exil
- %1's exilenominative
- la zone exil de %1
+ la zone exil de %1
- of his exilegenitive
- de sa zone exil
+ de sa zone exil
- of %1's exilegenitive
- de la zone exil de %1
+ de la zone exil de %1
- his exileaccusative
- sa zone exil
+ sa zone exil
- %1's exileaccusative
- la zone exil de %1
+ la zone exil de %1
- his sideboardnominative
- sa réserve
+ sa réserve
- %1's sideboardnominative
- la réserve de %1
+ la réserve de %1
- of his sideboardgenitive
- de sa réserve
+ de sa réserve
- of %1's sideboardgenitive
- de la réserve de %1
+ de la réserve de %1
- his sideboardaccusative
- sa réserve
+ sa réserve
- %1's sideboardaccusative
- la réserve de %1
+ la réserve de %1
@@ -1507,103 +1837,102 @@ La version la plus récente est %1, l'ancienne version est %2.
MessageLogWidget
-
+ Connecting to %1...Connexion à %1...
-
+ Connected.Connecté.
-
+ Disconnected from server.Déconnecté du serveur.
-
+ Invalid password.Mot de passe invalide.
-
+ Protocol version mismatch. Client: %1, Server: %2Version de protocole différente. Version locale: %1 ,version distante: %2
-
+ Protocol error.Erreur de protocole.
-
+ You have joined game #%1.Vous avez rejoint la partie #%1.
-
+ %1 has joined the game.%1 a rejoint la partie.
-
+ %1 has left the game.%1 a quitté la partie.
-
+ The game has been closed.La partie a été fermée.
-
+ %1 is now watching the game.%1 est maintenant spectateur.
-
+ %1 is not watching the game any more.%1 n'est plus spectateur.
-
+ %1 has loaded a local deck.%1 a chargé un deck local.
-
+ %1 has loaded deck #%2.%1 a chargé le deck #%2.
-
+ %1 is ready to start the game.%1 est prêt à démarrer la partie.
-
+ %1 is not ready to start the game any more.%1 n'est plus prêt à démarrer la partie.
-
+ %1 has conceded the game.partie ou jeu%1 a concédé la partie.
-
+ The game has started.La partie commence.
- %1 shuffles his library.
- %1 mélange sa bibliothèque.
+ %1 mélange sa bibliothèque.
-
+ %1 rolls a %2 with a %3-sided die.is it always a dice?%1 lance un %2 à %3 faces.
@@ -1617,124 +1946,169 @@ La version la plus récente est %1, l'ancienne version est %2.%1 pioche %2 cartes.
-
+ from table depuis le champ de bataille
-
+ from graveyard depuis son cimetière
-
+ from exile depuis la zone exil
-
+ from hand depuis sa main
-
+ the bottom card of his libraryla carte du dessous de sa bibliothèque
-
+
+ the bottom card of her library
+
+
+
+ from the bottom of his library du dessous de sa bibliothèque
-
+
+ from the bottom of her library
+
+
+
+ the top card of his libraryle carte du dessus de sa bibliothèque
-
+
+ the top card of her library
+
+
+
+ from the top of his library du dessus de sa bibliothèque
-
+
+ from the top of her library
+
+
+
+ from library depuis sa bibliothèque
-
+ from sideboard depuis sa réserve
-
+ from the stack depuis la pile
-
+ %1 puts %2 into play tapped%3.%1 met %2 en jeu engagé%3.
-
+ %1 puts %2 into play%3.what is %3? plz exemple (resp. by Ranma : XX met island en jeu -depuis sa main-.)%1 met %2 en jeu %3.
-
+ %1 puts %2%3 into graveyard.%1 met %2%3 dans son cimetière.
-
+ %1 exiles %2%3.%1 exile %2%3.
-
+ %1 moves %2%3 to hand.%1 met %2%3 dans sa main.
-
+ %1 puts %2%3 into his library.%1 met %2%3 dans sa bibliothèque.
-
+
+ %1 puts %2%3 into her library.
+
+
+
+ %1 puts %2%3 on bottom of his library.%1 met %2%3 en-dessous de sa bibliothèque.
-
+
+ %1 puts %2%3 on bottom of her library.
+
+
+
+ %1 puts %2%3 on top of his library.%1 met %2%3 au-dessus de sa bibliothèque.
-
+
+ %1 puts %2%3 on top of her library.
+
+
+
+ %1 puts %2%3 into his library at position %4.%1 met %2%3 dans sa bibliothèque à la position n°%4.
-
+
+ %1 puts %2%3 into her library at position %4.
+
+
+
+ %1 moves %2%3 to sideboard.%1 met %2%3 à sa réserve.
-
+ %1 plays %2%3.%1 joue %2%3.
-
-
+
+ a cardune carte
+
+
+ %1 shuffles %2.
+
+
-
+ %1 draws %n card(s).%1 pioche %n carte.
@@ -1742,22 +2116,32 @@ La version la plus récente est %1, l'ancienne version est %2.
-
+ %1 undoes his last draw.%1 annule sa dernière pioche.
-
+
+ %1 undoes her last draw.
+
+
+
+ %1 undoes his last draw (%2).%1 annule sa dernière pioche (%2).
-
+
+ %1 undoes her last draw (%2).
+
+
+
+ %1 gives %2 control over %3.%1 donne le contrôle de %2 à %3.
-
+ %1 takes a mulligan to %n.
@@ -1765,49 +2149,54 @@ La version la plus récente est %1, l'ancienne version est %2.
-
+ %1 draws his initial hand.
-
+
+ %1 draws her initial hand.
+
+
+
+ %1 flips %2 face-down.%1 retourne %2 face cachée.
-
+ %1 flips %2 face-up.%1 retourne %2 face visible.
-
+ %1 destroys %2.%1 détruit %2.
-
+ %1 attaches %2 to %3's %4.need exemple (Resp'.by Ranma: JoueurA attache Adventuring Gear sur -Plated Geopede- de -JoueurB-.)%1 attache %2 sur %4 de %3.
-
+ %1 unattaches %2.%1 détache %2.
-
+ %1 creates token: %2%3.%1 crée un jeton %2%3.
-
+ %1 points from %2's %3 to %4.need exemple%1 désigne le %3 de %2 à %4.
-
+ %1 points from %2's %3 to %4's %5.need exemple%1 désigne le %3 de %2 à %5 de %4.
@@ -1829,7 +2218,7 @@ La version la plus récente est %1, l'ancienne version est %2.
-
+ %1 places %n %2 counter(s) on %3 (now %4).%1 met %n %2 marqueur sur %3 (maintenant %4).
@@ -1837,7 +2226,7 @@ La version la plus récente est %1, l'ancienne version est %2.
-
+ %1 removes %n %2 counter(s) from %3 (now %4).%1 retire %n %2 marqueur de %3 (maintenant %4).
@@ -1845,7 +2234,7 @@ La version la plus récente est %1, l'ancienne version est %2.
-
+ redrouge
@@ -1853,7 +2242,7 @@ La version la plus récente est %1, l'ancienne version est %2.
-
+ yellowjaune
@@ -1861,7 +2250,7 @@ La version la plus récente est %1, l'ancienne version est %2.
-
+ greenvert
@@ -1869,164 +2258,169 @@ La version la plus récente est %1, l'ancienne version est %2.
-
+ his permanentsses permanents
-
+
+ her permanents
+
+
+
+ %1 %2 %3.wtf ?%1 %2 %3.
-
+ tapsengage
-
+ untapsdégage
-
+ %1 sets counter %2 to %3 (%4%5).need exemple%1 met les marqueurs %2 à %3 (%4%5).
-
+ %1 sets %2 to not untap normally.need exemple%2 de %1 ne se dégagera pas lors de l'étape de dégagement.
-
+ %1 sets %2 to untap normally.%2 de %1 se dégagera lors de l'étape de dégagement.
-
+ %1 sets PT of %2 to %3.exemple plz%1 change la F/E de %2 à %3.
-
+ %1 sets annotation of %2 to %3.%1 met l'annotation %3 à %2.
-
+ %1 is looking at the top %2 cards %3.exemple plz%1 regarde les %2 cartes du dessus %3.
-
+ %1 is looking at %2.exemple plz%1 regarde %2.
-
+ %1 stops looking at %2.need exemple to be sure%1 arrête de regarder %2.
-
+ %1 reveals %2 to %3.%1 révèle %2 à %3.
-
+ %1 reveals %2.%1 révèle %2.
-
+ %1 randomly reveals %2%3 to %4.%1 révèle au hasard %2%3 à %4.
-
+ %1 randomly reveals %2%3.%1 révèle au hasard %2%3.
-
+ %1 reveals %2%3 to %4.%1 révèle %2%3 à %4.
-
+ %1 reveals %2%3.%1 révèle %2%3.
-
+ It is now %1's turn.C'est maintenant le tour de %1.
-
+ untap stepétape de dégagement
-
+ upkeep stepétape d'entretien
-
+ draw stepétape de pioche
-
+ first main phasepremière phase principale
-
+ beginning of combat stepétape de début du combat
-
+ declare attackers stepétape de déclaration des attaquants
-
+ declare blockers stepétape de déclaration des bloqueurs
-
+ combat damage stepétape de répartition et de résolution des blessures
-
+ end of combat stepétape de fin de combat
-
+ second main phaseseconde phase principale
-
+ ending phasephase de fin de tour
-
+ It is now the %1.need exempleC'est maintenant %1.
@@ -2957,43 +3351,52 @@ Entrez un nom s'il vous plaît:
UserInfoBox
-
+ User informationInformations utilisateur
-
+ Real name:Vrai nom:
-
+
+ Gender:
+
+
+
+ Location:Localisation:
-
+ User level:Rang utilisateur:
-
+ AdministratorAdministrateur
-
- Judge
- arbitre ?
- Juge
+
+ Moderator
+
-
+ Judge
+ arbitre ?
+ Juge
+
+
+ Registered userUtilisateur enregistré
-
+ Unregistered userUtilisateur non enregistré
diff --git a/cockatrice/translations/cockatrice_ja.ts b/cockatrice/translations/cockatrice_ja.ts
index 61e5c43b..4ae3575c 100644
--- a/cockatrice/translations/cockatrice_ja.ts
+++ b/cockatrice/translations/cockatrice_ja.ts
@@ -403,184 +403,364 @@
CardZone
-
- his hand
- nominative
-
+
+ her hand
+ nominative, female owner
+
-
+ %1's hand
- nominative
-
+ nominative, female owner
+
- of his hand
- genitive
-
+ his hand
+ nominative, male owner
+
+ %1's hand
+ nominative, male owner
+
+
+
+
+ of her hand
+ genitive, female owner
+
+
+
+ of %1's hand
- genitive
-
+ genitive, female owner
+
- his hand
- accusative
-
+ of his hand
+ genitive, male owner
+
+ of %1's hand
+ genitive, male owner
+
+
+
+
+ her hand
+ accusative, female owner
+
+
+
+ %1's hand
- accusative
-
+ accusative, female owner
+
-
- his library
- nominative
-
+
+ his hand
+ accusative, male owner
+
-
+
+ %1's hand
+ accusative, male owner
+
+
+
+
+ her library
+ nominative, female owner
+
+
+
+ %1's library
- nominative
-
+ nominative, female owner
+
- of his library
- genitive
-
+ his library
+ nominative, male owner
+
+ %1's library
+ nominative, male owner
+
+
+
+
+ of her library
+ genitive, female owner
+
+
+
+ of %1's library
- genitive
-
+ genitive, female owner
+
- his library
- accusative
-
+ of his library
+ genitive, male owner
+
+ of %1's library
+ genitive, male owner
+
+
+
+
+ her library
+ accusative, female owner
+
+
+
+ %1's library
- accusative
-
+ accusative, female owner
+
-
- his graveyard
- nominative
-
+
+ his library
+ accusative, male owner
+
-
+
+ %1's library
+ accusative, male owner
+
+
+
+
+ her graveyard
+ nominative, female owner
+
+
+
+ %1's graveyard
- nominative
-
+ nominative, female owner
+
- of his graveyard
- genitive
-
+ his graveyard
+ nominative, male owner
+
+ %1's graveyard
+ nominative, male owner
+
+
+
+
+ of her graveyard
+ genitive, female owner
+
+
+
+ of %1's graveyard
- genitive
-
+ genitive, female owner
+
- his graveyard
- accusative
-
+ of his graveyard
+ genitive, male owner
+
+ of %1's graveyard
+ genitive, male owner
+
+
+
+
+ her graveyard
+ accusative, female owner
+
+
+
+ %1's graveyard
- accusative
-
+ accusative, female owner
+
-
- his exile
- nominative
-
+
+ his graveyard
+ accusative, male owner
+
-
+
+ %1's graveyard
+ accusative, male owner
+
+
+
+
+ her exile
+ nominative, female owner
+
+
+
+ %1's exile
- nominative
-
+ nominative, female owner
+
- of his exile
- genitive
-
+ his exile
+ nominative, male owner
+
+ %1's exile
+ nominative, male owner
+
+
+
+
+ of her exile
+ genitive, female owner
+
+
+
+ of %1's exile
- genitive
-
+ genitive, female owner
+
- his exile
- accusative
-
+ of his exile
+ genitive, male owner
+
+ of %1's exile
+ genitive, male owner
+
+
+
+
+ her exile
+ accusative, female owner
+
+
+
+ %1's exile
- accusative
-
+ accusative, female owner
+
-
- his sideboard
- nominative
-
+
+ his exile
+ accusative, male owner
+
-
+
+ %1's exile
+ accusative, male owner
+
+
+
+
+ her sideboard
+ nominative, female owner
+
+
+
+ %1's sideboard
- nominative
-
+ nominative, female owner
+
- of his sideboard
- genitive
-
+ his sideboard
+ nominative, male owner
+
+ %1's sideboard
+ nominative, male owner
+
+
+
+
+ of her sideboard
+ genitive, female owner
+
+
+
+ of %1's sideboard
- genitive
-
+ genitive, female owner
+
- his sideboard
- accusative
-
+ of his sideboard
+ genitive, male owner
+
+ of %1's sideboard
+ genitive, male owner
+
+
+
+
+ her sideboard
+ accusative, female owner
+
+
+
+ %1's sideboard
- accusative
-
+ accusative, female owner
+
+
+
+
+ his sideboard
+ accusative, male owner
+
+
+
+
+ %1's sideboard
+ accusative, male owner
+
@@ -1484,210 +1664,265 @@ Local version is %1, remote version is %2.
MessageLogWidget
-
+ Connecting to %1...
-
+ Disconnected from server.
-
+ Invalid password.
-
+ Protocol error.
-
+ The game has been closed.
-
+ %1 is now watching the game.
-
+ %1 is not watching the game any more.
-
+ %1 is not ready to start the game any more.
+ %1 shuffles %2.
+
+
+
+ %1 rolls a %2 with a %3-sided die.
-
+ %1 draws %n card(s).
-
+ %1 undoes his last draw.
-
+
+ %1 undoes her last draw.
+
+
+
+ %1 undoes his last draw (%2).
-
+
+ %1 undoes her last draw (%2).
+
+
+
+ from table
-
+ from graveyard
-
+ from exile
-
+ from hand
-
+ the bottom card of his library
-
+
+ the bottom card of her library
+
+
+
+ from the bottom of his library
-
+
+ from the bottom of her library
+
+
+
+ the top card of his library
-
+
+ the top card of her library
+
+
+
+ from the top of his library
-
+
+ from the top of her library
+
+
+
+ from library
-
+ from sideboard
-
+ from the stack
-
+ %1 gives %2 control over %3.
-
+ %1 puts %2 into play tapped%3.
-
+ %1 puts %2 into play%3.
-
+ %1 puts %2%3 into graveyard.
-
+ %1 exiles %2%3.
-
+ %1 moves %2%3 to hand.
-
+ %1 puts %2%3 into his library.
-
+
+ %1 puts %2%3 into her library.
+
+
+
+ %1 puts %2%3 on bottom of his library.
-
+
+ %1 puts %2%3 on bottom of her library.
+
+
+
+ %1 puts %2%3 on top of his library.
-
+
+ %1 puts %2%3 on top of her library.
+
+
+
+ %1 puts %2%3 into his library at position %4.
-
+
+ %1 puts %2%3 into her library at position %4.
+
+
+
+ %1 moves %2%3 to sideboard.
-
+ %1 plays %2%3.
-
-
+
+ a card
-
+ %1 flips %2 face-down.
-
+ %1 flips %2 face-up.
-
+ %1 attaches %2 to %3's %4.
-
+ %1 unattaches %2.
-
+ %1 points from %2's %3 to %4's %5.
@@ -1704,274 +1939,279 @@ Local version is %1, remote version is %2.
-
+ red赤
-
+ yellow黄
-
+ green緑
-
+ %1 sets counter %2 to %3 (%4%5).
-
+ %1 sets PT of %2 to %3.
-
+ %1 sets annotation of %2 to %3.
-
+ %1 is looking at the top %2 cards %3.
-
+ The game has started.
-
+ Connected.
-
+ Protocol version mismatch. Client: %1, Server: %2
-
+ You have joined game #%1.
-
+ %1 has joined the game.
-
+ %1 has left the game.
-
+ %1 has loaded a local deck.
-
+ %1 has loaded deck #%2.
-
+ %1 is ready to start the game.
-
+ %1 has conceded the game.
-
+ %1 takes a mulligan to %n.
-
+ %1 draws his initial hand.
-
+
+ %1 draws her initial hand.
+
+
+
+ %1 destroys %2.
-
+ %1 creates token: %2%3.
-
+ %1 points from %2's %3 to %4.
-
+ %1 places %n %2 counter(s) on %3 (now %4).
-
+ %1 removes %n %2 counter(s) from %3 (now %4).
-
+
+ her permanents
+
+
+
+ %1 %2 %3.
-
+ %1 is looking at %2.
-
+ %1 stops looking at %2.
-
+ %1 reveals %2 to %3.
-
+ %1 reveals %2.
-
+ ending phase
-
+ It is now %1's turn.
-
- %1 shuffles his library.
-
-
-
-
+ %1 randomly reveals %2%3 to %4.
-
+ %1 randomly reveals %2%3.
-
+ %1 reveals %2%3 to %4.
-
+ %1 reveals %2%3.
-
+ untap step
-
+ upkeep step
-
+ draw step
-
+ first main phase
-
+ beginning of combat step
-
+ declare attackers step
-
+ declare blockers step
-
+ combat damage step
-
+ end of combat step
-
+ second main phase
-
+ It is now the %1.
-
+ taps
-
+ untaps
-
+ %1 sets %2 to not untap normally.
-
+ %1 sets %2 to untap normally.
-
+ his permanents
@@ -2889,42 +3129,51 @@ Please enter a name:
UserInfoBox
-
+ User informationユーザー情報
-
+ Real name:本名:
-
+
+ Gender:
+
+
+
+ Location:現在地:
-
+ User level:ユーザーレベル:
-
+ Administrator管理者
-
- Judge
- ジャッジ
+
+ Moderator
+
-
+ Judge
+ ジャッジ
+
+
+ Registered user登録ユーザー
-
+ Unregistered user未登録ユーザー
diff --git a/cockatrice/translations/cockatrice_pl.ts b/cockatrice/translations/cockatrice_pl.ts
index 7660e103..bdaa8263 100644
--- a/cockatrice/translations/cockatrice_pl.ts
+++ b/cockatrice/translations/cockatrice_pl.ts
@@ -393,183 +393,363 @@
CardZone
-
- his hand
- nominative
+
+ her hand
+ nominative, female owner
-
+ %1's hand
- nominative
+ nominative, female owner
- of his hand
- genitive
+ his hand
+ nominative, male owner
+ %1's hand
+ nominative, male owner
+
+
+
+
+ of her hand
+ genitive, female owner
+
+
+
+ of %1's hand
- genitive
+ genitive, female owner
- his hand
- accusative
+ of his hand
+ genitive, male owner
+ of %1's hand
+ genitive, male owner
+
+
+
+
+ her hand
+ accusative, female owner
+
+
+
+ %1's hand
- accusative
+ accusative, female owner
-
- his library
- nominative
+
+ his hand
+ accusative, male owner
-
+
+ %1's hand
+ accusative, male owner
+
+
+
+
+ her library
+ nominative, female owner
+
+
+
+ %1's library
- nominative
+ nominative, female owner
- of his library
- genitive
+ his library
+ nominative, male owner
+ %1's library
+ nominative, male owner
+
+
+
+
+ of her library
+ genitive, female owner
+
+
+
+ of %1's library
- genitive
+ genitive, female owner
- his library
- accusative
+ of his library
+ genitive, male owner
+ of %1's library
+ genitive, male owner
+
+
+
+
+ her library
+ accusative, female owner
+
+
+
+ %1's library
- accusative
+ accusative, female owner
-
- his graveyard
- nominative
+
+ his library
+ accusative, male owner
-
+
+ %1's library
+ accusative, male owner
+
+
+
+
+ her graveyard
+ nominative, female owner
+
+
+
+ %1's graveyard
- nominative
+ nominative, female owner
- of his graveyard
- genitive
+ his graveyard
+ nominative, male owner
+ %1's graveyard
+ nominative, male owner
+
+
+
+
+ of her graveyard
+ genitive, female owner
+
+
+
+ of %1's graveyard
- genitive
+ genitive, female owner
- his graveyard
- accusative
+ of his graveyard
+ genitive, male owner
+ of %1's graveyard
+ genitive, male owner
+
+
+
+
+ her graveyard
+ accusative, female owner
+
+
+
+ %1's graveyard
- accusative
+ accusative, female owner
-
- his exile
- nominative
+
+ his graveyard
+ accusative, male owner
-
+
+ %1's graveyard
+ accusative, male owner
+
+
+
+
+ her exile
+ nominative, female owner
+
+
+
+ %1's exile
- nominative
+ nominative, female owner
- of his exile
- genitive
+ his exile
+ nominative, male owner
+ %1's exile
+ nominative, male owner
+
+
+
+
+ of her exile
+ genitive, female owner
+
+
+
+ of %1's exile
- genitive
+ genitive, female owner
- his exile
- accusative
+ of his exile
+ genitive, male owner
+ of %1's exile
+ genitive, male owner
+
+
+
+
+ her exile
+ accusative, female owner
+
+
+
+ %1's exile
- accusative
+ accusative, female owner
-
- his sideboard
- nominative
+
+ his exile
+ accusative, male owner
-
+
+ %1's exile
+ accusative, male owner
+
+
+
+
+ her sideboard
+ nominative, female owner
+
+
+
+ %1's sideboard
- nominative
+ nominative, female owner
- of his sideboard
- genitive
+ his sideboard
+ nominative, male owner
+ %1's sideboard
+ nominative, male owner
+
+
+
+
+ of her sideboard
+ genitive, female owner
+
+
+
+ of %1's sideboard
- genitive
+ genitive, female owner
- his sideboard
- accusative
+ of his sideboard
+ genitive, male owner
+ of %1's sideboard
+ genitive, male owner
+
+
+
+
+ her sideboard
+ accusative, female owner
+
+
+
+ %1's sideboard
- accusative
+ accusative, female owner
+
+
+
+
+ his sideboard
+ accusative, male owner
+
+
+
+
+ %1's sideboard
+ accusative, male owner
@@ -1427,107 +1607,107 @@ Local version is %1, remote version is %2.
MessageLogWidget
-
+ Connecting to %1...
-
+ Connected.
-
+ Disconnected from server.
-
+ Invalid password.
-
+ Protocol version mismatch. Client: %1, Server: %2
-
+ Protocol error.
-
+ You have joined game #%1.
-
+ %1 has joined the game.
-
+ %1 has left the game.
-
+ The game has been closed.
-
+ %1 is now watching the game.
-
+ %1 is not watching the game any more.
-
+ %1 has loaded a local deck.
-
+ %1 has loaded deck #%2.
-
+ %1 is ready to start the game.
-
+ %1 is not ready to start the game any more.
-
+ %1 has conceded the game.
-
+ The game has started.
-
- %1 shuffles his library.
+
+ %1 shuffles %2.
-
+ %1 rolls a %2 with a %3-sided die.
-
+ %1 draws %n card(s).
@@ -1536,138 +1716,188 @@ Local version is %1, remote version is %2.
-
+ %1 undoes his last draw.
-
+
+ %1 undoes her last draw.
+
+
+
+ %1 undoes his last draw (%2).
-
+
+ %1 undoes her last draw (%2).
+
+
+
+ from table
-
+ from graveyard
-
+ from exile
-
+ from hand
-
+ the bottom card of his library
-
+
+ the bottom card of her library
+
+
+
+ from the bottom of his library
-
- the top card of his library
-
-
-
-
- from the top of his library
+
+ from the bottom of her library
+ the top card of his library
+
+
+
+
+ the top card of her library
+
+
+
+
+ from the top of his library
+
+
+
+
+ from the top of her library
+
+
+
+ from library
-
+ from sideboard
-
+ from the stack
-
-
+
+ a card
-
+ %1 gives %2 control over %3.
-
+ %1 puts %2 into play tapped%3.
-
+ %1 puts %2 into play%3.
-
+ %1 puts %2%3 into graveyard.
-
+ %1 exiles %2%3.
-
+ %1 moves %2%3 to hand.
-
+ %1 puts %2%3 into his library.
-
+
+ %1 puts %2%3 into her library.
+
+
+
+ %1 puts %2%3 on bottom of his library.
-
+
+ %1 puts %2%3 on bottom of her library.
+
+
+
+ %1 puts %2%3 on top of his library.
-
- %1 puts %2%3 into his library at position %4.
-
-
-
-
- %1 moves %2%3 to sideboard.
+
+ %1 puts %2%3 on top of her library.
+ %1 puts %2%3 into his library at position %4.
+
+
+
+
+ %1 puts %2%3 into her library at position %4.
+
+
+
+
+ %1 moves %2%3 to sideboard.
+
+
+
+ %1 plays %2%3.
-
+ %1 takes a mulligan to %n.
@@ -1676,52 +1906,57 @@ Local version is %1, remote version is %2.
-
+ %1 draws his initial hand.
-
+
+ %1 draws her initial hand.
+
+
+
+ %1 flips %2 face-down.
-
+ %1 flips %2 face-up.
-
+ %1 destroys %2.
-
+ %1 attaches %2 to %3's %4.
-
+ %1 unattaches %2.
-
+ %1 creates token: %2%3.
-
+ %1 points from %2's %3 to %4.
-
+ %1 points from %2's %3 to %4's %5.
-
+ %1 places %n %2 counter(s) on %3 (now %4).
@@ -1730,7 +1965,7 @@ Local version is %1, remote version is %2.
-
+ %1 removes %n %2 counter(s) from %3 (now %4).
@@ -1739,7 +1974,7 @@ Local version is %1, remote version is %2.
-
+ red
@@ -1748,7 +1983,7 @@ Local version is %1, remote version is %2.
-
+ yellow
@@ -1757,7 +1992,7 @@ Local version is %1, remote version is %2.
-
+ green
@@ -1766,157 +2001,162 @@ Local version is %1, remote version is %2.
-
+ his permanents
-
+
+ her permanents
+
+
+
+ %1 %2 %3.
-
+ taps
-
+ untaps
-
+ %1 sets counter %2 to %3 (%4%5).
-
+ %1 sets %2 to not untap normally.
-
+ %1 sets %2 to untap normally.
-
+ %1 sets PT of %2 to %3.
-
+ %1 sets annotation of %2 to %3.
-
+ %1 is looking at the top %2 cards %3.
-
+ %1 is looking at %2.
-
+ %1 stops looking at %2.
-
+ %1 reveals %2 to %3.
-
+ %1 reveals %2.
-
+ %1 randomly reveals %2%3 to %4.
-
+ %1 randomly reveals %2%3.
-
+ %1 reveals %2%3 to %4.
-
+ %1 reveals %2%3.
-
+ It is now %1's turn.
-
+ untap step
-
+ upkeep step
-
+ draw step
-
+ first main phase
-
+ beginning of combat step
-
+ declare attackers step
-
+ declare blockers step
-
+ combat damage step
-
+ end of combat step
-
+ second main phase
-
+ ending phase
-
+ It is now the %1.
@@ -2788,42 +3028,47 @@ Please enter a name:
UserInfoBox
-
+ User information
-
+ Real name:
-
+
+ Gender:
+
+
+
+ Location:
-
+ User level:
-
+ Administrator
-
- Judge
+
+ Moderator
-
+ Registered user
-
+ Unregistered user
diff --git a/cockatrice/translations/cockatrice_pt-br.ts b/cockatrice/translations/cockatrice_pt-br.ts
index b172d9a8..c0549f8d 100644
--- a/cockatrice/translations/cockatrice_pt-br.ts
+++ b/cockatrice/translations/cockatrice_pt-br.ts
@@ -401,184 +401,514 @@
CardZone
- his handnominative
- sua mão
+ sua mão
- %1's handnominative
- mão de %1
+ mão de %1
- of his handgenitive
- da sua mão
+ da sua mão
+
+
+ of %1's hand
+ genitive
+ da mão de %1
+
+
+ his hand
+ accusative
+ sua mão
+
+
+ %1's hand
+ accusative
+ mão de %1
+
+
+ his library
+ nominative
+ seu grimório
+
+
+ %1's library
+ nominative
+ grimório de %1
+
+
+ of his library
+ genitive
+ do seu grimório
+
+
+ of %1's library
+ genitive
+ do grimório de %1
+
+
+ his library
+ accusative
+ seu grimório
+
+
+ %1's library
+ accusative
+ grimório de %1
- of %1's hand
- genitive
- da mão de %1
+ her hand
+ nominative, female owner
+
-
- his hand
- accusative
- sua mão
-
-
-
+ %1's hand
- accusative
- mão de %1
+ nominative, female owner
+ mão de %1
-
- his library
- nominative
- seu grimório
+
+ his hand
+ nominative, male owner
+ sua mão
-
+
+ %1's hand
+ nominative, male owner
+ mão de %1
+
+
+
+ of her hand
+ genitive, female owner
+
+
+
+
+ of %1's hand
+ genitive, female owner
+ da mão de %1
+
+
+
+ of his hand
+ genitive, male owner
+ da sua mão
+
+
+
+ of %1's hand
+ genitive, male owner
+ da mão de %1
+
+
+
+ her hand
+ accusative, female owner
+
+
+
+
+ %1's hand
+ accusative, female owner
+ mão de %1
+
+
+
+ his hand
+ accusative, male owner
+ sua mão
+
+
+
+ %1's hand
+ accusative, male owner
+ mão de %1
+
+
+
+ her library
+ nominative, female owner
+
+
+
+ %1's library
- nominative
- grimório de %1
+ nominative, female owner
+ grimório de %1
- of his library
- genitive
- do seu grimório
+ his library
+ nominative, male owner
+ seu grimório
+ %1's library
+ nominative, male owner
+ grimório de %1
+
+
+
+ of her library
+ genitive, female owner
+
+
+
+ of %1's library
- genitive
- do grimório de %1
+ genitive, female owner
+ do grimório de %1
- his library
- accusative
- seu grimório
+ of his library
+ genitive, male owner
+ do seu grimório
+ of %1's library
+ genitive, male owner
+ do grimório de %1
+
+
+
+ her library
+ accusative, female owner
+
+
+
+ %1's library
- accusative
- grimório de %1
+ accusative, female owner
+ grimório de %1
-
- his graveyard
- nominative
- seu cemitério
+
+ his library
+ accusative, male owner
+ seu grimório
-
- %1's graveyard
- nominative
- cemitério de %1
+
+ %1's library
+ accusative, male owner
+ grimório de %1
+ her graveyard
+ nominative, female owner
+
+
+
+
+ %1's graveyard
+ nominative, female owner
+ cemitério de %1
+
+
+
+ his graveyard
+ nominative, male owner
+ seu cemitério
+
+
+
+ %1's graveyard
+ nominative, male owner
+ cemitério de %1
+
+
+
+ of her graveyard
+ genitive, female owner
+
+
+
+
+ of %1's graveyard
+ genitive, female owner
+ do cemitério de %1
+
+
+
+ of his graveyard
+ genitive, male owner
+ do seu cemitério
+
+
+
+ of %1's graveyard
+ genitive, male owner
+ do cemitério de %1
+
+
+
+ her graveyard
+ accusative, female owner
+
+
+
+
+ %1's graveyard
+ accusative, female owner
+ cemitério de %1
+
+
+
+ his graveyard
+ accusative, male owner
+ seu cemitério
+
+
+
+ %1's graveyard
+ accusative, male owner
+ cemitério de %1
+
+
+
+ her exile
+ nominative, female owner
+
+
+
+
+ %1's exile
+ nominative, female owner
+ exílio de %1
+
+
+
+ his exile
+ nominative, male owner
+ seu exílio
+
+
+
+ %1's exile
+ nominative, male owner
+ exílio de %1
+
+
+
+ of her exile
+ genitive, female owner
+
+
+
+
+ of %1's exile
+ genitive, female owner
+ do exílio de %1
+
+
+
+ of his exile
+ genitive, male owner
+ do seu exílio
+
+
+
+ of %1's exile
+ genitive, male owner
+ do exílio de %1
+
+
+
+ her exile
+ accusative, female owner
+
+
+
+
+ %1's exile
+ accusative, female owner
+ exílio de %1
+
+
+
+ his exile
+ accusative, male owner
+ seu exílio
+
+
+
+ %1's exile
+ accusative, male owner
+ exílio de %1
+
+
+
+ her sideboard
+ nominative, female owner
+
+
+
+
+ %1's sideboard
+ nominative, female owner
+ sideboard de %1
+
+
+
+ his sideboard
+ nominative, male owner
+ seu sideboard
+
+
+
+ %1's sideboard
+ nominative, male owner
+ sideboard de %1
+
+
+
+ of her sideboard
+ genitive, female owner
+
+
+
+
+ of %1's sideboard
+ genitive, female owner
+ do sideboard de %1
+
+
+
+ of his sideboard
+ genitive, male owner
+ do seu sideboard
+
+
+
+ of %1's sideboard
+ genitive, male owner
+ do sideboard de %1
+
+
+
+ her sideboard
+ accusative, female owner
+
+
+
+
+ %1's sideboard
+ accusative, female owner
+ sideboard de %1
+
+
+
+ his sideboard
+ accusative, male owner
+ seu sideboard
+
+
+
+ %1's sideboard
+ accusative, male owner
+ sideboard de %1
+
+
+ his graveyard
+ nominative
+ seu cemitério
+
+
+ %1's graveyard
+ nominative
+ cemitério de %1
+
+ of his graveyardgenitive
- do seu cemitério
+ do seu cemitério
- of %1's graveyardgenitive
- do cemitério de %1
+ do cemitério de %1
- his graveyardaccusative
- seu cemitério
+ seu cemitério
- %1's graveyardaccusative
- cemitério de %1
+ cemitério de %1
- his exilenominative
- seu exílio
+ seu exílio
- %1's exilenominative
- exílio de %1
+ exílio de %1
- of his exilegenitive
- do seu exílio
+ do seu exílio
- of %1's exilegenitive
- do exílio de %1
+ do exílio de %1
- his exileaccusative
- seu exílio
+ seu exílio
- %1's exileaccusative
- exílio de %1
+ exílio de %1
- his sideboardnominative
- seu sideboard
+ seu sideboard
- %1's sideboardnominative
- sideboard de %1
+ sideboard de %1
- of his sideboardgenitive
- do seu sideboard
+ do seu sideboard
- of %1's sideboardgenitive
- do sideboard de %1
+ do sideboard de %1
- his sideboardaccusative
- seu sideboard
+ seu sideboard
- %1's sideboardaccusative
- sideboard de %1
+ sideboard de %1
@@ -1508,52 +1838,57 @@ A versão local é %1 e a versão remota é %2.
MessageLogWidget
-
+ Connecting to %1...Conectando a %1...
-
+ Disconnected from server.Desconectado do servidor.
-
+ Invalid password.Senha incorreta.
-
+ Protocol error.Erro de protocolo.
-
+ The game has been closed.O jogo foi fechado.
-
+ %1 is now watching the game.%1 está assistindo o jogo agora.
-
+ %1 is not watching the game any more.%1 não está mais assistindo o jogo.
-
+ %1 is not ready to start the game any more.%1 não está mais pronto para começar o jogo.
+ %1 shuffles %2.
+
+
+
+ %1 rolls a %2 with a %3-sided die.%1 tirou um %2 com um dado de %3 lados.
-
+ %1 draws %n card(s).%1 compra %n card.
@@ -1561,158 +1896,208 @@ A versão local é %1 e a versão remota é %2.
-
+ %1 undoes his last draw.%1 desfaz sua última compra.
-
+
+ %1 undoes her last draw.
+
+
+
+ %1 undoes his last draw (%2).%1 desfaz sua última compra (%2).
-
+
+ %1 undoes her last draw (%2).
+
+
+
+ from table vindo do campo de batalha
-
+ from graveyard vindo do cemitério
-
+ from exile vindo do exílio
-
+ from hand vindo da mão
-
+ the bottom card of his libraryo card do fundo do seu grimório
-
+
+ the bottom card of her library
+
+
+
+ from the bottom of his library vindo do fundo do seu grimório
-
+
+ from the bottom of her library
+
+
+
+ the top card of his libraryo card do topo do seu grimório
-
+
+ the top card of her library
+
+
+
+ from the top of his library vindo do topo do seu grimório
-
+
+ from the top of her library
+
+
+
+ from library vindo do grimório
-
+ from sideboard vindo do sideboard
-
+ from the stack vindo da pilha
-
+ %1 gives %2 control over %3.%1 dá controle para %2 sobre %3.
-
+ %1 puts %2 into play tapped%3.%1 põe %2 em jogo virado%3.
-
+ %1 puts %2 into play%3.%1 põe %2 no campo de batalha %3.
-
+ %1 puts %2%3 into graveyard.%1 põe %2 no cemitério%3.
-
+ %1 exiles %2%3.%1 exila %2%3.
-
+ %1 moves %2%3 to hand.%1 move %2 para a mão%3.
-
+ %1 puts %2%3 into his library.%1 põe %2 no seu grimório%3.
-
+
+ %1 puts %2%3 into her library.
+
+
+
+ %1 puts %2%3 on bottom of his library.%1 põe %2 no fundo do seu grimório%3.
-
+
+ %1 puts %2%3 on bottom of her library.
+
+
+
+ %1 puts %2%3 on top of his library.%1 põe %2 no topo do seu grimório%3.
-
+
+ %1 puts %2%3 on top of her library.
+
+
+
+ %1 puts %2%3 into his library at position %4.%1 põe %2 no seu grimório na posição %4%3.
-
+
+ %1 puts %2%3 into her library at position %4.
+
+
+
+ %1 moves %2%3 to sideboard.%1 move %2 para o sideboard%3.
-
+ %1 plays %2%3.%1 põe %2 na pilha%3.
-
-
+
+ a cardum card
-
+ %1 flips %2 face-down.%1 vira %2 para baixo.
-
+ %1 flips %2 face-up.%1 vira %2 para cima.
-
+ %1 attaches %2 to %3's %4.%1 anexa %2 a %4 de %3.
-
+ %1 unattaches %2.%1 desanexa %2.
-
+ %1 points from %2's %3 to %4's %5.%1 aponta para %5 de %4 com %3 de %2.
@@ -1731,7 +2116,7 @@ A versão local é %1 e a versão remota é %2.
-
+ redvermelho
@@ -1739,7 +2124,7 @@ A versão local é %1 e a versão remota é %2.
-
+ yellowamarelo
@@ -1747,7 +2132,7 @@ A versão local é %1 e a versão remota é %2.
-
+ greenverde
@@ -1755,72 +2140,72 @@ A versão local é %1 e a versão remota é %2.
-
+ %1 sets counter %2 to %3 (%4%5).%1 altera o marcador %2 para %3 (%4%5).
-
+ %1 sets PT of %2 to %3.%1 altera o P/R de %2 para %3.
-
+ %1 sets annotation of %2 to %3.%1 altera a nota de %2 para%3.
-
+ %1 is looking at the top %2 cards %3.%1 está olhando para os %2 cards do topo %3.
-
+ The game has started.O jogo começou.
-
+ Connected.Conectado.
-
+ Protocol version mismatch. Client: %1, Server: %2Versão dos protocolos incompatível. Versão do utilizador:%1, versão do servidor:%2
-
+ You have joined game #%1.Você entrou no jogo nº %1.
-
+ %1 has joined the game.%1 entrou no jogo.
-
+ %1 has left the game.%1 saiu do jogo.
-
+ %1 has loaded a local deck.%1 carregou um deck local.
-
+ %1 has loaded deck #%2.%1 carregou o deck nº %2.
-
+ %1 is ready to start the game.%1 está pronto para começar o jogo.
-
+ %1 has conceded the game.%1 concedeu o jogo.
@@ -1833,22 +2218,22 @@ A versão local é %1 e a versão remota é %2.
%1 compra %2 cards.
-
+ %1 destroys %2.%1 destrói %2.
-
+ %1 creates token: %2%3.%1 cria a ficha: %2%3.
-
+ %1 points from %2's %3 to %4.%1 aponta para %4 com %3 de %2 .
-
+ %1 places %n %2 counter(s) on %3 (now %4).%1 põe %n marcador %2 em %3 (agora %4).
@@ -1856,7 +2241,7 @@ A versão local é %1 e a versão remota é %2.
-
+ %1 removes %n %2 counter(s) from %3 (now %4).%1 tira %n marcador %2 em %3 (agora %4).
@@ -1864,47 +2249,46 @@ A versão local é %1 e a versão remota é %2.
-
+ %1 %2 %3.%1 %2 %3.
-
+ %1 is looking at %2.%1 está olhando para %2.
-
+ %1 stops looking at %2.%1 para de olhar para %2.
-
+ %1 reveals %2 to %3.%1 revela %2 para %3.
-
+ %1 reveals %2.%1 revela %2.
-
+ ending phasefase final
-
+ It is now %1's turn.Agora é o turno de %1.
- %1 shuffles his library.
- %1 embaralha o seu grimório.
+ %1 embaralha o seu grimório.
-
+ %1 takes a mulligan to %n.
@@ -1912,107 +2296,117 @@ A versão local é %1 e a versão remota é %2.
-
+ %1 draws his initial hand.
-
+
+ %1 draws her initial hand.
+
+
+
+
+ her permanents
+
+
+
+ %1 randomly reveals %2%3 to %4.%1 revela aleatoriamente %2%3. para %4.
-
+ %1 randomly reveals %2%3.%1 revela aleatoriamente %2%3.
-
+ %1 reveals %2%3 to %4.%1 revela %2%3 para %4.
-
+ %1 reveals %2%3.%1 revela %2%3.
-
+ untap stepetapa de desvirar
-
+ upkeep stepetapa de manutenção
-
+ draw stepetapa de compra
-
+ first main phaseprimeira fase principal
-
+ beginning of combat stepetapa de início de combate
-
+ declare attackers stepetapa de declaracão de atacantes
-
+ declare blockers stepetapa de declaração de bloqueadores
-
+ combat damage stepetapa de dano de combate
-
+ end of combat stepetapa de fim de combate
-
+ second main phasesegunda fase principal
-
+ It is now the %1.Agora é a %1.
-
+ tapsvira
-
+ untapsdesvira
-
+ %1 sets %2 to not untap normally.%1 define que %2 não desvira normalmente.
-
+ %1 sets %2 to untap normally.%1 define que %2 desvira normalmente.
-
+ his permanentsas suas permanentes
@@ -2939,42 +3333,51 @@ Por favor, entre um nome:
UserInfoBox
-
+ User informationInformação do usuário
-
+ Real name:Nome real:
-
+
+ Gender:
+
+
+
+ Location:Localização:
-
+ User level:Nível do usuário:
-
+ AdministratorAdministrador
-
- Judge
- Juiz
+
+ Moderator
+
-
+ Judge
+ Juiz
+
+
+ Registered userUsuário registrado
-
+ Unregistered userUsuário não registrado
diff --git a/cockatrice/translations/cockatrice_pt.ts b/cockatrice/translations/cockatrice_pt.ts
index 503dea8c..9b7dac82 100644
--- a/cockatrice/translations/cockatrice_pt.ts
+++ b/cockatrice/translations/cockatrice_pt.ts
@@ -401,184 +401,514 @@
CardZone
- his handnominative
- sua mão
+ sua mão
- %1's handnominative
- mão de %1
+ mão de %1
- of his handgenitive
- da sua mão
+ da sua mão
+
+
+ of %1's hand
+ genitive
+ da mão de %1
+
+
+ his hand
+ accusative
+ sua mão
+
+
+ %1's hand
+ accusative
+ mão de %1
+
+
+ his library
+ nominative
+ seu grimório
+
+
+ %1's library
+ nominative
+ grimório de %1
+
+
+ of his library
+ genitive
+ do seu grimório
+
+
+ of %1's library
+ genitive
+ do grimório de %1
+
+
+ his library
+ accusative
+ seu grimório
+
+
+ %1's library
+ accusative
+ grimório de %1
- of %1's hand
- genitive
- da mão de %1
+ her hand
+ nominative, female owner
+
-
- his hand
- accusative
- sua mão
-
-
-
+ %1's hand
- accusative
- mão de %1
+ nominative, female owner
+ mão de %1
-
- his library
- nominative
- seu grimório
+
+ his hand
+ nominative, male owner
+ sua mão
-
+
+ %1's hand
+ nominative, male owner
+ mão de %1
+
+
+
+ of her hand
+ genitive, female owner
+
+
+
+
+ of %1's hand
+ genitive, female owner
+ da mão de %1
+
+
+
+ of his hand
+ genitive, male owner
+ da sua mão
+
+
+
+ of %1's hand
+ genitive, male owner
+ da mão de %1
+
+
+
+ her hand
+ accusative, female owner
+
+
+
+
+ %1's hand
+ accusative, female owner
+ mão de %1
+
+
+
+ his hand
+ accusative, male owner
+ sua mão
+
+
+
+ %1's hand
+ accusative, male owner
+ mão de %1
+
+
+
+ her library
+ nominative, female owner
+
+
+
+ %1's library
- nominative
- grimório de %1
+ nominative, female owner
+ grimório de %1
- of his library
- genitive
- do seu grimório
+ his library
+ nominative, male owner
+ seu grimório
+ %1's library
+ nominative, male owner
+ grimório de %1
+
+
+
+ of her library
+ genitive, female owner
+
+
+
+ of %1's library
- genitive
- do grimório de %1
+ genitive, female owner
+ do grimório de %1
- his library
- accusative
- seu grimório
+ of his library
+ genitive, male owner
+ do seu grimório
+ of %1's library
+ genitive, male owner
+ do grimório de %1
+
+
+
+ her library
+ accusative, female owner
+
+
+
+ %1's library
- accusative
- grimório de %1
+ accusative, female owner
+ grimório de %1
-
- his graveyard
- nominative
- seu cemitério
+
+ his library
+ accusative, male owner
+ seu grimório
-
- %1's graveyard
- nominative
- cemitério de %1
+
+ %1's library
+ accusative, male owner
+ grimório de %1
+ her graveyard
+ nominative, female owner
+
+
+
+
+ %1's graveyard
+ nominative, female owner
+
+
+
+
+ his graveyard
+ nominative, male owner
+ seu cemitério
+
+
+
+ %1's graveyard
+ nominative, male owner
+
+
+
+
+ of her graveyard
+ genitive, female owner
+
+
+
+
+ of %1's graveyard
+ genitive, female owner
+ do cemitério de %1
+
+
+
+ of his graveyard
+ genitive, male owner
+ do seu cemitério
+
+
+
+ of %1's graveyard
+ genitive, male owner
+ do cemitério de %1
+
+
+
+ her graveyard
+ accusative, female owner
+
+
+
+
+ %1's graveyard
+ accusative, female owner
+
+
+
+
+ his graveyard
+ accusative, male owner
+ seu cemitério
+
+
+
+ %1's graveyard
+ accusative, male owner
+
+
+
+
+ her exile
+ nominative, female owner
+
+
+
+
+ %1's exile
+ nominative, female owner
+ exílio de %1
+
+
+
+ his exile
+ nominative, male owner
+ seu exílio
+
+
+
+ %1's exile
+ nominative, male owner
+ exílio de %1
+
+
+
+ of her exile
+ genitive, female owner
+
+
+
+
+ of %1's exile
+ genitive, female owner
+ do exílio de %1
+
+
+
+ of his exile
+ genitive, male owner
+ do seu exílio
+
+
+
+ of %1's exile
+ genitive, male owner
+ do exílio de %1
+
+
+
+ her exile
+ accusative, female owner
+
+
+
+
+ %1's exile
+ accusative, female owner
+ exílio de %1
+
+
+
+ his exile
+ accusative, male owner
+ seu exílio
+
+
+
+ %1's exile
+ accusative, male owner
+ exílio de %1
+
+
+
+ her sideboard
+ nominative, female owner
+
+
+
+
+ %1's sideboard
+ nominative, female owner
+ sideboard de %1
+
+
+
+ his sideboard
+ nominative, male owner
+ seu sideboard
+
+
+
+ %1's sideboard
+ nominative, male owner
+ sideboard de %1
+
+
+
+ of her sideboard
+ genitive, female owner
+
+
+
+
+ of %1's sideboard
+ genitive, female owner
+ do sideboard de %1
+
+
+
+ of his sideboard
+ genitive, male owner
+ do seu sideboard
+
+
+
+ of %1's sideboard
+ genitive, male owner
+ do sideboard de %1
+
+
+
+ her sideboard
+ accusative, female owner
+
+
+
+
+ %1's sideboard
+ accusative, female owner
+ sideboard de %1
+
+
+
+ his sideboard
+ accusative, male owner
+ seu sideboard
+
+
+
+ %1's sideboard
+ accusative, male owner
+ sideboard de %1
+
+
+ his graveyard
+ nominative
+ seu cemitério
+
+
+ %1's graveyard
+ nominative
+ cemitério de %1
+
+ of his graveyardgenitive
- do seu cemitério
+ do seu cemitério
- of %1's graveyardgenitive
- do cemitério de %1
+ do cemitério de %1
- his graveyardaccusative
- seu cemitério
+ seu cemitério
- %1's graveyardaccusative
- cemitéro de %1
+ cemitéro de %1
- his exilenominative
- seu exílio
+ seu exílio
- %1's exilenominative
- exílio de %1
+ exílio de %1
- of his exilegenitive
- do seu exílio
+ do seu exílio
- of %1's exilegenitive
- do exílio de %1
+ do exílio de %1
- his exileaccusative
- seu exílio
+ seu exílio
- %1's exileaccusative
- exílio de %1
+ exílio de %1
- his sideboardnominative
- seu sideboard
+ seu sideboard
- %1's sideboardnominative
- sideboard de %1
+ sideboard de %1
- of his sideboardgenitive
- do seu sideboard
+ do seu sideboard
- of %1's sideboardgenitive
- do sideboard de %1
+ do sideboard de %1
- his sideboardaccusative
- seu sideboard
+ seu sideboard
- %1's sideboardaccusative
- sideboard de %1
+ sideboard de %1
@@ -1512,102 +1842,101 @@ Versão local é %1, versão remota é %2.
MessageLogWidget
-
+ Connecting to %1...Ligando a %1...
-
+ Connected.Ligado.
-
+ Disconnected from server.Desligado do servidor.
-
+ Invalid password.Password incorrecto.
-
+ Protocol version mismatch. Client: %1, Server: %2Versão dos protocolos incompatível. Versão do utilizador:%1, versão do servidor:%2
-
+ Protocol error.Erro de protocolo.
-
+ You have joined game #%1.Você entrou no jogo #%1.
-
+ %1 has joined the game.%1 entrou no jogo.
-
+ %1 has left the game.%1 abandonou o jogo.
-
+ The game has been closed.Este jogo foi encerrado.
-
+ %1 is now watching the game.%1 está agora a ver o jogo.
-
+ %1 is not watching the game any more.%1 já não está a ver o jogo.
-
+ %1 has loaded a local deck.%1 carregou um deck local.
-
+ %1 has loaded deck #%2.%1 carregou o deck #%2.
-
+ %1 is ready to start the game.%1 está pronto a começar o jogo.
-
+ %1 is not ready to start the game any more.%1 já não está pronto a começar o jogo.
-
+ %1 has conceded the game.%1 concedeu o jogo.
-
+ The game has started.O jogo começou.
- %1 shuffles his library.
- %1 baralha o grimório.
+ %1 baralha o grimório.
-
+ %1 rolls a %2 with a %3-sided die.%1 obteve %2 com um dado de %3 faces.
@@ -1620,117 +1949,157 @@ Versão local é %1, versão remota é %2.
%1 compra %2 cartas.
-
+ from table vindo da mesa
-
+ from graveyard vindo do cemitério
-
+ from exile vindo do exílio
-
+ from hand vindo da mão
-
+ the bottom card of his librarya carta do fundo do seu grimório
-
+
+ the bottom card of her library
+
+
+
+ from the bottom of his library do fundo do seu grimório
-
+
+ from the bottom of her library
+
+
+
+ the top card of his librarya carta do topo do seu grimório
-
+
+ the top card of her library
+
+
+
+ from the top of his library do topo do seu grimório
-
+
+ from the top of her library
+
+
+
+ from library do grimório
-
+ from sideboard do sideboard
-
+ from the stack da pilha
-
+ %1 puts %2 into play tapped%3.%1 coloca %2 em jogo virado(a)%3.
-
+ %1 puts %2 into play%3.%1 coloca %2 em jogo %3.
-
+ %1 puts %2%3 into graveyard.%1 coloca %2%3 no cemitério.
-
+ %1 exiles %2%3.%1 exila %2%3.
-
+ %1 moves %2%3 to hand.%1 move %2%3 para a mão.
-
+ %1 puts %2%3 into his library.%1 coloca %2%3 no seu grimório.
-
+
+ %1 puts %2%3 into her library.
+
+
+
+ %1 puts %2%3 on bottom of his library.%1 coloca %2%3 no fundo do seu grimório.
-
+
+ %1 puts %2%3 on bottom of her library.
+
+
+
+ %1 puts %2%3 on top of his library.%1 coloca %2%3 no topo do seu grimório.
-
+
+ %1 puts %2%3 on top of her library.
+
+
+
+ %1 puts %2%3 into his library at position %4.%1 coloca %2%3 no seu grimório na posição %4.
-
+
+ %1 puts %2%3 into her library at position %4.
+
+
+
+ %1 moves %2%3 to sideboard.%1 move %2%3 para o sideboard.
-
+ %1 plays %2%3.%1 joga %2%3.
-
+ %1 takes a mulligan to %n.
@@ -1738,12 +2107,17 @@ Versão local é %1, versão remota é %2.
-
+ %1 draws his initial hand.
+
+
+ %1 draws her initial hand.
+
+
-
+ %1 places %n %2 counter(s) on %3 (now %4).%1 coloca %n %2 marcador em %3 (agora com %4).
@@ -1751,7 +2125,7 @@ Versão local é %1, versão remota é %2.
-
+ %1 removes %n %2 counter(s) from %3 (now %4).%1 remove %n %2 marcador de %3 (agora com %4).
@@ -1759,13 +2133,18 @@ Versão local é %1, versão remota é %2.
-
-
+
+ a carduma carta
+
+
+ %1 shuffles %2.
+
+
-
+ %1 draws %n card(s).%1 compra %n carta.
@@ -1773,57 +2152,67 @@ Versão local é %1, versão remota é %2.
-
+ %1 undoes his last draw.%1 desfaz a sua última compra.
-
+
+ %1 undoes her last draw.
+
+
+
+ %1 undoes his last draw (%2).%1 desfaz a sua última compra (%2).
-
+
+ %1 undoes her last draw (%2).
+
+
+
+ %1 gives %2 control over %3.%1 dá controlo sobre %3 a %2.
-
+ %1 flips %2 face-down.%1 volta a face de %2 para baixo.
-
+ %1 flips %2 face-up.%1 volta a face de %2 para cima.
-
+ %1 destroys %2.%1 destrói %2.
-
+ %1 attaches %2 to %3's %4.%1 anexa %2 a %4 de %3.
-
+ %1 unattaches %2.%1 desanexa %2.
-
+ %1 creates token: %2%3.%1 cria ficha: %2%3.
-
+ %1 points from %2's %3 to %4.%1 aponta de %3 de %2 para %4.
-
+ %1 points from %2's %3 to %4's %5.%1 aponta de %3 de %2 para %5 de %4.
@@ -1842,7 +2231,7 @@ Versão local é %1, versão remota é %2.
-
+ redvermelho
@@ -1850,7 +2239,7 @@ Versão local é %1, versão remota é %2.
-
+ yellowamarelo
@@ -1858,7 +2247,7 @@ Versão local é %1, versão remota é %2.
-
+ greenverde
@@ -1866,157 +2255,162 @@ Versão local é %1, versão remota é %2.
-
+ his permanentsas suas permanentes
-
+
+ her permanents
+
+
+
+ %1 %2 %3.%1 %2 %3.
-
+ tapsvira
-
+ untapsdesvira
-
+ %1 sets counter %2 to %3 (%4%5).%1 altera o número de marcadores %2 para %3(%4%5).
-
+ %1 sets %2 to not untap normally.%1 define %2 para não desvirar normalmente.
-
+ %1 sets %2 to untap normally.%1 define %2 para desvirar normalmente.
-
+ %1 sets PT of %2 to %3.%1 define o P/R de %2 como %3.
-
+ %1 sets annotation of %2 to %3.%1 coloca uma nota de %2 em%3.
-
+ %1 is looking at the top %2 cards %3.%1 está a olhar para as %2 cartas do topo %3.
-
+ %1 is looking at %2.%1 está a olhar para %2.
-
+ %1 stops looking at %2.%1 para de olhar para %2.
-
+ %1 reveals %2 to %3.%1 revela %2 a %3.
-
+ %1 reveals %2.%1 revela %2.
-
+ %1 randomly reveals %2%3 to %4.%1 revela aleatoreamente %2%3. a %4.
-
+ %1 randomly reveals %2%3.%1 revela aleatoreamente %2%3.
-
+ %1 reveals %2%3 to %4.%1 revela %2%3 a %4.
-
+ %1 reveals %2%3.%1 revela %2%3.
-
+ It is now %1's turn.É agora o turno de %1.
-
+ untap stepEtapa de Desvirar
-
+ upkeep stepEtapa de Manutenção
-
+ draw stepEtapa de Compra
-
+ first main phase1ª Fase Principal (pré-combate)
-
+ beginning of combat stepEtapa de Início de Combate
-
+ declare attackers stepEtapa de Declaração de Atacantes
-
+ declare blockers stepEtapa de Declaração de Bloqueadores
-
+ combat damage stepEtapa de Dano de Combate
-
+ end of combat stepEtapa de Fim de Combate
-
+ second main phase2ª Fase Principal (pós-combate)
-
+ ending phaseFase Final
-
+ It is now the %1.É agora a %1.
@@ -2943,42 +3337,51 @@ Por favor introduza um nome:
UserInfoBox
-
+ User informationInformação do utilizador
-
+ Real name:Nome real:
-
+
+ Gender:
+
+
+
+ Location:Localização:
-
+ User level:Nível de utilizador:
-
+ AdministratorAdministrador
-
- Judge
- Juiz
+
+ Moderator
+
-
+ Judge
+ Juiz
+
+
+ Registered userUtilizador registado
-
+ Unregistered userUtilizador não registado
diff --git a/cockatrice/translations/cockatrice_ru.ts b/cockatrice/translations/cockatrice_ru.ts
index c1a99264..1f5e95e5 100644
--- a/cockatrice/translations/cockatrice_ru.ts
+++ b/cockatrice/translations/cockatrice_ru.ts
@@ -397,184 +397,514 @@
CardZone
- his handnominative
- его рука
+ его рука
- %1's handnominative
- рука %1-го игрока
+ рука %1-го игрока
- of his handgenitive
- его руки
+ его руки
+
+
+ of %1's hand
+ genitive
+ руки %1-го игрока
+
+
+ his hand
+ accusative
+ его руку
+
+
+ %1's hand
+ accusative
+ руку %1-го игрока
+
+
+ his library
+ nominative
+ его библиотека
+
+
+ %1's library
+ nominative
+ библиотека %1-го игрока
+
+
+ of his library
+ genitive
+ его библиотеки
+
+
+ of %1's library
+ genitive
+ библиотеки %1-го игрока
+
+
+ his library
+ accusative
+ его библиотеку
+
+
+ %1's library
+ accusative
+ библиотеку %1-го игрока
- of %1's hand
- genitive
- руки %1-го игрока
+ her hand
+ nominative, female owner
+
-
- his hand
- accusative
- его руку
-
-
-
+ %1's hand
- accusative
- руку %1-го игрока
+ nominative, female owner
+
-
- his library
- nominative
- его библиотека
+
+ his hand
+ nominative, male owner
+
-
+
+ %1's hand
+ nominative, male owner
+
+
+
+
+ of her hand
+ genitive, female owner
+
+
+
+
+ of %1's hand
+ genitive, female owner
+ руки %1-го игрока
+
+
+
+ of his hand
+ genitive, male owner
+ его руки
+
+
+
+ of %1's hand
+ genitive, male owner
+ руки %1-го игрока
+
+
+
+ her hand
+ accusative, female owner
+
+
+
+
+ %1's hand
+ accusative, female owner
+
+
+
+
+ his hand
+ accusative, male owner
+
+
+
+
+ %1's hand
+ accusative, male owner
+
+
+
+
+ her library
+ nominative, female owner
+
+
+
+ %1's library
- nominative
- библиотека %1-го игрока
+ nominative, female owner
+
- of his library
- genitive
- его библиотеки
+ his library
+ nominative, male owner
+
+ %1's library
+ nominative, male owner
+
+
+
+
+ of her library
+ genitive, female owner
+
+
+
+ of %1's library
- genitive
- библиотеки %1-го игрока
+ genitive, female owner
+ библиотеки %1-го игрока
- his library
- accusative
- его библиотеку
+ of his library
+ genitive, male owner
+ его библиотеки
+ of %1's library
+ genitive, male owner
+ библиотеки %1-го игрока
+
+
+
+ her library
+ accusative, female owner
+
+
+
+ %1's library
- accusative
- библиотеку %1-го игрока
+ accusative, female owner
+
-
- his graveyard
- nominative
- его кладбище
+
+ his library
+ accusative, male owner
+
-
- %1's graveyard
- nominative
- кладбище %1-го игрока
+
+ %1's library
+ accusative, male owner
+
+ her graveyard
+ nominative, female owner
+
+
+
+
+ %1's graveyard
+ nominative, female owner
+ кладбище %1-го игрока
+
+
+
+ his graveyard
+ nominative, male owner
+ его кладбище
+
+
+
+ %1's graveyard
+ nominative, male owner
+ кладбище %1-го игрока
+
+
+
+ of her graveyard
+ genitive, female owner
+
+
+
+
+ of %1's graveyard
+ genitive, female owner
+ кладбища %1-го игрока
+
+
+
+ of his graveyard
+ genitive, male owner
+ его кладбища
+
+
+
+ of %1's graveyard
+ genitive, male owner
+ кладбища %1-го игрока
+
+
+
+ her graveyard
+ accusative, female owner
+
+
+
+
+ %1's graveyard
+ accusative, female owner
+ кладбище %1-го игрока
+
+
+
+ his graveyard
+ accusative, male owner
+ его кладбище
+
+
+
+ %1's graveyard
+ accusative, male owner
+ кладбище %1-го игрока
+
+
+
+ her exile
+ nominative, female owner
+
+
+
+
+ %1's exile
+ nominative, female owner
+ изгнание %1-го игрока
+
+
+
+ his exile
+ nominative, male owner
+ его изгнание
+
+
+
+ %1's exile
+ nominative, male owner
+ изгнание %1-го игрока
+
+
+
+ of her exile
+ genitive, female owner
+
+
+
+
+ of %1's exile
+ genitive, female owner
+ изгнания %1-го игрока
+
+
+
+ of his exile
+ genitive, male owner
+ его изгнания
+
+
+
+ of %1's exile
+ genitive, male owner
+ изгнания %1-го игрока
+
+
+
+ her exile
+ accusative, female owner
+
+
+
+
+ %1's exile
+ accusative, female owner
+ изгнание %1-го игрока
+
+
+
+ his exile
+ accusative, male owner
+ его изгнание
+
+
+
+ %1's exile
+ accusative, male owner
+ изгнание %1-го игрока
+
+
+
+ her sideboard
+ nominative, female owner
+
+
+
+
+ %1's sideboard
+ nominative, female owner
+ сайд %1-го игрока
+
+
+
+ his sideboard
+ nominative, male owner
+ его сайд
+
+
+
+ %1's sideboard
+ nominative, male owner
+ сайд %1-го игрока
+
+
+
+ of her sideboard
+ genitive, female owner
+
+
+
+
+ of %1's sideboard
+ genitive, female owner
+ сайда %1-го игрока
+
+
+
+ of his sideboard
+ genitive, male owner
+ его сайда
+
+
+
+ of %1's sideboard
+ genitive, male owner
+ сайда %1-го игрока
+
+
+
+ her sideboard
+ accusative, female owner
+
+
+
+
+ %1's sideboard
+ accusative, female owner
+ сайд %1-го игрока
+
+
+
+ his sideboard
+ accusative, male owner
+ его сайд
+
+
+
+ %1's sideboard
+ accusative, male owner
+ сайд %1-го игрока
+
+
+ his graveyard
+ nominative
+ его кладбище
+
+
+ %1's graveyard
+ nominative
+ кладбище %1-го игрока
+
+ of his graveyardgenitive
- его кладбища
+ его кладбища
- of %1's graveyardgenitive
- кладбища %1-го игрока
+ кладбища %1-го игрока
- his graveyardaccusative
- его кладбище
+ его кладбище
- %1's graveyardaccusative
- кладбище %1-го игрока
+ кладбище %1-го игрока
- his exilenominative
- его изгнание
+ его изгнание
- %1's exilenominative
- изгнание %1-го игрока
+ изгнание %1-го игрока
- of his exilegenitive
- его изгнания
+ его изгнания
- of %1's exilegenitive
- изгнания %1-го игрока
+ изгнания %1-го игрока
- his exileaccusative
- его изгнание
+ его изгнание
- %1's exileaccusative
- изгнание %1-го игрока
+ изгнание %1-го игрока
- his sideboardnominative
- его сайд
+ его сайд
- %1's sideboardnominative
- сайд %1-го игрока
+ сайд %1-го игрока
- of his sideboardgenitive
- его сайда
+ его сайда
- of %1's sideboardgenitive
- сайда %1-го игрока
+ сайда %1-го игрока
- his sideboardaccusative
- его сайд
+ его сайд
- %1's sideboardaccusative
- сайд %1-го игрока
+ сайд %1-го игрока
@@ -1435,102 +1765,101 @@ Local version is %1, remote version is %2.
MessageLogWidget
-
+ Connecting to %1...Подключение к %1...
-
+ Connected.Подключено.
-
+ Disconnected from server.Нет соединения с сервером.
-
+ Invalid password.Неверный пароль.
-
+ Protocol version mismatch. Client: %1, Server: %2Несовпадение версий. Клиент: %1, Сервер: %2
-
+ Protocol error.Ошибка протокола.
-
+ You have joined game #%1.Вы присоединились к игре #%1.
-
+ %1 has joined the game.%1 присоединился к игре.
-
+ %1 has left the game.%1 покиул игру.
-
+ The game has been closed.Игра закрыта.
-
+ %1 is now watching the game.%1 вошел как зритель.
-
+ %1 is not watching the game any more.%1 покинул зрительскую ложу.
-
+ %1 has loaded a local deck.%1 загрузил колоду с диска.
-
+ %1 has loaded deck #%2.%1 загрузил колоду #%2.
-
+ %1 is ready to start the game.%1 готов начать игру.
-
+ %1 is not ready to start the game any more.%1 все еще не готов.
-
+ %1 has conceded the game.%1 решил сдаться.
-
+ The game has started.Игра началась.
- %1 shuffles his library.
- %1 размешивает библиотеку.
+ %1 размешивает библиотеку.
-
+ %1 rolls a %2 with a %3-sided die.%1 выкинул %2 / %3.
@@ -1543,168 +1872,168 @@ Local version is %1, remote version is %2.
%1 взял %2 карт.
-
+ %1 undoes his last draw.%1 отменил последнее взятие.
-
+ %1 undoes his last draw (%2).%1 отменил %2 последних взятий.
-
+ from table с поля битвы
-
+ from graveyard из кладбища
-
+ from exile из изгнания
-
+ from hand из руки
-
+ the bottom card of his libraryнижнюю карту своей библиотеки
-
+ from the bottom of his library со дна своей библиотеки
-
+ the top card of his libraryверхнюю карту своей библиотеки
-
+ from the top of his library с верха своей библиотеки
-
+ from library из библиотеки
-
+ from sideboard из сайда
-
+ from the stack из стека
-
-
+
+ a cardкарту
-
+ %1 gives %2 control over %3.%1 передает %2 контроль над %3.
-
+ %1 puts %2 into play%3.%1 поместил %2 на поле битвы %3.
-
+ %1 puts %2%3 into graveyard.%1 поместил %2%3 на кладбище.
-
+ %1 exiles %2%3.%1 изгоняет %2%3.
-
+ %1 moves %2%3 to hand.%1 поместил %2%3 в руку.
-
+ %1 puts %2%3 into his library.%1 поместил %2%3 в свою библиотеку.
-
+ %1 puts %2%3 on bottom of his library.%1 поместил %2%3 на дно своей библиотеки.
-
+ %1 puts %2%3 on top of his library.%1 поместил %2%3 на верх своей библиотеки.
-
+ %1 puts %2%3 into his library at position %4.%1 поместил %2%3 в свою библиотеку %4 сверху.
-
+ %1 moves %2%3 to sideboard.%1 поместил %2%3 в сайд.
-
+ %1 plays %2%3.%1 разыгрывает %2%3.
-
+ %1 flips %2 face-down.%1 перевернул %2 лицом вниз.
-
+ %1 flips %2 face-up.%1 перевернул %2 лицом вверх.
-
+ %1 destroys %2.%1 уничтожил %2.
-
+ %1 attaches %2 to %3's %4.%1 присоединил %2 к %4 игрока %3.
-
+ %1 unattaches %2.%1 отсоединил %2.
-
+ %1 creates token: %2%3.%1 создал фишку: %2%3.
-
+ %1 points from %2's %3 to %4.%1 указывает с %3 контролируемого %2 на %4.
-
+ %1 points from %2's %3 to %4's %5.%1 указывает с %3 контролируемого %2 на %5 контролируемого %4.
@@ -1724,8 +2053,13 @@ Local version is %1, remote version is %2.
%1 удалил %n жетоны (%2) с %3 (теперь %4).
+
+
+ %1 shuffles %2.
+
+
-
+ %1 draws %n card(s).%1 взял %n карту.
@@ -1734,12 +2068,62 @@ Local version is %1, remote version is %2.
-
+
+ %1 undoes her last draw.
+
+
+
+
+ %1 undoes her last draw (%2).
+
+
+
+
+ the bottom card of her library
+
+
+
+
+ from the bottom of her library
+
+
+
+
+ the top card of her library
+
+
+
+
+ from the top of her library
+
+
+
+ %1 puts %2 into play tapped%3.%1 положил %2 повернутым на поле битвы%3.
+
+
+ %1 puts %2%3 into her library.
+
+
+
+
+ %1 puts %2%3 on bottom of her library.
+
+
+
+
+ %1 puts %2%3 on top of her library.
+
+
+
+
+ %1 puts %2%3 into her library at position %4.
+
+
-
+ %1 takes a mulligan to %n.
@@ -1748,12 +2132,17 @@ Local version is %1, remote version is %2.
-
+ %1 draws his initial hand.
+
+
+ %1 draws her initial hand.
+
+
-
+ %1 places %n %2 counter(s) on %3 (now %4).%1 поместил %n %2 жетон на %3 (теперь %4).
@@ -1762,7 +2151,7 @@ Local version is %1, remote version is %2.
-
+ %1 removes %n %2 counter(s) from %3 (now %4).%1 снял %n %2 жетон с %3 (теперь %4).
@@ -1771,7 +2160,7 @@ Local version is %1, remote version is %2.
-
+ redкрасный
@@ -1780,7 +2169,7 @@ Local version is %1, remote version is %2.
-
+ yellowжелтый
@@ -1789,7 +2178,7 @@ Local version is %1, remote version is %2.
-
+ greenзеленый
@@ -1798,157 +2187,162 @@ Local version is %1, remote version is %2.
-
+ his permanentsсвои перманенты
-
+
+ her permanents
+
+
+
+ %1 %2 %3.%1 %2 %3.
-
+ tapsповернул
-
+ untapsразвернул
-
+ %1 sets counter %2 to %3 (%4%5).%1 установил жетон %2 на %3 (%4%5).
-
+ %1 sets %2 to not untap normally.%2 теперь не разворачивается как обычно (%1).
-
+ %1 sets %2 to untap normally.%2 теперь разворачивается как обычно (%1).
-
+ %1 sets PT of %2 to %3.%1 установил Силу/Защиту %2 %3.
-
+ %1 sets annotation of %2 to %3.%1 сделал пометку на %2 "%3".
-
+ %1 is looking at the top %2 cards %3.%1 смотрит верхние %2 карт библиотеки %3.
-
+ %1 is looking at %2.%1 просматривает %2.
-
+ %1 stops looking at %2.%1 закончил просматривать %2.
-
+ %1 reveals %2 to %3.%1 показывает его %2 %3.
-
+ %1 reveals %2.%1 открыл его %2.
-
+ %1 randomly reveals %2%3 to %4.%1 показывает случайно выбранную%3 карту (%2) %4.
-
+ %1 randomly reveals %2%3.%1 открывает случайно выбранную%3 карту (%2).
-
+ %1 reveals %2%3 to %4.%1 показывает%2%3 %4.
-
+ %1 reveals %2%3.%1 открывает%2%3.
-
+ It is now %1's turn.Ход игрока %1.
-
+ untap stepшаг разворота
-
+ upkeep stepшаг поддержки
-
+ draw stepшаг взятия карты
-
+ first main phaseпервая главная фаза
-
+ beginning of combat stepшаг начала битвы
-
+ declare attackers stepшаг назначения атакующих
-
+ declare blockers stepшаг назначения блокирующих
-
+ combat damage stepшаг нанесения повреждений
-
+ end of combat stepшаг завершения битвы
-
+ second main phaseвторая главная фаза
-
+ ending phaseзаключительный шаг
-
+ It is now the %1.Сейчас %1.
@@ -2833,42 +3227,51 @@ Please enter a name:
UserInfoBox
-
+ User informationИнформация о пользователе
-
+ Real name:Настоящее имя:
-
+
+ Gender:
+
+
+
+ Location:Местонахождение:
-
+ User level:Уровень:
-
+ AdministratorАдминистратор
-
- Judge
- Судья
+
+ Moderator
+
-
+ Judge
+ Судья
+
+
+ Registered userЗарегистрированный пользователь
-
+ Unregistered userРандом
diff --git a/cockatrice/translations/cockatrice_sk.ts b/cockatrice/translations/cockatrice_sk.ts
index 836c2020..30324e93 100644
--- a/cockatrice/translations/cockatrice_sk.ts
+++ b/cockatrice/translations/cockatrice_sk.ts
@@ -393,183 +393,363 @@
CardZone
-
- his hand
- nominative
+
+ her hand
+ nominative, female owner
-
+ %1's hand
- nominative
+ nominative, female owner
- of his hand
- genitive
+ his hand
+ nominative, male owner
+ %1's hand
+ nominative, male owner
+
+
+
+
+ of her hand
+ genitive, female owner
+
+
+
+ of %1's hand
- genitive
+ genitive, female owner
- his hand
- accusative
+ of his hand
+ genitive, male owner
+ of %1's hand
+ genitive, male owner
+
+
+
+
+ her hand
+ accusative, female owner
+
+
+
+ %1's hand
- accusative
+ accusative, female owner
-
- his library
- nominative
+
+ his hand
+ accusative, male owner
-
+
+ %1's hand
+ accusative, male owner
+
+
+
+
+ her library
+ nominative, female owner
+
+
+
+ %1's library
- nominative
+ nominative, female owner
- of his library
- genitive
+ his library
+ nominative, male owner
+ %1's library
+ nominative, male owner
+
+
+
+
+ of her library
+ genitive, female owner
+
+
+
+ of %1's library
- genitive
+ genitive, female owner
- his library
- accusative
+ of his library
+ genitive, male owner
+ of %1's library
+ genitive, male owner
+
+
+
+
+ her library
+ accusative, female owner
+
+
+
+ %1's library
- accusative
+ accusative, female owner
-
- his graveyard
- nominative
+
+ his library
+ accusative, male owner
-
+
+ %1's library
+ accusative, male owner
+
+
+
+
+ her graveyard
+ nominative, female owner
+
+
+
+ %1's graveyard
- nominative
+ nominative, female owner
- of his graveyard
- genitive
+ his graveyard
+ nominative, male owner
+ %1's graveyard
+ nominative, male owner
+
+
+
+
+ of her graveyard
+ genitive, female owner
+
+
+
+ of %1's graveyard
- genitive
+ genitive, female owner
- his graveyard
- accusative
+ of his graveyard
+ genitive, male owner
+ of %1's graveyard
+ genitive, male owner
+
+
+
+
+ her graveyard
+ accusative, female owner
+
+
+
+ %1's graveyard
- accusative
+ accusative, female owner
-
- his exile
- nominative
+
+ his graveyard
+ accusative, male owner
-
+
+ %1's graveyard
+ accusative, male owner
+
+
+
+
+ her exile
+ nominative, female owner
+
+
+
+ %1's exile
- nominative
+ nominative, female owner
- of his exile
- genitive
+ his exile
+ nominative, male owner
+ %1's exile
+ nominative, male owner
+
+
+
+
+ of her exile
+ genitive, female owner
+
+
+
+ of %1's exile
- genitive
+ genitive, female owner
- his exile
- accusative
+ of his exile
+ genitive, male owner
+ of %1's exile
+ genitive, male owner
+
+
+
+
+ her exile
+ accusative, female owner
+
+
+
+ %1's exile
- accusative
+ accusative, female owner
-
- his sideboard
- nominative
+
+ his exile
+ accusative, male owner
-
+
+ %1's exile
+ accusative, male owner
+
+
+
+
+ her sideboard
+ nominative, female owner
+
+
+
+ %1's sideboard
- nominative
+ nominative, female owner
- of his sideboard
- genitive
+ his sideboard
+ nominative, male owner
+ %1's sideboard
+ nominative, male owner
+
+
+
+
+ of her sideboard
+ genitive, female owner
+
+
+
+ of %1's sideboard
- genitive
+ genitive, female owner
- his sideboard
- accusative
+ of his sideboard
+ genitive, male owner
+ of %1's sideboard
+ genitive, male owner
+
+
+
+
+ her sideboard
+ accusative, female owner
+
+
+
+ %1's sideboard
- accusative
+ accusative, female owner
+
+
+
+
+ his sideboard
+ accusative, male owner
+
+
+
+
+ %1's sideboard
+ accusative, male owner
@@ -1427,107 +1607,107 @@ Local version is %1, remote version is %2.
MessageLogWidget
-
+ Connecting to %1...
-
+ Connected.
-
+ Disconnected from server.
-
+ Invalid password.
-
+ Protocol version mismatch. Client: %1, Server: %2
-
+ Protocol error.
-
+ You have joined game #%1.
-
+ %1 has joined the game.
-
+ %1 has left the game.
-
+ The game has been closed.
-
+ %1 is now watching the game.
-
+ %1 is not watching the game any more.
-
+ %1 has loaded a local deck.
-
+ %1 has loaded deck #%2.
-
+ %1 is ready to start the game.
-
+ %1 is not ready to start the game any more.
-
+ %1 has conceded the game.
-
+ The game has started.
-
- %1 shuffles his library.
+
+ %1 shuffles %2.
-
+ %1 rolls a %2 with a %3-sided die.
-
+ %1 draws %n card(s).
@@ -1536,138 +1716,188 @@ Local version is %1, remote version is %2.
-
+ %1 undoes his last draw.
-
+
+ %1 undoes her last draw.
+
+
+
+ %1 undoes his last draw (%2).
-
+
+ %1 undoes her last draw (%2).
+
+
+
+ from table
-
+ from graveyard
-
+ from exile
-
+ from hand
-
+ the bottom card of his library
-
+
+ the bottom card of her library
+
+
+
+ from the bottom of his library
-
- the top card of his library
-
-
-
-
- from the top of his library
+
+ from the bottom of her library
+ the top card of his library
+
+
+
+
+ the top card of her library
+
+
+
+
+ from the top of his library
+
+
+
+
+ from the top of her library
+
+
+
+ from library
-
+ from sideboard
-
+ from the stack
-
-
+
+ a card
-
+ %1 gives %2 control over %3.
-
+ %1 puts %2 into play tapped%3.
-
+ %1 puts %2 into play%3.
-
+ %1 puts %2%3 into graveyard.
-
+ %1 exiles %2%3.
-
+ %1 moves %2%3 to hand.
-
+ %1 puts %2%3 into his library.
-
+
+ %1 puts %2%3 into her library.
+
+
+
+ %1 puts %2%3 on bottom of his library.
-
+
+ %1 puts %2%3 on bottom of her library.
+
+
+
+ %1 puts %2%3 on top of his library.
-
- %1 puts %2%3 into his library at position %4.
-
-
-
-
- %1 moves %2%3 to sideboard.
+
+ %1 puts %2%3 on top of her library.
+ %1 puts %2%3 into his library at position %4.
+
+
+
+
+ %1 puts %2%3 into her library at position %4.
+
+
+
+
+ %1 moves %2%3 to sideboard.
+
+
+
+ %1 plays %2%3.
-
+ %1 takes a mulligan to %n.
@@ -1676,52 +1906,57 @@ Local version is %1, remote version is %2.
-
+ %1 draws his initial hand.
-
+
+ %1 draws her initial hand.
+
+
+
+ %1 flips %2 face-down.
-
+ %1 flips %2 face-up.
-
+ %1 destroys %2.
-
+ %1 attaches %2 to %3's %4.
-
+ %1 unattaches %2.
-
+ %1 creates token: %2%3.
-
+ %1 points from %2's %3 to %4.
-
+ %1 points from %2's %3 to %4's %5.
-
+ %1 places %n %2 counter(s) on %3 (now %4).
@@ -1730,7 +1965,7 @@ Local version is %1, remote version is %2.
-
+ %1 removes %n %2 counter(s) from %3 (now %4).
@@ -1739,7 +1974,7 @@ Local version is %1, remote version is %2.
-
+ red
@@ -1748,7 +1983,7 @@ Local version is %1, remote version is %2.
-
+ yellow
@@ -1757,7 +1992,7 @@ Local version is %1, remote version is %2.
-
+ green
@@ -1766,157 +2001,162 @@ Local version is %1, remote version is %2.
-
+ his permanents
-
+
+ her permanents
+
+
+
+ %1 %2 %3.
-
+ taps
-
+ untaps
-
+ %1 sets counter %2 to %3 (%4%5).
-
+ %1 sets %2 to not untap normally.
-
+ %1 sets %2 to untap normally.
-
+ %1 sets PT of %2 to %3.
-
+ %1 sets annotation of %2 to %3.
-
+ %1 is looking at the top %2 cards %3.
-
+ %1 is looking at %2.
-
+ %1 stops looking at %2.
-
+ %1 reveals %2 to %3.
-
+ %1 reveals %2.
-
+ %1 randomly reveals %2%3 to %4.
-
+ %1 randomly reveals %2%3.
-
+ %1 reveals %2%3 to %4.
-
+ %1 reveals %2%3.
-
+ It is now %1's turn.
-
+ untap step
-
+ upkeep step
-
+ draw step
-
+ first main phase
-
+ beginning of combat step
-
+ declare attackers step
-
+ declare blockers step
-
+ combat damage step
-
+ end of combat step
-
+ second main phase
-
+ ending phase
-
+ It is now the %1.
@@ -2788,42 +3028,47 @@ Please enter a name:
UserInfoBox
-
+ User information
-
+ Real name:
-
+
+ Gender:
+
+
+
+ Location:
-
+ User level:
-
+ Administrator
-
- Judge
+
+ Moderator
-
+ Registered user
-
+ Unregistered user
diff --git a/common/protocol_datastructures.cpp b/common/protocol_datastructures.cpp
index 547c5b93..aaf16467 100644
--- a/common/protocol_datastructures.cpp
+++ b/common/protocol_datastructures.cpp
@@ -11,12 +11,13 @@ CardToMove::CardToMove(int _cardId, const QString &_pt, bool _tapped)
insertItem(new SerializableItem_Bool("tapped", _tapped));
}
-ServerInfo_User::ServerInfo_User(const QString &_name, int _userLevel, const QString &_realName, const QString &_country, const QByteArray &_avatarBmp)
+ServerInfo_User::ServerInfo_User(const QString &_name, int _userLevel, const QString &_realName, Gender _gender, const QString &_country, const QByteArray &_avatarBmp)
: SerializableItem_Map("user")
{
insertItem(new SerializableItem_String("name", _name));
insertItem(new SerializableItem_Int("userlevel", _userLevel));
insertItem(new SerializableItem_String("real_name", _realName));
+ insertItem(new SerializableItem_Int("gender", _gender));
insertItem(new SerializableItem_String("country", _country));
insertItem(new SerializableItem_ByteArray("avatar_bmp", _avatarBmp));
}
@@ -27,6 +28,7 @@ ServerInfo_User::ServerInfo_User(const ServerInfo_User *other, bool complete)
insertItem(new SerializableItem_String("name", other->getName()));
insertItem(new SerializableItem_Int("userlevel", other->getUserLevel()));
insertItem(new SerializableItem_String("real_name", other->getRealName()));
+ insertItem(new SerializableItem_Int("gender", other->getGender()));
insertItem(new SerializableItem_String("country", other->getCountry()));
insertItem(new SerializableItem_ByteArray("avatar_bmp", complete ? other->getAvatarBmp() : QByteArray()));
}
diff --git a/common/protocol_datastructures.h b/common/protocol_datastructures.h
index 066bbc33..02f5336c 100644
--- a/common/protocol_datastructures.h
+++ b/common/protocol_datastructures.h
@@ -41,16 +41,22 @@ public:
IsNothing = 0x00,
IsUser = 0x01,
IsRegistered = 0x02,
- IsJudge = 0x04,
+ IsModerator = 0x04,
IsAdmin = 0x08
};
- ServerInfo_User(const QString &_name = QString(), int _userLevel = IsNothing, const QString &_realName = QString(), const QString &_country = QString(), const QByteArray &_avatarBmp = QByteArray());
+ enum Gender {
+ GenderUnknown = -1,
+ Male = 0,
+ Female = 1
+ };
+ ServerInfo_User(const QString &_name = QString(), int _userLevel = IsNothing, const QString &_realName = QString(), Gender _gender = GenderUnknown, const QString &_country = QString(), const QByteArray &_avatarBmp = QByteArray());
ServerInfo_User(const ServerInfo_User *other, bool complete = true);
static SerializableItem *newItem() { return new ServerInfo_User; }
QString getName() const { return static_cast(itemMap.value("name"))->getData(); }
int getUserLevel() const { return static_cast(itemMap.value("userlevel"))->getData(); }
void setUserLevel(int _userLevel) { static_cast(itemMap.value("userlevel"))->setData(_userLevel); }
QString getRealName() const { return static_cast(itemMap.value("real_name"))->getData(); }
+ Gender getGender() const { return static_cast(static_cast(itemMap.value("gender"))->getData()); }
QString getCountry() const { return static_cast(itemMap.value("country"))->getData(); }
QByteArray getAvatarBmp() const { return static_cast(itemMap.value("avatar_bmp"))->getData(); }
};
diff --git a/servatrice/servatrice.sql b/servatrice/servatrice.sql
index 203941a9..06effa01 100644
--- a/servatrice/servatrice.sql
+++ b/servatrice/servatrice.sql
@@ -104,6 +104,7 @@ CREATE TABLE IF NOT EXISTS `cockatrice_users` (
`admin` tinyint(1) NOT NULL,
`name` varchar(35) NOT NULL,
`realname` varchar(255) NOT NULL,
+ `gender` char(1) NOT NULL,
`password` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`country` char(2) NOT NULL,
diff --git a/servatrice/src/servatrice.cpp b/servatrice/src/servatrice.cpp
index 505c6fd0..eaca1de6 100644
--- a/servatrice/src/servatrice.cpp
+++ b/servatrice/src/servatrice.cpp
@@ -217,19 +217,31 @@ ServerInfo_User *Servatrice::evalUserQueryResult(const QSqlQuery &query, bool co
QString name = query.value(0).toString();
bool is_admin = query.value(1).toInt();
QString realName = query.value(2).toString();
- QString country = query.value(3).toString();
+ QString genderStr = query.value(3).toString();
+ QString country = query.value(4).toString();
QByteArray avatarBmp;
if (complete)
- avatarBmp = query.value(4).toByteArray();
+ avatarBmp = query.value(5).toByteArray();
+
+ ServerInfo_User::Gender gender;
+ if (genderStr == "m")
+ gender = ServerInfo_User::Male;
+ else if (genderStr == "f")
+ gender = ServerInfo_User::Female;
+ else
+ gender = ServerInfo_User::GenderUnknown;
int userLevel = ServerInfo_User::IsUser | ServerInfo_User::IsRegistered;
- if (is_admin)
+ if (is_admin == 1)
userLevel |= ServerInfo_User::IsAdmin;
+ else if (is_admin == 2)
+ userLevel |= ServerInfo_User::IsModerator;
return new ServerInfo_User(
name,
userLevel,
realName,
+ gender,
country,
avatarBmp
);
@@ -243,7 +255,7 @@ ServerInfo_User *Servatrice::getUserData(const QString &name)
checkSql();
QSqlQuery query;
- query.prepare("select name, admin, realname, country, avatar_bmp from " + dbPrefix + "_users where name = :name and active = 1");
+ query.prepare("select name, admin, realname, gender, country, avatar_bmp from " + dbPrefix + "_users where name = :name and active = 1");
query.bindValue(":name", name);
if (!execSqlQuery(query))
return new ServerInfo_User(name, ServerInfo_User::IsUser);
@@ -276,7 +288,7 @@ QMap Servatrice::getBuddyList(const QString &name)
checkSql();
QSqlQuery query;
- query.prepare("select a.name, a.admin, a.realname, a.country from " + dbPrefix + "_users a left join " + dbPrefix + "_buddylist b on a.id = b.id_user2 left join " + dbPrefix + "_users c on b.id_user1 = c.id where c.name = :name");
+ query.prepare("select a.name, a.admin, a.realname, a.gender, a.country from " + dbPrefix + "_users a left join " + dbPrefix + "_buddylist b on a.id = b.id_user2 left join " + dbPrefix + "_users c on b.id_user1 = c.id where c.name = :name");
query.bindValue(":name", name);
if (!execSqlQuery(query))
return result;
@@ -299,7 +311,7 @@ QMap Servatrice::getIgnoreList(const QString &name)
checkSql();
QSqlQuery query;
- query.prepare("select a.name, a.admin, a.realname, a.country from " + dbPrefix + "_users a left join " + dbPrefix + "_ignorelist b on a.id = b.id_user2 left join " + dbPrefix + "_users c on b.id_user1 = c.id where c.name = :name");
+ query.prepare("select a.name, a.admin, a.realname, a.gender, a.country from " + dbPrefix + "_users a left join " + dbPrefix + "_ignorelist b on a.id = b.id_user2 left join " + dbPrefix + "_users c on b.id_user1 = c.id where c.name = :name");
query.bindValue(":name", name);
if (!execSqlQuery(query))
return result;