Mulligan added to Client
This commit is contained in:
parent
30079a71ff
commit
5cf970f0f3
3 changed files with 96 additions and 55 deletions
|
@ -8,6 +8,7 @@
|
|||
#include "pilezone.h"
|
||||
#include "tablezone.h"
|
||||
#include "handzone.h"
|
||||
#include "cardlist.h"
|
||||
#include <QSettings>
|
||||
#include <QPainter>
|
||||
#include <QMenu>
|
||||
|
@ -113,12 +114,15 @@ Player::Player(const QString &_name, int _id, bool _local, CardDatabase *_db, Cl
|
|||
connect(aDrawCards, SIGNAL(triggered()), this, SLOT(actDrawCards()));
|
||||
aShuffle = new QAction(this);
|
||||
connect(aShuffle, SIGNAL(triggered()), this, SLOT(actShuffle()));
|
||||
aMulligan = new QAction(this);
|
||||
connect(aMulligan, SIGNAL(triggered()), this, SLOT(actMuligan()));
|
||||
}
|
||||
|
||||
playerMenu = new QMenu(QString());
|
||||
|
||||
if (local) {
|
||||
handMenu = playerMenu->addMenu(QString());
|
||||
handMenu->addAction(aMulligan);
|
||||
handMenu->addAction(aMoveHandToTopLibrary);
|
||||
handMenu->addAction(aMoveHandToBottomLibrary);
|
||||
handMenu->addAction(aMoveHandToGrave);
|
||||
|
@ -189,6 +193,8 @@ Player::Player(const QString &_name, int _id, bool _local, CardDatabase *_db, Cl
|
|||
sbMenu = 0;
|
||||
}
|
||||
|
||||
cardsInHand = 0;
|
||||
|
||||
retranslateUi();
|
||||
}
|
||||
|
||||
|
@ -240,6 +246,8 @@ void Player::retranslateUi()
|
|||
aDrawCard->setShortcut(tr("Ctrl+D"));
|
||||
aDrawCards->setText(tr("D&raw cards..."));
|
||||
aDrawCards->setShortcut(tr("Ctrl+E"));
|
||||
aMulligan->setText(tr("Take &mulligan..."));
|
||||
aMulligan->setShortcut(tr("Ctrl+M"));
|
||||
aShuffle->setText(tr("&Shuffle"));
|
||||
aShuffle->setShortcut(tr("Ctrl+S"));
|
||||
|
||||
|
@ -324,13 +332,27 @@ void Player::actShuffle()
|
|||
void Player::actDrawCard()
|
||||
{
|
||||
client->drawCards(1);
|
||||
cardsInHand++;
|
||||
}
|
||||
|
||||
void Player::actMuligan()
|
||||
{
|
||||
if(cardsInHand >= 0) return;
|
||||
CardList handCards = hand->getCards();
|
||||
for(int i = 0; i < handCards.size(); i++){
|
||||
client->moveCard(handCards.at(i)->getId(),"hand","deck",0);
|
||||
}
|
||||
client->shuffle();
|
||||
client->drawCards(--cardsInHand);
|
||||
}
|
||||
|
||||
void Player::actDrawCards()
|
||||
{
|
||||
int number = QInputDialog::getInteger(0, tr("Draw cards"), tr("Number:"));
|
||||
if (number)
|
||||
if (number){
|
||||
client->drawCards(number);
|
||||
cardsInHand += number;
|
||||
}
|
||||
}
|
||||
|
||||
void Player::actUntapAll()
|
||||
|
@ -467,6 +489,12 @@ void Player::gameEvent(const ServerEventData &event)
|
|||
qDebug(QString("target zone invalid: %1").arg(data[4]).toLatin1());
|
||||
break;
|
||||
}
|
||||
|
||||
/* if(startZone == zones.value("hand")){
|
||||
cardsInHand--;
|
||||
qDebug() << "<<<<<<<<<<<<<<<<<<<< Karte aus hand entfernt";
|
||||
qDebug() << "<<<<<<<<<<<<<<<<<<<<< Handkartenanzahl: " << cardsInHand;
|
||||
}*/
|
||||
int x = data[5].toInt();
|
||||
int y = data[6].toInt();
|
||||
bool facedown = data[7].toInt();
|
||||
|
|
|
@ -42,6 +42,7 @@ public slots:
|
|||
void actShuffle();
|
||||
void actDrawCard();
|
||||
void actDrawCards();
|
||||
void actMuligan();
|
||||
|
||||
void actViewLibrary();
|
||||
void actViewTopCards();
|
||||
|
@ -58,7 +59,7 @@ private:
|
|||
*aMoveGraveToTopLibrary, *aMoveGraveToBottomLibrary, *aMoveGraveToHand, *aMoveGraveToRfg,
|
||||
*aMoveRfgToTopLibrary, *aMoveRfgToBottomLibrary, *aMoveRfgToHand, *aMoveRfgToGrave,
|
||||
*aViewLibrary, *aViewTopCards, *aViewGraveyard, *aViewRfg, *aViewSideboard,
|
||||
*aDrawCard, *aDrawCards, *aShuffle,
|
||||
*aDrawCard, *aDrawCards, *aMulligan, *aShuffle,
|
||||
*aUntapAll, *aRollDie, *aCreateToken;
|
||||
|
||||
int defaultNumberTopCards;
|
||||
|
@ -66,6 +67,8 @@ private:
|
|||
int id;
|
||||
bool active;
|
||||
bool local;
|
||||
|
||||
int cardsInHand;
|
||||
|
||||
QMap<QString, CardZone *> zones;
|
||||
TableZone *table;
|
||||
|
|
|
@ -1687,41 +1687,41 @@
|
|||
<context>
|
||||
<name>Player</name>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="222"/>
|
||||
<location filename="../src/player.cpp" line="226"/>
|
||||
<location filename="../src/player.cpp" line="230"/>
|
||||
<location filename="../src/player.cpp" line="228"/>
|
||||
<location filename="../src/player.cpp" line="232"/>
|
||||
<location filename="../src/player.cpp" line="236"/>
|
||||
<source>Move to &top of library</source>
|
||||
<translation>Oben auf die Biblio&thek legen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="223"/>
|
||||
<location filename="../src/player.cpp" line="227"/>
|
||||
<location filename="../src/player.cpp" line="231"/>
|
||||
<location filename="../src/player.cpp" line="229"/>
|
||||
<location filename="../src/player.cpp" line="233"/>
|
||||
<location filename="../src/player.cpp" line="237"/>
|
||||
<source>Move to &bottom of library</source>
|
||||
<translation>Unter die &Bibliothek legen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="234"/>
|
||||
<location filename="../src/player.cpp" line="240"/>
|
||||
<source>&View library</source>
|
||||
<translation>&Zeige Bibliothek</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="235"/>
|
||||
<location filename="../src/player.cpp" line="241"/>
|
||||
<source>F3</source>
|
||||
<translation>F3</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="236"/>
|
||||
<location filename="../src/player.cpp" line="242"/>
|
||||
<source>View &top cards of library...</source>
|
||||
<translation>Zeige die oberen Kar&ten der Bibliothek...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="215"/>
|
||||
<location filename="../src/player.cpp" line="221"/>
|
||||
<source>&View graveyard</source>
|
||||
<translation>&Zeige Friedhof</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="237"/>
|
||||
<location filename="../src/player.cpp" line="243"/>
|
||||
<source>F4</source>
|
||||
<translation>F4</translation>
|
||||
</message>
|
||||
|
@ -1730,27 +1730,27 @@
|
|||
<translation type="obsolete">Zeige ent&fernte Karten</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="238"/>
|
||||
<location filename="../src/player.cpp" line="244"/>
|
||||
<source>&View sideboard</source>
|
||||
<translation>Zeige &Sideboard</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="217"/>
|
||||
<location filename="../src/player.cpp" line="223"/>
|
||||
<source>Player "%1"</source>
|
||||
<translation>Spieler "%1"</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="246"/>
|
||||
<location filename="../src/player.cpp" line="254"/>
|
||||
<source>&Hand</source>
|
||||
<translation>&Hand</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="248"/>
|
||||
<location filename="../src/player.cpp" line="256"/>
|
||||
<source>&Library</source>
|
||||
<translation>Bib&liothek</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="218"/>
|
||||
<location filename="../src/player.cpp" line="224"/>
|
||||
<source>&Graveyard</source>
|
||||
<translation>&Friedhof</translation>
|
||||
</message>
|
||||
|
@ -1759,90 +1759,100 @@
|
|||
<translation type="obsolete">Entfe&rnte Karten</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="247"/>
|
||||
<location filename="../src/player.cpp" line="255"/>
|
||||
<source>&Sideboard</source>
|
||||
<translation>&Sideboard</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="297"/>
|
||||
<location filename="../src/player.cpp" line="305"/>
|
||||
<source>View top cards of library</source>
|
||||
<translation>Zeige die obersten Karten der Bibliothek</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="297"/>
|
||||
<location filename="../src/player.cpp" line="305"/>
|
||||
<source>Number of cards:</source>
|
||||
<translation>Anzahl der Karten:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="239"/>
|
||||
<location filename="../src/player.cpp" line="245"/>
|
||||
<source>&Draw card</source>
|
||||
<translation>Karte &ziehen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="216"/>
|
||||
<location filename="../src/player.cpp" line="222"/>
|
||||
<source>&View exile</source>
|
||||
<translation>&Zeige Exil</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="219"/>
|
||||
<location filename="../src/player.cpp" line="225"/>
|
||||
<source>&Exile</source>
|
||||
<translation>&Exil</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="228"/>
|
||||
<location filename="../src/player.cpp" line="232"/>
|
||||
<location filename="../src/player.cpp" line="234"/>
|
||||
<location filename="../src/player.cpp" line="238"/>
|
||||
<source>Move to &hand</source>
|
||||
<translation>auf die &Hand nehmen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="224"/>
|
||||
<location filename="../src/player.cpp" line="233"/>
|
||||
<location filename="../src/player.cpp" line="230"/>
|
||||
<location filename="../src/player.cpp" line="239"/>
|
||||
<source>Move to g&raveyard</source>
|
||||
<translation>auf den &Friedhof legen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="225"/>
|
||||
<location filename="../src/player.cpp" line="229"/>
|
||||
<location filename="../src/player.cpp" line="231"/>
|
||||
<location filename="../src/player.cpp" line="235"/>
|
||||
<source>Move to &exile</source>
|
||||
<translation>ins &Exil schicken</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="240"/>
|
||||
<location filename="../src/player.cpp" line="246"/>
|
||||
<source>Ctrl+D</source>
|
||||
<translation>Ctrl+D</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="241"/>
|
||||
<location filename="../src/player.cpp" line="247"/>
|
||||
<source>D&raw cards...</source>
|
||||
<translation>Ka&rten ziehen...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="242"/>
|
||||
<location filename="../src/player.cpp" line="248"/>
|
||||
<source>Ctrl+E</source>
|
||||
<translation>Ctrl+E</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="243"/>
|
||||
<location filename="../src/player.cpp" line="249"/>
|
||||
<source>Take &mulligan...</source>
|
||||
<translation type="unfinished">&Mulligan nehmen...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="250"/>
|
||||
<source>Ctrl+M</source>
|
||||
<translation type="unfinished">Ctrl+M</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="251"/>
|
||||
<source>&Shuffle</source>
|
||||
<translation>Mi&schen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="244"/>
|
||||
<location filename="../src/player.cpp" line="252"/>
|
||||
<source>Ctrl+S</source>
|
||||
<translation>Ctrl+S</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="249"/>
|
||||
<location filename="../src/player.cpp" line="257"/>
|
||||
<source>&Counters</source>
|
||||
<translation>&Zähler</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="251"/>
|
||||
<location filename="../src/player.cpp" line="259"/>
|
||||
<source>&Untap all permanents</source>
|
||||
<translation>&Enttappe alle bleibenden Karten</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="252"/>
|
||||
<location filename="../src/player.cpp" line="260"/>
|
||||
<source>Ctrl+U</source>
|
||||
<translation>Ctrl+U</translation>
|
||||
</message>
|
||||
|
@ -1871,67 +1881,67 @@
|
|||
<translation type="obsolete">Ctrl+L</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="253"/>
|
||||
<location filename="../src/player.cpp" line="261"/>
|
||||
<source>R&oll die...</source>
|
||||
<translation>&Würfeln...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="254"/>
|
||||
<location filename="../src/player.cpp" line="262"/>
|
||||
<source>Ctrl+I</source>
|
||||
<translation>Ctrl+I</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="255"/>
|
||||
<location filename="../src/player.cpp" line="263"/>
|
||||
<source>&Create token...</source>
|
||||
<translation>&Token erstellen...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="256"/>
|
||||
<location filename="../src/player.cpp" line="264"/>
|
||||
<source>Ctrl+T</source>
|
||||
<translation>Ctrl+T</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="257"/>
|
||||
<location filename="../src/player.cpp" line="265"/>
|
||||
<source>S&ay</source>
|
||||
<translation>&Sagen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="276"/>
|
||||
<location filename="../src/player.cpp" line="284"/>
|
||||
<source>F5</source>
|
||||
<translation>F5</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="277"/>
|
||||
<location filename="../src/player.cpp" line="285"/>
|
||||
<source>F6</source>
|
||||
<translation>F6</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="278"/>
|
||||
<location filename="../src/player.cpp" line="286"/>
|
||||
<source>F7</source>
|
||||
<translation>F7</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="279"/>
|
||||
<location filename="../src/player.cpp" line="287"/>
|
||||
<source>F8</source>
|
||||
<translation>F8</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="280"/>
|
||||
<location filename="../src/player.cpp" line="288"/>
|
||||
<source>F9</source>
|
||||
<translation>F9</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="281"/>
|
||||
<location filename="../src/player.cpp" line="289"/>
|
||||
<source>F10</source>
|
||||
<translation>F10</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="331"/>
|
||||
<location filename="../src/player.cpp" line="351"/>
|
||||
<source>Draw cards</source>
|
||||
<translation>Karten ziehen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="331"/>
|
||||
<location filename="../src/player.cpp" line="351"/>
|
||||
<source>Number:</source>
|
||||
<translation>Anzahl:</translation>
|
||||
</message>
|
||||
|
@ -1944,22 +1954,22 @@
|
|||
<translation type="obsolete">Neue Lebenspunkte insgesamt:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="344"/>
|
||||
<location filename="../src/player.cpp" line="366"/>
|
||||
<source>Roll die</source>
|
||||
<translation>Würfeln</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="344"/>
|
||||
<location filename="../src/player.cpp" line="366"/>
|
||||
<source>Number of sides:</source>
|
||||
<translation>Anzahl der Seiten:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="351"/>
|
||||
<location filename="../src/player.cpp" line="373"/>
|
||||
<source>Create token</source>
|
||||
<translation>Token erstellen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/player.cpp" line="351"/>
|
||||
<location filename="../src/player.cpp" line="373"/>
|
||||
<source>Name:</source>
|
||||
<translation>Name:</translation>
|
||||
</message>
|
||||
|
|
Loading…
Reference in a new issue