summaryrefslogtreecommitdiff
path: root/rules.js
diff options
context:
space:
mode:
Diffstat (limited to 'rules.js')
-rw-r--r--rules.js41
1 files changed, 25 insertions, 16 deletions
diff --git a/rules.js b/rules.js
index bfb39f8..372fcba 100644
--- a/rules.js
+++ b/rules.js
@@ -1502,52 +1502,61 @@ function end_versailles_crisis_breach() {
}
states.commune_crisis_breach = {
- inactive: "add cubes to Pool",
+ inactive: "move bonus cubes",
prompt() {
- view.prompt = "Crisis Breach: Add cubes to Pool."
+ view.prompt = "Crisis Breach: Move bonus cubes to Pool."
if (count_commune_cubes(RED_CRISIS_TRACK[1]) < 2)
for_each_commune_cube(RED_BONUS_CUBES[0], gen_action_piece)
if (count_commune_cubes(RED_CRISIS_TRACK[2]) < 2)
for_each_commune_cube(RED_BONUS_CUBES[1], gen_action_piece)
- if (count_commune_cubes(RED_CRISIS_TRACK[3]) < 2)
- for_each_commune_cube(RED_BONUS_CUBES[2], gen_action_piece)
+ if (count_commune_cubes(RED_CRISIS_TRACK[3]) < 2) {
+ if (count_versailles_cubes(BLUE_BONUS_CUBES[2]) > 0) {
+ view.prompt = "Crisis Breach: Remove bonus cubes."
+ for_each_versailles_cube(BLUE_BONUS_CUBES[2], gen_action_piece)
+ } else
+ for_each_commune_cube(RED_BONUS_CUBES[2], gen_action_piece)
+ }
},
piece(p) {
- if (p === RED_BONUS_CUBES[2] && !is_commune_first_to_breach_final()) {
+ if (is_versailles_cube(p)) {
remove_piece_from_play(p)
- log("Removed RC from bonus.")
+ log("Removed BC from bonus.")
} else {
remove_piece(p)
if (game.pieces[p] < 0)
log("Removed RC from bonus.")
else
log("Added RC to Pool.")
+ goto_commune_crisis_breach()
}
- goto_commune_crisis_breach()
},
}
states.versailles_crisis_breach = {
- inactive: "add cubes to Pool",
+ inactive: "move bonus cubes",
prompt() {
- view.prompt = "Crisis Breach: Add cubes to Pool."
+ view.prompt = "Crisis Breach: Move bonus cubes to Pool."
if (count_versailles_cubes(BLUE_CRISIS_TRACK[1]) < 2)
for_each_versailles_cube(BLUE_BONUS_CUBES[0], gen_action_piece)
if (count_versailles_cubes(BLUE_CRISIS_TRACK[2]) < 1)
for_each_versailles_cube(BLUE_BONUS_CUBES[1], gen_action_piece)
- if (count_versailles_cubes(BLUE_CRISIS_TRACK[3]) < 2)
- for_each_versailles_cube(BLUE_BONUS_CUBES[2], gen_action_piece)
+ if (count_versailles_cubes(BLUE_CRISIS_TRACK[3]) < 2) {
+ if (count_commune_cubes(RED_BONUS_CUBES[2]) > 0) {
+ view.prompt = "Crisis Breach: Remove opponent's bonus cubes."
+ for_each_commune_cube(RED_BONUS_CUBES[2], gen_action_piece)
+ } else
+ for_each_versailles_cube(BLUE_BONUS_CUBES[2], gen_action_piece)
+ }
},
piece(p) {
- let s = game.pieces[p]
- if (s === BLUE_BONUS_CUBES[2] && !is_versailles_first_to_breach_final()) {
+ if (is_commune_cube(p)) {
remove_piece_from_play(p)
- log("Removed BC from bonus.")
+ log("Removed RC from bonus.")
} else {
remove_piece(p)
log("Added BC to Pool.")
+ goto_versailles_crisis_breach()
}
- goto_versailles_crisis_breach()
},
}
@@ -3216,7 +3225,7 @@ exports.setup = function (seed, scenario, options) {
strategy_deck: [],
objective_deck: [],
- discard: 0,
+ discard: [],
red_final: 34,
red_hand: [],