Add "play top card face down" menu entry to library; fix #762
This commit is contained in:
parent
1ca561dec5
commit
e649535211
2 changed files with 24 additions and 5 deletions
|
@ -229,8 +229,10 @@ Player::Player(const ServerInfo_User &info, int _id, bool _local, TabGame *_pare
|
||||||
connect(aUndoDraw, SIGNAL(triggered()), this, SLOT(actUndoDraw()));
|
connect(aUndoDraw, SIGNAL(triggered()), this, SLOT(actUndoDraw()));
|
||||||
aShuffle = new QAction(this);
|
aShuffle = new QAction(this);
|
||||||
connect(aShuffle, SIGNAL(triggered()), this, SLOT(actShuffle()));
|
connect(aShuffle, SIGNAL(triggered()), this, SLOT(actShuffle()));
|
||||||
aMulligan = new QAction(this);
|
aMulligan = new QAction(this);
|
||||||
connect(aMulligan, SIGNAL(triggered()), this, SLOT(actMulligan()));
|
connect(aMulligan, SIGNAL(triggered()), this, SLOT(actMulligan()));
|
||||||
|
aMoveTopToPlayFaceDown = new QAction(this);
|
||||||
|
connect(aMoveTopToPlayFaceDown, SIGNAL(triggered()), this, SLOT(actMoveTopCardToPlayFaceDown()));
|
||||||
aMoveTopCardsToGrave = new QAction(this);
|
aMoveTopCardsToGrave = new QAction(this);
|
||||||
connect(aMoveTopCardsToGrave, SIGNAL(triggered()), this, SLOT(actMoveTopCardsToGrave()));
|
connect(aMoveTopCardsToGrave, SIGNAL(triggered()), this, SLOT(actMoveTopCardsToGrave()));
|
||||||
aMoveTopCardsToExile = new QAction(this);
|
aMoveTopCardsToExile = new QAction(this);
|
||||||
|
@ -274,11 +276,11 @@ Player::Player(const ServerInfo_User &info, int _id, bool _local, TabGame *_pare
|
||||||
playerLists.append(mRevealTopCard = libraryMenu->addMenu(QString()));
|
playerLists.append(mRevealTopCard = libraryMenu->addMenu(QString()));
|
||||||
libraryMenu->addAction(aAlwaysRevealTopCard);
|
libraryMenu->addAction(aAlwaysRevealTopCard);
|
||||||
libraryMenu->addSeparator();
|
libraryMenu->addSeparator();
|
||||||
|
libraryMenu->addAction(aMoveTopToPlayFaceDown);
|
||||||
libraryMenu->addAction(aMoveTopCardToBottom);
|
libraryMenu->addAction(aMoveTopCardToBottom);
|
||||||
libraryMenu->addAction(aMoveBottomCardToGrave);
|
libraryMenu->addAction(aMoveBottomCardToGrave);
|
||||||
libraryMenu->addSeparator();
|
libraryMenu->addSeparator();
|
||||||
libraryMenu->addAction(aMoveTopCardsToGrave);
|
libraryMenu->addAction(aMoveTopCardsToGrave);
|
||||||
libraryMenu->addSeparator();
|
|
||||||
libraryMenu->addAction(aMoveTopCardsToExile);
|
libraryMenu->addAction(aMoveTopCardsToExile);
|
||||||
libraryMenu->addSeparator();
|
libraryMenu->addSeparator();
|
||||||
libraryMenu->addAction(aOpenDeckInDeckEditor);
|
libraryMenu->addAction(aOpenDeckInDeckEditor);
|
||||||
|
@ -631,6 +633,7 @@ void Player::retranslateUi()
|
||||||
aUndoDraw->setText(tr("&Undo last draw"));
|
aUndoDraw->setText(tr("&Undo last draw"));
|
||||||
aMulligan->setText(tr("Take &mulligan"));
|
aMulligan->setText(tr("Take &mulligan"));
|
||||||
aShuffle->setText(tr("&Shuffle"));
|
aShuffle->setText(tr("&Shuffle"));
|
||||||
|
aMoveTopToPlayFaceDown->setText(tr("Play top card &face down"));
|
||||||
aMoveTopCardsToGrave->setText(tr("Move top cards to &graveyard..."));
|
aMoveTopCardsToGrave->setText(tr("Move top cards to &graveyard..."));
|
||||||
aMoveTopCardsToExile->setText(tr("Move top cards to &exile..."));
|
aMoveTopCardsToExile->setText(tr("Move top cards to &exile..."));
|
||||||
aMoveTopCardToBottom->setText(tr("Put top card on &bottom"));
|
aMoveTopCardToBottom->setText(tr("Put top card on &bottom"));
|
||||||
|
@ -953,6 +956,21 @@ void Player::actMoveTopCardToBottom()
|
||||||
sendGameCommand(cmd);
|
sendGameCommand(cmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Player::actMoveTopCardToPlayFaceDown()
|
||||||
|
{
|
||||||
|
Command_MoveCard cmd;
|
||||||
|
cmd.set_start_zone("deck");
|
||||||
|
CardToMove *cardToMove = cmd.mutable_cards_to_move()->add_card();
|
||||||
|
cardToMove->set_card_id(0);
|
||||||
|
cardToMove->set_face_down(true);
|
||||||
|
cmd.set_target_player_id(getId());
|
||||||
|
cmd.set_target_zone("table");
|
||||||
|
cmd.set_x(-1);
|
||||||
|
cmd.set_y(0);
|
||||||
|
|
||||||
|
sendGameCommand(cmd);
|
||||||
|
}
|
||||||
|
|
||||||
void Player::actMoveBottomCardToGrave() {
|
void Player::actMoveBottomCardToGrave() {
|
||||||
CardZone *zone = zones.value("deck");
|
CardZone *zone = zones.value("deck");
|
||||||
Command_MoveCard cmd;
|
Command_MoveCard cmd;
|
||||||
|
|
|
@ -116,7 +116,8 @@ public slots:
|
||||||
void actDrawCard();
|
void actDrawCard();
|
||||||
void actDrawCards();
|
void actDrawCards();
|
||||||
void actUndoDraw();
|
void actUndoDraw();
|
||||||
void actMulligan();
|
void actMulligan();
|
||||||
|
void actMoveTopCardToPlayFaceDown();
|
||||||
void actMoveTopCardsToGrave();
|
void actMoveTopCardsToGrave();
|
||||||
void actMoveTopCardsToExile();
|
void actMoveTopCardsToExile();
|
||||||
void actMoveTopCardToBottom();
|
void actMoveTopCardToBottom();
|
||||||
|
@ -169,7 +170,7 @@ private:
|
||||||
*aMoveRfgToTopLibrary, *aMoveRfgToBottomLibrary, *aMoveRfgToHand, *aMoveRfgToGrave,
|
*aMoveRfgToTopLibrary, *aMoveRfgToBottomLibrary, *aMoveRfgToHand, *aMoveRfgToGrave,
|
||||||
*aViewLibrary, *aViewTopCards, *aAlwaysRevealTopCard, *aOpenDeckInDeckEditor, *aMoveTopCardsToGrave, *aMoveTopCardsToExile, *aMoveTopCardToBottom,
|
*aViewLibrary, *aViewTopCards, *aAlwaysRevealTopCard, *aOpenDeckInDeckEditor, *aMoveTopCardsToGrave, *aMoveTopCardsToExile, *aMoveTopCardToBottom,
|
||||||
*aViewGraveyard, *aViewRfg, *aViewSideboard,
|
*aViewGraveyard, *aViewRfg, *aViewSideboard,
|
||||||
*aDrawCard, *aDrawCards, *aUndoDraw, *aMulligan, *aShuffle,
|
*aDrawCard, *aDrawCards, *aUndoDraw, *aMulligan, *aShuffle, *aMoveTopToPlayFaceDown,
|
||||||
*aUntapAll, *aRollDie, *aCreateToken, *aCreateAnotherToken,
|
*aUntapAll, *aRollDie, *aCreateToken, *aCreateAnotherToken,
|
||||||
*aCardMenu, *aMoveBottomCardToGrave;
|
*aCardMenu, *aMoveBottomCardToGrave;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue