summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rules.js31
1 files changed, 20 insertions, 11 deletions
diff --git a/rules.js b/rules.js
index 0834fc5..2292b71 100644
--- a/rules.js
+++ b/rules.js
@@ -3939,10 +3939,14 @@ states.american_winter_attrition = {
// american stack
else if (n_american > 0 && n_french === 0) {
- if (wq && has_washington)
- apply_winter_attrition(remove_american_cu, s, n_american - 5)
- else
+ if (wq && has_washington) {
+ if (n_american === 6)
+ apply_single_winter_attrition(remove_american_cu, s)
+ else
+ apply_winter_attrition(remove_american_cu, s, n_american - 5)
+ } else {
apply_winter_attrition(remove_american_cu, s, n_american)
+ }
}
// mixed stack
@@ -3952,14 +3956,19 @@ states.american_winter_attrition = {
n_total = Math.max(0, n_total - 5)
// TODO: let player choose (but why would they ever choose French?)
- let half = Math.floor(n_total / 2)
- let lose_american = Math.min(half, n_american)
- log(lose_american + " American CU at " + s)
- remove_american_cu(s, n_american)
- half -= lose_american
- if (half > 0) {
- log(half + " French CU at " + s)
- remove_french_cu(s, half)
+
+ if (n_total === 1) {
+ apply_winter_attrition(remove_american_cu, s, n_american)
+ } else {
+ let half = Math.floor(n_total / 2)
+ let lose_american = Math.min(half, n_american)
+ log(lose_american + " American CU at " + s)
+ remove_american_cu(s, n_american)
+ half -= lose_american
+ if (half > 0) {
+ log(half + " French CU at " + s)
+ remove_french_cu(s, half)
+ }
}
}