summaryrefslogtreecommitdiff
path: root/rules.ts
diff options
context:
space:
mode:
authorTor Andersson <tor@ccxvii.net>2024-08-02 11:10:44 +0200
committerTor Andersson <tor@ccxvii.net>2024-08-02 11:23:33 +0200
commit2b9e11c62498dff3bfff318d67d5e16e99b64969 (patch)
tree749cf09f6840ba31824612e1057437b08e16309c /rules.ts
parente97bf1e0134d5622d7d20865505f37cdc8c57bdd (diff)
downloadplantagenet-2b9e11c62498dff3bfff318d67d5e16e99b64969.tar.gz
fix Final Charge.
Don't clear flag if opponent takes a hit on a Retinue! Force first hit on Richard III's Retinue correctly.
Diffstat (limited to 'rules.ts')
-rw-r--r--rules.ts16
1 files changed, 9 insertions, 7 deletions
diff --git a/rules.ts b/rules.ts
index bcdce10..fdcd472 100644
--- a/rules.ts
+++ b/rules.ts
@@ -7644,17 +7644,18 @@ function end_attacker_assign_hits() {
function prompt_hit_forces() {
let done = true
+
+ // Note: Must take hit from Final Charge on Richard III's Retinue.
+ if (game.battle.final_charge && game.active === YORK) {
+ gen_action_retinue(LORD_RICHARD_III)
+ return false
+ }
+
for (let pos of game.battle.engagements[0]) {
let lord = game.battle.array[pos]
if (!is_friendly_lord(lord))
continue
- // Note: Must take hit from Final Charge on Retinue.
- if (lord === LORD_RICHARD_III && game.battle.final_charge) {
- gen_action_retinue(lord)
- return false
- }
-
if (get_lord_forces(lord, RETINUE) > 0) {
gen_action_retinue(lord)
done = false
@@ -7736,7 +7737,8 @@ states.assign_hits = {
},
retinue(lord) {
- game.battle.final_charge = 0
+ if (lord === LORD_RICHARD_III && game.battle.final_charge)
+ game.battle.final_charge = 0
action_assign_hits(lord, RETINUE)
},
men_at_arms(lord) {