mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-06-17 04:27:45 -07:00
[Game] Add Command Zone support with commander tax tracking
- Add CommandZone and CommandZoneLogic for commander - Add CommanderTaxCounter - Add counter active state protocol (show/hide tax counters) - Add "Enable Command Zone" option in game creation dialogs - Add context menu actions for command zone operations Took 9 minutes Took 11 minutes
This commit is contained in:
parent
da4ba222c0
commit
b4057a865d
73 changed files with 1540 additions and 86 deletions
|
|
@ -33,10 +33,13 @@ DlgLocalGameOptions::DlgLocalGameOptions(QWidget *parent) : QDialog(parent)
|
|||
startingLifeTotalEdit->setValue(20);
|
||||
startingLifeTotalLabel->setBuddy(startingLifeTotalEdit);
|
||||
|
||||
enableCommandZoneCheckBox = new QCheckBox(tr("Enable command zone"), this);
|
||||
|
||||
auto *gameSetupGrid = new QGridLayout;
|
||||
gameSetupGrid->setContentsMargins(5, 5, 5, 5);
|
||||
gameSetupGrid->addWidget(startingLifeTotalLabel, 0, 0);
|
||||
gameSetupGrid->addWidget(startingLifeTotalEdit, 0, 1);
|
||||
gameSetupGrid->addWidget(enableCommandZoneCheckBox, 1, 0, 1, 2);
|
||||
gameSetupOptionsGroupBox = new QGroupBox(tr("Game setup options"), this);
|
||||
gameSetupOptionsGroupBox->setLayout(gameSetupGrid);
|
||||
|
||||
|
|
@ -57,6 +60,7 @@ DlgLocalGameOptions::DlgLocalGameOptions(QWidget *parent) : QDialog(parent)
|
|||
if (rememberSettingsCheckBox->isChecked()) {
|
||||
numberPlayersEdit->setValue(SettingsCache::instance().getLocalGameMaxPlayers());
|
||||
startingLifeTotalEdit->setValue(SettingsCache::instance().getLocalGameStartingLifeTotal());
|
||||
enableCommandZoneCheckBox->setChecked(SettingsCache::instance().getLocalGameEnableCommandZone());
|
||||
}
|
||||
|
||||
setWindowTitle(tr("Local game options"));
|
||||
|
|
@ -71,6 +75,7 @@ void DlgLocalGameOptions::actOK()
|
|||
if (rememberSettingsCheckBox->isChecked()) {
|
||||
SettingsCache::instance().setLocalGameMaxPlayers(numberPlayersEdit->value());
|
||||
SettingsCache::instance().setLocalGameStartingLifeTotal(startingLifeTotalEdit->value());
|
||||
SettingsCache::instance().setLocalGameEnableCommandZone(enableCommandZoneCheckBox->isChecked());
|
||||
}
|
||||
|
||||
accept();
|
||||
|
|
@ -81,5 +86,6 @@ LocalGameOptions DlgLocalGameOptions::getOptions() const
|
|||
return LocalGameOptions{
|
||||
.numberPlayers = numberPlayersEdit->value(),
|
||||
.startingLifeTotal = startingLifeTotalEdit->value(),
|
||||
.enableCommandZone = enableCommandZoneCheckBox->isChecked(),
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue