From 808d2a3c01e0f81288eef7e380ce0e43dd2699e1 Mon Sep 17 00:00:00 2001 From: Max-Wilhelm Bruker Date: Sat, 21 May 2011 23:48:46 +0200 Subject: [PATCH] Event context for mulligans, German translation --- cockatrice/src/messagelogwidget.cpp | 28 ++- cockatrice/src/messagelogwidget.h | 7 +- cockatrice/src/player.cpp | 3 +- cockatrice/translations/cockatrice_de.ts | 266 +++++++++++--------- cockatrice/translations/cockatrice_en.ts | 264 ++++++++++--------- cockatrice/translations/cockatrice_es.ts | 264 ++++++++++--------- cockatrice/translations/cockatrice_fr.ts | 264 ++++++++++--------- cockatrice/translations/cockatrice_ja.ts | 263 ++++++++++--------- cockatrice/translations/cockatrice_pt-br.ts | 264 ++++++++++--------- cockatrice/translations/cockatrice_pt.ts | 264 ++++++++++--------- cockatrice/translations/cockatrice_ru.ts | 265 ++++++++++--------- common/protocol_item_ids.h | 7 +- common/protocol_items.cpp | 6 + common/protocol_items.dat | 1 + common/protocol_items.h | 8 + common/server_player.cpp | 1 + common/server_protocolhandler.cpp | 7 + 17 files changed, 1228 insertions(+), 954 deletions(-) diff --git a/cockatrice/src/messagelogwidget.cpp b/cockatrice/src/messagelogwidget.cpp index 15928aa8..a7ab151b 100644 --- a/cockatrice/src/messagelogwidget.cpp +++ b/cockatrice/src/messagelogwidget.cpp @@ -126,7 +126,8 @@ void MessageLogWidget::logSpectatorSay(QString spectatorName, QString message) void MessageLogWidget::logShuffle(Player *player) { soundEngine->shuffle(); - append(tr("%1 shuffles his library.").arg(sanitizeHtml(player->getName()))); + if (currentContext != MessageContext_Mulligan) + append(tr("%1 shuffles his library.").arg(sanitizeHtml(player->getName()))); } void MessageLogWidget::logRollDie(Player *player, int sides, int roll) @@ -136,8 +137,12 @@ void MessageLogWidget::logRollDie(Player *player, int sides, int roll) void MessageLogWidget::logDrawCards(Player *player, int number) { - soundEngine->draw(); - append(tr("%1 draws %n card(s).", "", number).arg(sanitizeHtml(player->getName()))); + if (currentContext == MessageContext_Mulligan) + mulliganPlayer = player; + else { + soundEngine->draw(); + append(tr("%1 draws %n card(s).", "", number).arg(sanitizeHtml(player->getName()))); + } } void MessageLogWidget::logUndoDraw(Player *player, QString cardName) @@ -251,10 +256,20 @@ void MessageLogWidget::logMoveCard(Player *player, CardItem *card, CardZone *sta LogMoveCard attributes = {player, card, card->getName(), startZone, oldX, targetZone, newX}; if (currentContext == MessageContext_MoveCard) moveCardQueue.append(attributes); + else if (currentContext == MessageContext_Mulligan) + mulliganPlayer = player; else doMoveCard(attributes); } +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()))); +} + void MessageLogWidget::logFlipCard(Player *player, QString cardName, bool faceDown) { if (faceDown) @@ -451,6 +466,10 @@ void MessageLogWidget::containerProcessingStarted(GameEventContext *_context) { if (qobject_cast(_context)) currentContext = MessageContext_MoveCard; + else if (qobject_cast(_context)) { + currentContext = MessageContext_Mulligan; + mulliganNumber = static_cast(_context)->getNumber(); + } } void MessageLogWidget::containerProcessingDone() @@ -461,6 +480,9 @@ void MessageLogWidget::containerProcessingDone() moveCardQueue.clear(); moveCardPT.clear(); moveCardTapped.clear(); + } else if (currentContext == MessageContext_Mulligan) { + logMulligan(mulliganPlayer, mulliganNumber); + mulliganNumber = 0; } currentContext = MessageContext_None; diff --git a/cockatrice/src/messagelogwidget.h b/cockatrice/src/messagelogwidget.h index b5295c35..1a42a326 100644 --- a/cockatrice/src/messagelogwidget.h +++ b/cockatrice/src/messagelogwidget.h @@ -27,16 +27,20 @@ struct LogMoveCard { class MessageLogWidget : public QTextEdit { Q_OBJECT private: - enum MessageContext { MessageContext_None, MessageContext_MoveCard }; + enum MessageContext { MessageContext_None, MessageContext_MoveCard, MessageContext_Mulligan }; CardInfoWidget *infoWidget; QString sanitizeHtml(QString dirty) const; QPair getFromStr(CardZone *zone, QString cardName, int position) const; QString getCardNameUnderMouse(const QPoint &pos) const; MessageContext currentContext; + QList moveCardQueue; QMap moveCardPT; QMap moveCardTapped; + + Player *mulliganPlayer; + int mulliganNumber; signals: void cardNameHovered(QString cardName); void showCardInfoPopup(QPoint pos, QString cardName); @@ -68,6 +72,7 @@ public slots: void logUndoDraw(Player *player, QString cardName); void doMoveCard(LogMoveCard &attributes); void logMoveCard(Player *player, CardItem *card, CardZone *startZone, int oldX, CardZone *targetZone, int newX); + void logMulligan(Player *player, int number); void logFlipCard(Player *player, QString cardName, bool faceDown); void logDestroyCard(Player *player, QString cardName); void logAttachCard(Player *player, QString cardName, Player *targetPlayer, QString targetCardName); diff --git a/cockatrice/src/player.cpp b/cockatrice/src/player.cpp index 96bad503..1b8ec25b 100644 --- a/cockatrice/src/player.cpp +++ b/cockatrice/src/player.cpp @@ -891,8 +891,7 @@ void Player::eventMoveCard(Event_MoveCard *event, GameEventContext *context) if (context) switch (context->getItemId()) { case ItemId_Context_UndoDraw: emit logUndoDraw(this, card->getName()); break; - case ItemId_Context_MoveCard: emit logMoveCard(this, card, startZone, logPosition, targetZone, logX); - default: ; + default: emit logMoveCard(this, card, startZone, logPosition, targetZone, logX); } else emit logMoveCard(this, card, startZone, logPosition, targetZone, logX); diff --git a/cockatrice/translations/cockatrice_de.ts b/cockatrice/translations/cockatrice_de.ts index 993c1787..21f6d263 100644 --- a/cockatrice/translations/cockatrice_de.ts +++ b/cockatrice/translations/cockatrice_de.ts @@ -1208,9 +1208,9 @@ DlgSettings - - - + + + Error Fehler @@ -1227,47 +1227,47 @@ Der Pfad zum Kartenbilderverzeichnis ist ungültig. - + Your card database is invalid. Would you like to go back and set the correct path? Ihre Kartendatenbank ist ungültig. Möchten Sie zurückgehen und den korrekten Pfad einstellen? - + The path to your deck directory is invalid. Would you like to go back and set the correct path? Der Pfad zu Ihrem Deckordner ist ungültig. Möchten Sie zurückgehen und den korrekten Pfad einstellen? - + The path to your card pictures directory is invalid. Would you like to go back and set the correct path? Der Pfad zu Ihrem Kartenbilderordner ist ungültig. Möchten Sie zurückgehen und den korrekten Pfad einstellen? - + Settings Einstellungen - + General Allgemeines - + Appearance Erscheinungsbild - + User interface Bedienung - + Messages Nachrichten - + &Close S&chließen @@ -2022,22 +2022,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. @@ -2078,8 +2078,8 @@ Lokale Version ist %1, Serverversion ist %2. %1 zieht %2 Karten - - + + a card eine Karte @@ -2136,12 +2136,12 @@ 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. @@ -2158,72 +2158,72 @@ 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 rolls a %2 with a %3-sided die. %1 würfelt eine %2 mit einem %3-seitigen Würfel. @@ -2236,7 +2236,7 @@ Lokale Version ist %1, Serverversion ist %2. %1 zieht %2 Karten. - + %1 draws %n card(s). %1 zieht eine Karte. @@ -2244,167 +2244,180 @@ Lokale Version ist %1, Serverversion ist %2. - + %1 undoes his 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). - + from table vom Spielfeld - + from graveyard aus dem Friedhof - + from exile aus dem Exil - + from hand von der Hand - + the bottom card of his library die unterste Karte seiner Bibliothek - + from the bottom of his library , die unterste Karte seiner Bibliothek, - + the top card of his library die oberste Karte seiner Bibliothek - + from the top of his library , die oberste Karte seiner 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 on bottom of his library. %1 legt %2%3 unter seine Bibliothek. - + %1 puts %2%3 on top of his 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 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. + %1 nimmt einen Mulligan auf %n. + + - + + %1 draws his initial hand. + %1 zieht seine 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). @@ -2412,7 +2425,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). @@ -2420,22 +2433,22 @@ Lokale Version ist %1, Serverversion ist %2. - + %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. @@ -2444,7 +2457,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. @@ -2463,7 +2476,7 @@ Lokale Version ist %1, Serverversion ist %2. - + red rote @@ -2471,7 +2484,7 @@ Lokale Version ist %1, Serverversion ist %2. - + yellow gelbe @@ -2479,7 +2492,7 @@ Lokale Version ist %1, Serverversion ist %2. - + green grüne @@ -2487,22 +2500,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. @@ -2599,7 +2612,7 @@ Lokale Version ist %1, Serverversion ist %2. %1 entfernt %2 Zählmarken von %3 (jetzt %4). - + %1 %2 %3. %1 %2 %3. @@ -2612,22 +2625,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. @@ -2648,7 +2661,7 @@ Lokale Version ist %1, Serverversion ist %2. %1 zeigt %2 aus %3 offen vor. - + ending phase die Zugendphase @@ -2677,57 +2690,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 step das Enttappsegment - + upkeep step das Versorgungssegment - + draw step das Ziehsegment - + first main phase die erste Hauptphase - + beginning of combat step das Anfangssegment der Kampfphase - + declare attackers step das Angreifer-Deklarieren-Segment - + declare blockers step das Blocker-Deklarieren-Segment - + combat damage step das Kampfschadenssegment - + end of combat step das Endsegment der Kampfphase - + second main phase die zweite Hauptphase @@ -2736,7 +2749,7 @@ Lokale Version ist %1, Serverversion ist %2. das Ende-des-Zuges-Segment - + It is now the %1. Es ist nun %1. @@ -2745,12 +2758,12 @@ Lokale Version ist %1, Serverversion ist %2. %1 bewegt %2 %3 nach %4 - + taps tappt - + untaps enttappt @@ -2775,7 +2788,7 @@ Lokale Version ist %1, Serverversion ist %2. %1 entfernt %2 Zählmarken von %3 (jetzt %4) - + his permanents seine bleibenden Karten @@ -2788,12 +2801,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. @@ -2809,12 +2822,12 @@ Lokale Version ist %1, Serverversion ist %2. MessagesSettingsPage - + &Add &Hinzufügen - + &Remove &Entfernen @@ -2827,12 +2840,12 @@ Lokale Version ist %1, Serverversion ist %2. Entfernen - + Add message Nachricht hinzufügen - + Message: Nachricht: @@ -3308,7 +3321,7 @@ Lokale Version ist %1, Serverversion ist %2. - + Number: Anzahl: @@ -3323,27 +3336,27 @@ Lokale Version ist %1, Serverversion ist %2. Oberste Karten ins Exil schicken - + Set power/toughness Kampfwerte setzen - + Please enter the new PT: Bitte die neuen Kampfwerte eingeben: - + Set annotation Hinweis setzen - + Please enter the new annotation: Bitte den Hinweis eingeben: - + Set counters Setze Zählmarken @@ -3781,7 +3794,7 @@ Bitte geben Sie einen Namen ein: Ctrl+Q - Ctrl+Q + Ctrl+Q @@ -3998,25 +4011,40 @@ Bitte geben Sie einen Namen ein: UserInterfaceSettingsPage - + General interface settings Allgemeine Bedienung - + &Double-click cards to play them (instead of single-click) Karten durch &Doppelklick ausspielen (statt Einzelklick) - + Animation settings Animationseinstellungen - + &Tap/untap animation Animiertes &Tappen/Enttappen + + + Enable &sounds + &Sound anschalten + + + + Path to sounds directory: + Pfad zum Verzeichnis mit den Sounddateien: + + + + Choose path + Pfad auswählen + UserList diff --git a/cockatrice/translations/cockatrice_en.ts b/cockatrice/translations/cockatrice_en.ts index e80e1659..f3e26b6a 100644 --- a/cockatrice/translations/cockatrice_en.ts +++ b/cockatrice/translations/cockatrice_en.ts @@ -890,54 +890,54 @@ DlgSettings - - - + + + Error - + Your card database is invalid. Would you like to go back and set the correct path? - + The path to your deck directory is invalid. Would you like to go back and set the correct path? - + The path to your card pictures directory is invalid. Would you like to go back and set the correct path? - + Settings - + General - + Appearance - + User interface - + Messages - + &Close @@ -1374,52 +1374,52 @@ 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 rolls a %2 with a %3-sided die. - + %1 draws %n card(s). %1 draws a card. @@ -1427,158 +1427,158 @@ Local version is %1, remote version is %2. - + %1 undoes his last draw. - + %1 undoes his last draw (%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 - + %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 on bottom of his 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 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. @@ -1597,7 +1597,7 @@ Local version is %1, remote version is %2. - + red @@ -1605,7 +1605,7 @@ Local version is %1, remote version is %2. - + yellow @@ -1613,7 +1613,7 @@ Local version is %1, remote version is %2. - + green @@ -1621,92 +1621,105 @@ 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. + + + + + - + + %1 draws his 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). @@ -1714,7 +1727,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). @@ -1722,142 +1735,142 @@ Local version is %1, remote version is %2. - + %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 @@ -1865,22 +1878,22 @@ Local version is %1, remote version is %2. MessagesSettingsPage - + &Add - + &Remove - + Add message - + Message: @@ -2216,7 +2229,7 @@ Local version is %1, remote version is %2. - + Number: @@ -2241,27 +2254,27 @@ Local version is %1, remote version is %2. - + Set power/toughness - + Please enter the new PT: - + Set annotation - + Please enter the new annotation: - + Set counters @@ -2772,25 +2785,40 @@ Please enter a name: UserInterfaceSettingsPage - + General interface settings - + &Double-click cards to play them (instead of single-click) - + Animation settings - + &Tap/untap animation + + + Enable &sounds + + + + + Path to sounds directory: + + + + + Choose path + + UserList diff --git a/cockatrice/translations/cockatrice_es.ts b/cockatrice/translations/cockatrice_es.ts index 7bd5eaf0..fa4beae2 100644 --- a/cockatrice/translations/cockatrice_es.ts +++ b/cockatrice/translations/cockatrice_es.ts @@ -1089,9 +1089,9 @@ DlgSettings - - - + + + Error Error @@ -1108,47 +1108,47 @@ La ruta a tu directorio de imagenes de las cartas es invalida. - + Your card database is invalid. Would you like to go back and set the correct path? Tu base de datos de cartas es invalida. ¿Deseas volver y seleccionar la ruta correcta? - + The path to your deck directory is invalid. Would you like to go back and set the correct path? La ruta a tu directorio de mazos es invalida. ¿Deseas volver y seleccionar la ruta correcta? - + The path to your card pictures directory is invalid. Would you like to go back and set the correct path? La ruta a tu directorio de imagenes de las cartas es invalida.¿Deseas volver y seleccionar la ruta correcta? - + Settings Preferencias - + General General - + Appearance Apariencia - + User interface Interfaz de usuario - + Messages Mensajes - + &Close &Cerrar @@ -1597,52 +1597,52 @@ 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 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. @@ -1650,158 +1650,158 @@ La versión local es %1, la versión remota es %2. - + %1 undoes his last draw. %1 deshace su último robo. - + %1 undoes his last draw (%2). %1 deshace su último robo (%2). - + from table de la mesa - + from graveyard del cementerio - + from exile del exilio - + from hand de la mano - + the bottom card of his library el fondo de la biblioteca - + from the bottom of his library del fondo de la biblioteca - + the top card of his library la parte superior de la biblioteca - + from the top of his library de la parte superior de la biblioteca - + 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 on bottom of his library. %1 pone %2%3 en la parte inferior de su biblioteca. - + %1 puts %2%3 on top of his library. %1 pone %2%3 en la parte superior de su biblioteca. - + %1 puts %2%3 into his library at position %4. %1 pone %2%3 en su biblioteca en la posición %4. - + %1 moves %2%3 to sideboard. %1 mueve %2%3 a la reserva. - + %1 plays %2%3. %1 juega %2%3. - - + + a card una 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. @@ -1820,7 +1820,7 @@ La versión local es %1, la versión remota es %2. - + red rojo @@ -1828,7 +1828,7 @@ La versión local es %1, la versión remota es %2. - + yellow amarillo @@ -1836,7 +1836,7 @@ La versión local es %1, la versión remota es %2. - + green verde @@ -1844,72 +1844,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: %2 La 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. @@ -1922,22 +1922,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). @@ -1945,7 +1945,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). @@ -1953,142 +1953,155 @@ 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 phase fase de fin de turno - + It is now %1's turn. Es el turno de %1. - + %1 shuffles his library. %1 baraja su biblioteca. + + + %1 takes a mulligan to %n. + + + + + - + + %1 draws his initial hand. + + + + %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 step paso de enderezar - + upkeep step paso de mantenimiento - + draw step paso de robar - + first main phase primera fase principal - + beginning of combat step paso de inicio de combate - + declare attackers step paso de declarar atacantes - + declare blockers step paso de declarar bloqueadores - + combat damage step paso de daño de combate - + end of combat step paso de fin de combate - + second main phase segunda fase principal - + It is now the %1. Ahora es el %1. - + taps gira - + untaps endereza - + %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 permanents sus permanentes @@ -2096,22 +2109,22 @@ La versión local es %1, la versión remota es %2. MessagesSettingsPage - + &Add &Añadir - + &Remove &Quitar - + Add message Añadir mensaje - + Message: Mensaje: @@ -2455,7 +2468,7 @@ La versión local es %1, la versión remota es %2. - + Number: Número: @@ -2480,27 +2493,27 @@ La versión local es %1, la versión remota es %2. Número de caras: - + Set power/toughness Establecer fuerza/resistencia - + Please enter the new PT: Por favor, introduzca la nueva F/R: - + Set annotation Escribir anotación - + Please enter the new annotation: Por favor, introduza la nueva anotación: - + Set counters Establecer contadores @@ -3074,25 +3087,40 @@ Por favor, introduzca un nombre: UserInterfaceSettingsPage - + General interface settings Preferencias generales de la interfaz - + &Double-click cards to play them (instead of single-click) &Doble click en las cartas para jugarlas (en lugar de un solo click) - + Animation settings Opciones de animación - + &Tap/untap animation Animación de &girar/enderezar + + + Enable &sounds + + + + + Path to sounds directory: + + + + + Choose path + Elija ruta + UserList diff --git a/cockatrice/translations/cockatrice_fr.ts b/cockatrice/translations/cockatrice_fr.ts index f78ae31e..9ade97a4 100644 --- a/cockatrice/translations/cockatrice_fr.ts +++ b/cockatrice/translations/cockatrice_fr.ts @@ -951,54 +951,54 @@ DlgSettings - - - + + + Error Erreur - + Your card database is invalid. Would you like to go back and set the correct path? Votre base de carte est invalide. Souhaitez-vous redéfinir le chemin d'accès? - + The path to your deck directory is invalid. Would you like to go back and set the correct path? Le chemin d'accès pour le répertoire de votre deck est invalide. Souhaitez-vous redéfinir le chemin d'accès? - + The path to your card pictures directory is invalid. Would you like to go back and set the correct path? Le chemin d'accès pour le répertoire de vos images est invalide. Souhaitez-vous redéfinir le chemin d'accès? - + Settings Paramètres - + General Géneral - + Appearance Apparence - + User interface Interface utilisateur - + Messages Messages - + &Close &Fermer @@ -1454,103 +1454,103 @@ 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: %2 Version 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 rolls a %2 with a %3-sided die. is it always a dice? %1 lance un %2 à %3 faces. @@ -1564,124 +1564,124 @@ 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 library la carte du dessous de sa bibliothèque - + from the bottom of his library du dessous de sa bibliothèque - + the top card of his library le carte du dessus de sa bibliothèque - + from the top of his library du dessus de sa bibliothèque - + 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 on bottom of his library. %1 met %2%3 en-dessous de sa bibliothèque. - + %1 puts %2%3 on top of his library. %1 met %2%3 au-dessus de sa bibliothèque. - + %1 puts %2%3 into his library at position %4. %1 met %2%3 dans sa bibliothèque à la position n°%4. - + %1 moves %2%3 to sideboard. %1 met %2%3 à sa réserve. - + %1 plays %2%3. %1 joue %2%3. - - + + a card une carte - + %1 draws %n card(s). %1 pioche %n carte. @@ -1689,59 +1689,72 @@ 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 his last draw (%2). %1 annule sa dernière pioche (%2). - + %1 gives %2 control over %3. %1 donne le contrôle de %2 à %3. + + + %1 takes a mulligan to %n. + + + + + - + + %1 draws his 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. @@ -1763,7 +1776,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). @@ -1771,7 +1784,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). @@ -1779,7 +1792,7 @@ La version la plus récente est %1, l'ancienne version est %2. - + red rouge @@ -1787,7 +1800,7 @@ La version la plus récente est %1, l'ancienne version est %2. - + yellow jaune @@ -1795,7 +1808,7 @@ La version la plus récente est %1, l'ancienne version est %2. - + green vert @@ -1803,164 +1816,164 @@ La version la plus récente est %1, l'ancienne version est %2. - + his permanents ses permanents - + %1 %2 %3. wtf ? %1 %2 %3. - + taps engage - + untaps dé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 phase premiè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 phase seconde phase principale - + ending phase phase de fin de tour - + It is now the %1. need exemple C'est maintenant %1. @@ -1969,22 +1982,22 @@ La version la plus récente est %1, l'ancienne version est %2. MessagesSettingsPage - + Add message Ajouter message - + Message: Message: - + &Add &Ajouter - + &Remove &Enlever @@ -2320,7 +2333,7 @@ La version la plus récente est %1, l'ancienne version est %2. - + Number: Nombre: @@ -2345,28 +2358,28 @@ La version la plus récente est %1, l'ancienne version est %2.Nombre de faces: - + Set power/toughness Fixer force/endurance - + Please enter the new PT: maybe better with / Entrer la nouvelle F/E: - + Set annotation Mettre une note - + Please enter the new annotation: Entrez la nouvelle note: - + Set counters Mettre des marqueurs @@ -2935,25 +2948,40 @@ Entrez un nom s'il vous plaît: UserInterfaceSettingsPage - + General interface settings Réglages généraux de l'interface - + &Double-click cards to play them (instead of single-click) &Double cliquer sur la carte pour la jouer (au lieu d'un simple clic) - + Animation settings Réglage des animations - + &Tap/untap animation &Animation d'engagement et de dégagement + + + Enable &sounds + + + + + Path to sounds directory: + + + + + Choose path + + UserList diff --git a/cockatrice/translations/cockatrice_ja.ts b/cockatrice/translations/cockatrice_ja.ts index cea482a4..eaed4215 100644 --- a/cockatrice/translations/cockatrice_ja.ts +++ b/cockatrice/translations/cockatrice_ja.ts @@ -938,54 +938,54 @@ DlgSettings - - - + + + Error エラー - + Your card database is invalid. Would you like to go back and set the correct path? あなたのカードデータベースは無効です.前に戻って正しいパスを設定してください. - + The path to your deck directory is invalid. Would you like to go back and set the correct path? あなたのデッキディレクトリへのパスは無効です.前に戻って正しいパスを設定してください. - + The path to your card pictures directory is invalid. Would you like to go back and set the correct path? あなたのカード画像ディレクトリへのパスは無効です.前に戻って正しいパスを設定してください. - + Settings 設定 - + General 全般 - + Appearance 外観 - + User interface ユーザーインターフェース - + Messages メッセージ - + &Close @@ -1431,210 +1431,210 @@ 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 rolls a %2 with a %3-sided die. - + %1 draws %n card(s). - + %1 undoes his last draw. - + %1 undoes his last draw (%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 - + %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 on bottom of his 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 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. @@ -1651,262 +1651,274 @@ 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 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). - + %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 @@ -1914,22 +1926,22 @@ Local version is %1, remote version is %2. MessagesSettingsPage - + &Add 追加 - + &Remove 削除 - + Add message メッセージを追加する - + Message: メッセージ: @@ -2265,7 +2277,7 @@ Local version is %1, remote version is %2. - + Number: 枚数 @@ -2290,27 +2302,27 @@ Local version is %1, remote version is %2. 面の数: - + Set power/toughness パワーとタフネスを設定する - + Please enter the new PT: 新しいP/Tを入力してください - + Set annotation 補足を付ける - + Please enter the new annotation: 新しい補足を付けてください - + Set counters カウンターを設定する @@ -2867,25 +2879,40 @@ Please enter a name: UserInterfaceSettingsPage - + General interface settings インターフェース総合設定 - + &Double-click cards to play them (instead of single-click) ダブルクリックでカードをプレイする(シングルクリックの代わり) - + Animation settings アニメーション設定 - + &Tap/untap animation タップ/アンタップアニメーション + + + Enable &sounds + + + + + Path to sounds directory: + + + + + Choose path + + UserList diff --git a/cockatrice/translations/cockatrice_pt-br.ts b/cockatrice/translations/cockatrice_pt-br.ts index 4e9b7d75..507edcb3 100644 --- a/cockatrice/translations/cockatrice_pt-br.ts +++ b/cockatrice/translations/cockatrice_pt-br.ts @@ -955,54 +955,54 @@ DlgSettings - - - + + + Error Erro - + Your card database is invalid. Would you like to go back and set the correct path? O seu banco de dados de cards é inválido. Você gostaria de voltar e corrigir o caminho? - + The path to your deck directory is invalid. Would you like to go back and set the correct path? O caminho para a sua pasta de decks é inválido. Você gostaria de voltar e corrigir o caminho? - + The path to your card pictures directory is invalid. Would you like to go back and set the correct path? O caminho para a sua pasta de imagens de cards é inválido. Você gostaria de voltar e corrigir o caminho? - + Settings Configurações - + General Geral - + Appearance Aparência - + User interface Interface do usuário - + Messages Mensagens - + &Close &Fechar @@ -1455,52 +1455,52 @@ 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 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. @@ -1508,158 +1508,158 @@ A versão local é %1 e a versão remota é %2. - + %1 undoes his last draw. %1 desfaz sua última compra. - + %1 undoes his last draw (%2). %1 desfaz sua última compra (%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 library o card do fundo do seu grimório - + from the bottom of his library vindo do fundo do seu grimório - + the top card of his library o card do topo do seu grimório - + from the top of his library vindo do topo do seu grimório - + 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 on bottom of his library. %1 põe %2 no fundo do seu grimório%3. - + %1 puts %2%3 on top of his library. %1 põe %2 no topo do seu grimório%3. - + %1 puts %2%3 into his library at position %4. %1 põe %2 no seu grimório na posição %4%3. - + %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 card um 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. @@ -1678,7 +1678,7 @@ A versão local é %1 e a versão remota é %2. - + red vermelho @@ -1686,7 +1686,7 @@ A versão local é %1 e a versão remota é %2. - + yellow amarelo @@ -1694,7 +1694,7 @@ A versão local é %1 e a versão remota é %2. - + green verde @@ -1702,72 +1702,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: %2 Versã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. @@ -1780,22 +1780,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). @@ -1803,7 +1803,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). @@ -1811,142 +1811,155 @@ 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 phase fase final - + It is now %1's turn. Agora é o turno de %1. - + %1 shuffles his library. %1 embaralha o seu grimório. + + + %1 takes a mulligan to %n. + + + + + - + + %1 draws his initial hand. + + + + %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 step etapa de desvirar - + upkeep step etapa de manutenção - + draw step etapa de compra - + first main phase primeira fase principal - + beginning of combat step etapa de início de combate - + declare attackers step etapa de declaracão de atacantes - + declare blockers step etapa de declaração de bloqueadores - + combat damage step etapa de dano de combate - + end of combat step etapa de fim de combate - + second main phase segunda fase principal - + It is now the %1. Agora é a %1. - + taps vira - + untaps desvira - + %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 permanents as suas permanentes @@ -1954,22 +1967,22 @@ A versão local é %1 e a versão remota é %2. MessagesSettingsPage - + &Add &Adicionar - + &Remove &Remover - + Add message Adicionar mensagem - + Message: Mensagem: @@ -2305,7 +2318,7 @@ A versão local é %1 e a versão remota é %2. - + Number: Número: @@ -2330,27 +2343,27 @@ A versão local é %1 e a versão remota é %2. Número de lados: - + Set power/toughness Alterar poder/resistência - + Please enter the new PT: Por favor, entre com o novo P/R: - + Set annotation Alterar nota - + Please enter the new annotation: Por favor, entre com a nova nota: - + Set counters Alterar marcadores @@ -2916,25 +2929,40 @@ Por favor, entre um nome: UserInterfaceSettingsPage - + General interface settings Configurações gerais de interface - + &Double-click cards to play them (instead of single-click) &Duplo clique nos cards para jogá-los (ao invés de clique simples) - + Animation settings Configurações de animação - + &Tap/untap animation Animação de &virar/desvirar + + + Enable &sounds + + + + + Path to sounds directory: + + + + + Choose path + Escolher caminho + UserList diff --git a/cockatrice/translations/cockatrice_pt.ts b/cockatrice/translations/cockatrice_pt.ts index 4c85f4c8..cef7cf2c 100644 --- a/cockatrice/translations/cockatrice_pt.ts +++ b/cockatrice/translations/cockatrice_pt.ts @@ -955,54 +955,54 @@ DlgSettings - - - + + + Error Erro - + Your card database is invalid. Would you like to go back and set the correct path? A sua base de dados é inválida. Gostaria de voltar atrás e corrigir o directório? - + The path to your deck directory is invalid. Would you like to go back and set the correct path? O directório do seu deck é inválido. Gostaria de voltar atrás e corrigir o directório? - + The path to your card pictures directory is invalid. Would you like to go back and set the correct path? O directório das imagens das cartas é inválido. Gostaria de voltar atrás e corrigir o directório? - + Settings Definições - + General Geral - + Appearance Aparência - + User interface Interface do utilizador - + Messages Mensagens - + &Close &Fechar @@ -1459,102 +1459,102 @@ 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: %2 Versã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 rolls a %2 with a %3-sided die. %1 obteve %2 com um dado de %3 faces. @@ -1567,117 +1567,130 @@ 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 library a carta do fundo do seu grimório - + from the bottom of his library do fundo do seu grimório - + the top card of his library a carta do topo do seu grimório - + from the top of his library do topo do seu grimório - + 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 on bottom of his library. %1 coloca %2%3 no fundo do seu grimório. - + %1 puts %2%3 on top of his library. %1 coloca %2%3 no topo do seu grimório. - + %1 puts %2%3 into his library at position %4. %1 coloca %2%3 no seu grimório na posição %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. + + + + + + + + %1 draws his initial hand. + + + + %1 places %n %2 counter(s) on %3 (now %4). %1 coloca %n %2 marcador em %3 (agora com %4). @@ -1685,7 +1698,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). @@ -1693,13 +1706,13 @@ Versão local é %1, versão remota é %2. - - + + a card uma carta - + %1 draws %n card(s). %1 compra %n carta. @@ -1707,57 +1720,57 @@ Versão local é %1, versão remota é %2. - + %1 undoes his last draw. %1 desfaz a sua última compra. - + %1 undoes his last draw (%2). %1 desfaz a sua última compra (%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. @@ -1776,7 +1789,7 @@ Versão local é %1, versão remota é %2. - + red vermelho @@ -1784,7 +1797,7 @@ Versão local é %1, versão remota é %2. - + yellow amarelo @@ -1792,7 +1805,7 @@ Versão local é %1, versão remota é %2. - + green verde @@ -1800,157 +1813,157 @@ Versão local é %1, versão remota é %2. - + his permanents as suas permanentes - + %1 %2 %3. %1 %2 %3. - + taps vira - + untaps desvira - + %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 step Etapa de Desvirar - + upkeep step Etapa de Manutenção - + draw step Etapa de Compra - + first main phase 1ª Fase Principal (pré-combate) - + beginning of combat step Etapa de Início de Combate - + declare attackers step Etapa de Declaração de Atacantes - + declare blockers step Etapa de Declaração de Bloqueadores - + combat damage step Etapa de Dano de Combate - + end of combat step Etapa de Fim de Combate - + second main phase 2ª Fase Principal (pós-combate) - + ending phase Fase Final - + It is now the %1. É agora a %1. @@ -1958,22 +1971,22 @@ Versão local é %1, versão remota é %2. MessagesSettingsPage - + Add message Adicionar mensagem - + Message: Mensagem: - + &Add &Adicionar - + &Remove &Remover @@ -2309,7 +2322,7 @@ Versão local é %1, versão remota é %2. - + Number: Número: @@ -2334,27 +2347,27 @@ Versão local é %1, versão remota é %2. Número de faces: - + Set power/toughness Definir poder/resistência - + Please enter the new PT: Por favor introduza o novo P/R: - + Set annotation Colocar nota - + Please enter the new annotation: Por favor introduza a nova nota: - + Set counters Definir marcadores @@ -2920,25 +2933,40 @@ Por favor introduza um nome: UserInterfaceSettingsPage - + General interface settings Configurações gerais da interface - + &Double-click cards to play them (instead of single-click) Clicar &duas vezes nas cartas para as jogar (ao invés de clicar apenas uma vez) - + Animation settings Configurações de Animações - + &Tap/untap animation Animação de &virar/desvirar + + + Enable &sounds + + + + + Path to sounds directory: + + + + + Choose path + Escolher directório + UserList diff --git a/cockatrice/translations/cockatrice_ru.ts b/cockatrice/translations/cockatrice_ru.ts index b0f24d6a..0f21ddfd 100644 --- a/cockatrice/translations/cockatrice_ru.ts +++ b/cockatrice/translations/cockatrice_ru.ts @@ -894,54 +894,54 @@ DlgSettings - - - + + + Error Ошибка - + Your card database is invalid. Would you like to go back and set the correct path? База карт не найдена. Вернуться и задать правильный путь? - + The path to your deck directory is invalid. Would you like to go back and set the correct path? Ваши колоды отсутствуют в указанной папке. Вернуться и задать правильный путь? - + The path to your card pictures directory is invalid. Would you like to go back and set the correct path? Изображения карт не найдены. Вернуться и задать правильный путь? - + Settings Настройки - + General Основные - + Appearance Внешний вид - + User interface Интерфейс - + Messages Сообщения - + &Close &Закрыть @@ -1382,102 +1382,102 @@ 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 rolls a %2 with a %3-sided die. %1 выкинул %2 / %3. @@ -1490,168 +1490,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. @@ -1672,7 +1672,7 @@ Local version is %1, remote version is %2. - + %1 draws %n card(s). %1 взял %n карту. @@ -1681,12 +1681,26 @@ Local version is %1, remote version is %2. - + %1 puts %2 into play tapped%3. %1 положил %2 повернутым на поле битвы%3. - + + %1 takes a mulligan to %n. + + + + + + + + + %1 draws his initial hand. + + + + %1 places %n %2 counter(s) on %3 (now %4). %1 поместил %n %2 жетон на %3 (теперь %4). @@ -1695,7 +1709,7 @@ Local version is %1, remote version is %2. - + %1 removes %n %2 counter(s) from %3 (now %4). %1 снял %n %2 жетон с %3 (теперь %4). @@ -1704,7 +1718,7 @@ Local version is %1, remote version is %2. - + red красный @@ -1713,7 +1727,7 @@ Local version is %1, remote version is %2. - + yellow желтый @@ -1722,7 +1736,7 @@ Local version is %1, remote version is %2. - + green зеленый @@ -1731,157 +1745,157 @@ Local version is %1, remote version is %2. - + his 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. @@ -1889,22 +1903,22 @@ Local version is %1, remote version is %2. MessagesSettingsPage - + Add message Добавить сообщение - + Message: Сообщение: - + &Add &Добавить - + &Remove &Удалить @@ -2240,7 +2254,7 @@ Local version is %1, remote version is %2. - + Number: Количество: @@ -2265,27 +2279,27 @@ Local version is %1, remote version is %2. Количество граней: - + Set power/toughness Установить Силу/Защиту - + Please enter the new PT: Введите новые Силу/Защиту: - + Set annotation Пометка - + Please enter the new annotation: Введите текст: - + Set counters Установить жетоны @@ -2809,25 +2823,40 @@ Please enter a name: UserInterfaceSettingsPage - + General interface settings Основные настройки интерфейса - + &Double-click cards to play them (instead of single-click) &Двойной клик чтобы разыграть карту (вместо одинарного) - + Animation settings Настройки анимации - + &Tap/untap animation &Анимировать поворот/разворот карты + + + Enable &sounds + + + + + Path to sounds directory: + + + + + Choose path + + UserList diff --git a/common/protocol_item_ids.h b/common/protocol_item_ids.h index d45045d0..2d89e883 100644 --- a/common/protocol_item_ids.h +++ b/common/protocol_item_ids.h @@ -76,7 +76,8 @@ ItemId_Context_Concede = 1074, ItemId_Context_DeckSelect = 1075, ItemId_Context_UndoDraw = 1076, ItemId_Context_MoveCard = 1077, -ItemId_Command_UpdateServerMessage = 1078, -ItemId_Command_BanFromServer = 1079, -ItemId_Other = 1080 +ItemId_Context_Mulligan = 1078, +ItemId_Command_UpdateServerMessage = 1079, +ItemId_Command_BanFromServer = 1080, +ItemId_Other = 1081 }; diff --git a/common/protocol_items.cpp b/common/protocol_items.cpp index c75a991e..17aea383 100644 --- a/common/protocol_items.cpp +++ b/common/protocol_items.cpp @@ -458,6 +458,11 @@ Context_MoveCard::Context_MoveCard() : GameEventContext("move_card") { } +Context_Mulligan::Context_Mulligan(int _number) + : GameEventContext("mulligan") +{ + insertItem(new SerializableItem_Int("number", _number)); +} Command_UpdateServerMessage::Command_UpdateServerMessage() : AdminCommand("update_server_message") { @@ -547,6 +552,7 @@ void ProtocolItem::initializeHashAuto() itemNameHash.insert("game_event_contextdeck_select", Context_DeckSelect::newItem); itemNameHash.insert("game_event_contextundo_draw", Context_UndoDraw::newItem); itemNameHash.insert("game_event_contextmove_card", Context_MoveCard::newItem); + itemNameHash.insert("game_event_contextmulligan", Context_Mulligan::newItem); itemNameHash.insert("cmdupdate_server_message", Command_UpdateServerMessage::newItem); itemNameHash.insert("cmdban_from_server", Command_BanFromServer::newItem); } diff --git a/common/protocol_items.dat b/common/protocol_items.dat index 4e37333d..73369c6b 100644 --- a/common/protocol_items.dat +++ b/common/protocol_items.dat @@ -75,5 +75,6 @@ 6:deck_select:i,deck_id 6:undo_draw 6:move_card +6:mulligan:i,number 7:update_server_message 7:ban_from_server:s,user_name:i,minutes \ No newline at end of file diff --git a/common/protocol_items.h b/common/protocol_items.h index 14d6eb1f..d58d3dec 100644 --- a/common/protocol_items.h +++ b/common/protocol_items.h @@ -691,6 +691,14 @@ public: static SerializableItem *newItem() { return new Context_MoveCard; } int getItemId() const { return ItemId_Context_MoveCard; } }; +class Context_Mulligan : public GameEventContext { + Q_OBJECT +public: + Context_Mulligan(int _number = -1); + int getNumber() const { return static_cast(itemMap.value("number"))->getData(); }; + static SerializableItem *newItem() { return new Context_Mulligan; } + int getItemId() const { return ItemId_Context_Mulligan; } +}; class Command_UpdateServerMessage : public AdminCommand { Q_OBJECT public: diff --git a/common/server_player.cpp b/common/server_player.cpp index 0a6dc8ac..e5695380 100644 --- a/common/server_player.cpp +++ b/common/server_player.cpp @@ -402,6 +402,7 @@ ResponseCode Server_Player::moveCard(CommandContainer *cont, Server_CardZone *st if (card->getDestroyOnZoneChange() && (startzone->getName() != targetzone->getName())) { cont->enqueueGameEventPrivate(new Event_DestroyCard(getPlayerId(), startzone->getName(), card->getId()), game->getGameId(), -1, new Context_MoveCard); + cont->enqueueGameEventOmniscient(new Event_DestroyCard(getPlayerId(), startzone->getName(), card->getId()), game->getGameId(), new Context_MoveCard); cont->enqueueGameEventPublic(new Event_DestroyCard(getPlayerId(), startzone->getName(), card->getId()), game->getGameId(), new Context_MoveCard); card->deleteLater(); } else { diff --git a/common/server_protocolhandler.cpp b/common/server_protocolhandler.cpp index dd5d0dd8..8580ef28 100644 --- a/common/server_protocolhandler.cpp +++ b/common/server_protocolhandler.cpp @@ -632,9 +632,16 @@ ResponseCode Server_ProtocolHandler::cmdMulligan(Command_Mulligan * /*cmd*/, Com deck->shuffle(); cont->enqueueGameEventPrivate(new Event_Shuffle(player->getPlayerId()), game->getGameId()); + cont->enqueueGameEventOmniscient(new Event_Shuffle(player->getPlayerId()), game->getGameId()); cont->enqueueGameEventPublic(new Event_Shuffle(player->getPlayerId()), game->getGameId()); player->drawCards(cont, number); + + if (number == player->getInitialCards()) + number = -1; + cont->getGameEventQueuePrivate()->setContext(new Context_Mulligan(number)); + cont->getGameEventQueuePublic()->setContext(new Context_Mulligan(number)); + cont->getGameEventQueueOmniscient()->setContext(new Context_Mulligan(number)); return RespOk; }