From a3a6f64bff60b5b216d24561a722775faa676669 Mon Sep 17 00:00:00 2001 From: Tor Andersson Date: Thu, 1 Feb 2024 20:56:12 +0100 Subject: Fix check for recapturing fortresses. Should only check for presence of enemy units/amphib; not control. A besieged fortress that loses all defenders should revert immediately. --- rules.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/rules.js b/rules.js index bd820ab..2c2dbe5 100644 --- a/rules.js +++ b/rules.js @@ -1867,6 +1867,7 @@ function recapture_french_fortress(s) { set_all_pieces_outside(s) set_delete(game.british.fortresses, s) set_add(game.french.fortresses, s) + delete game.sieges[s] award_french_vp(3) } @@ -1875,6 +1876,7 @@ function recapture_british_fortress(s) { set_all_pieces_outside(s) set_delete(game.french.fortresses, s) set_add(game.british.fortresses, s) + delete game.sieges[s] award_british_vp(3) } @@ -1952,10 +1954,10 @@ function lift_sieges_and_amphib() { // Recapture abandoned enemy fortresses. for (let s of originally_french_fortresses) - if (set_has(game.british.fortresses, s) && is_french_controlled_space(s)) + if (set_has(game.british.fortresses, s) && !has_british_units(s) && !has_amphib(s)) recapture_french_fortress(s) for (let s of originally_british_fortresses) - if (set_has(game.french.fortresses, s) && is_british_controlled_space(s)) + if (set_has(game.french.fortresses, s) && !has_french_units(s)) recapture_british_fortress(s) // Remove forts u/c if solely occupied by enemy drilled troops -- cgit v1.2.3