mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-06-10 16:24:45 -07:00
create related token if you press the 'Token:' button (#2455)
* create related token if you press the 'Token:' button * function set
This commit is contained in:
parent
b2f2e9db8a
commit
bd850fa3ff
2 changed files with 31 additions and 7 deletions
|
|
@ -1083,13 +1083,7 @@ void Player::actCreatePredefinedToken()
|
|||
if(!cardInfo)
|
||||
return;
|
||||
|
||||
lastTokenName = cardInfo->getName();
|
||||
lastTokenColor = cardInfo->getColors().isEmpty() ? QString() : cardInfo->getColors().first().toLower();
|
||||
lastTokenPT = cardInfo->getPowTough();
|
||||
lastTokenAnnotation = settingsCache->getAnnotateTokens() ? cardInfo->getText() : "";
|
||||
lastTokenTableRow = table->clampValidTableRow(2 - cardInfo->getTableRow());
|
||||
lastTokenDestroy = true;
|
||||
aCreateAnotherToken->setEnabled(true);
|
||||
setLastToken(cardInfo);
|
||||
|
||||
actCreateAnotherToken();
|
||||
}
|
||||
|
|
@ -1103,6 +1097,13 @@ void Player::actCreateRelatedCard()
|
|||
QAction *action = static_cast<QAction *>(sender());
|
||||
const QString &actionDisplayName = action->text();
|
||||
createCard(sourceCard, dbNameFromTokenDisplayName(actionDisplayName));
|
||||
|
||||
/*
|
||||
* If we made a token via "Token: TokenName"
|
||||
* then lets allow it to be created via create another
|
||||
*/
|
||||
CardInfo *cardInfo = db->getCard(dbNameFromTokenDisplayName(actionDisplayName));
|
||||
setLastToken(cardInfo);
|
||||
}
|
||||
|
||||
void Player::actCreateAllRelatedCards()
|
||||
|
|
@ -1119,6 +1120,16 @@ void Player::actCreateAllRelatedCards()
|
|||
{
|
||||
createCard(sourceCard, dbNameFromTokenDisplayName(tokenName));
|
||||
}
|
||||
|
||||
/*
|
||||
* If we made a token via "Token: TokenName"
|
||||
* then lets allow it to be created via create another
|
||||
*/
|
||||
if (relatedCards.length() == 1)
|
||||
{
|
||||
CardInfo *cardInfo = db->getCard(dbNameFromTokenDisplayName(relatedCards.at(0)));
|
||||
setLastToken(cardInfo);
|
||||
}
|
||||
}
|
||||
|
||||
void Player::createCard(const CardItem *sourceCard, const QString &dbCardName) {
|
||||
|
|
@ -2521,3 +2532,14 @@ void Player::processSceneSizeChange(int newPlayerWidth)
|
|||
table->setWidth(tableWidth);
|
||||
hand->setWidth(tableWidth + stack->boundingRect().width());
|
||||
}
|
||||
|
||||
void Player::setLastToken(CardInfo *cardInfo)
|
||||
{
|
||||
lastTokenName = cardInfo->getName();
|
||||
lastTokenColor = cardInfo->getColors().isEmpty() ? QString() : cardInfo->getColors().first().toLower();
|
||||
lastTokenPT = cardInfo->getPowTough();
|
||||
lastTokenAnnotation = settingsCache->getAnnotateTokens() ? cardInfo->getText() : "";
|
||||
lastTokenTableRow = table->clampValidTableRow(2 - cardInfo->getTableRow());
|
||||
lastTokenDestroy = true;
|
||||
aCreateAnotherToken->setEnabled(true);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue