diff options
Diffstat (limited to 'rules.js')
-rw-r--r-- | rules.js | 41 |
1 files changed, 25 insertions, 16 deletions
@@ -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: [], |