summaryrefslogtreecommitdiff
path: root/rules.ts
diff options
context:
space:
mode:
authorTor Andersson <tor@ccxvii.net>2024-05-05 12:02:34 +0200
committerTor Andersson <tor@ccxvii.net>2024-05-05 12:02:34 +0200
commitac0255c29ebaa572f3854e2d8bd68917c88643d7 (patch)
treebd431f5d96572122cd0ac696de410c395f53571a /rules.ts
parentba8e3327dbd5eaa6a952d573a24793176bb01f22 (diff)
downloadplantagenet-ac0255c29ebaa572f3854e2d8bd68917c88643d7.tar.gz
warwick + margaret starting in exile box
Diffstat (limited to 'rules.ts')
-rw-r--r--rules.ts16
1 files changed, 13 insertions, 3 deletions
diff --git a/rules.ts b/rules.ts
index 570f40b..0f4a34e 100644
--- a/rules.ts
+++ b/rules.ts
@@ -1495,6 +1495,16 @@ function can_pick_up_lords(lord: Lord) {
return false
}
+function can_pick_up_other(lord: Lord, other: Lord) {
+ if (game.scenario === SCENARIO_II) {
+ if (lord === LORD_WARWICK_L && other === LORD_MARGARET)
+ return false
+ if (lord === LORD_MARGARET && other === LORD_WARWICK_L)
+ return false
+ }
+ return (other !== lord && !is_marshal(other))
+}
+
// === STATE: LORD (SHARED) ===
function get_york_shared_assets(loc: Locale, what: Asset) {
@@ -3905,7 +3915,7 @@ states.command = {
if (can_pick_up_lords(game.command)) {
for_each_friendly_lord_in_locale(here, other => {
- if (other !== game.command && !is_marshal(other))
+ if (can_pick_up_other(game.command, other))
gen_action_lord(other)
})
}
@@ -5367,7 +5377,7 @@ states.intercept = {
if (can_pick_up_lords(game.who)) {
for_each_friendly_lord_in_locale(get_lord_locale(game.who), other => {
- if (other !== game.who && !is_marshal(other) && is_move_allowed(other, to))
+ if (can_pick_up_other(game.who, other) && is_move_allowed(other, to))
gen_action_lord(other)
})
}
@@ -12749,7 +12759,7 @@ states.surprise_landing = {
if (can_pick_up_lords(game.command)) {
for_each_friendly_lord_in_locale(get_lord_locale(game.command), other => {
- if (other !== game.command && !is_marshal(other))
+ if (can_pick_up_other(game.command, other))
gen_action_lord(other)
})
}