diff options
author | Tor Andersson <tor@ccxvii.net> | 2025-01-18 12:44:35 +0100 |
---|---|---|
committer | Tor Andersson <tor@ccxvii.net> | 2025-02-02 11:31:26 +0100 |
commit | 5a81bfe84ff6daf09d41d98107987ecb84182295 (patch) | |
tree | 3e273c64fd5ed919aad1acc8c844caf7365e27e1 | |
parent | 8497f54a47248e5b910586475b4f284e78ce661a (diff) | |
download | time-of-crisis-5a81bfe84ff6daf09d41d98107987ecb84182295.tar.gz |
v3: may (not must) declare last round
-rw-r--r-- | play.js | 2 | ||||
-rw-r--r-- | rules.js | 24 |
2 files changed, 26 insertions, 0 deletions
@@ -1668,7 +1668,9 @@ function on_update() { action_button("end_actions", "End Actions") action_button("end_turn", "End Turn") + action_button("end_game", "End Game") + action_button("continue", "Continue") action_button("pass", "Pass") action_button("done", "Done") action_button("undo", "Undo") @@ -5466,6 +5466,10 @@ function goto_gain_legacy_provinces() { award_legacy_summary(game.current, "Improvements", count_own_improvements()) if (!game.end && is_emperor_player() && game.legacy[game.current] >= 60) { + if (is_deluxe()) { + game.state = "declare_last_round" + return + } log_br() log("Game will end after this round!") game.end = 1 @@ -5474,6 +5478,26 @@ function goto_gain_legacy_provinces() { goto_buy_trash_discard() } +states.declare_last_round = { + inactive: "End Game", + prompt() { + prompt("End Game: You may declare that this is the last round of the game.") + view.actions.end_game = 1 + view.actions.continue = 1 + }, + end_game() { + push_undo() + log_br() + log("Game will end after this round!") + game.end = 1 + goto_buy_trash_discard() + }, + continue() { + push_undo() + goto_buy_trash_discard() + }, +} + // === BUY / TRASH CARDS === function goto_buy_trash_discard() { |