diff options
Diffstat (limited to 'rules.js')
-rw-r--r-- | rules.js | 25 |
1 files changed, 14 insertions, 11 deletions
@@ -2431,6 +2431,7 @@ states.battle_round = { if (game.battle_round > 1) can_retreat = true can_pass = true } + for (let b of game.battle_list) { if (can_fire) gen_action(view, 'battle_fire', b) if (must_retreat || (can_retreat && can_retreat_with_block(b))) @@ -2439,17 +2440,19 @@ states.battle_round = { gen_action(view, 'block', b) } - let heir = can_heir_charge() - if (heir !== NOBODY && set_has(game.battle_list, heir)) - gen_action(view, 'battle_charge', heir) - if (can_attempt_treachery(game.king)) - gen_action(view, 'battle_treachery', game.king) - if (can_attempt_treachery(game.pretender)) - gen_action(view, 'battle_treachery', game.pretender) - if (can_attempt_treachery(B_WARWICK_L)) - gen_action(view, 'battle_treachery', B_WARWICK_L) - if (can_attempt_treachery(B_WARWICK_Y)) - gen_action(view, 'battle_treachery', B_WARWICK_Y) + if (!must_retreat) { + let heir = can_heir_charge() + if (heir !== NOBODY && set_has(game.battle_list, heir)) + gen_action(view, 'battle_charge', heir) + if (can_attempt_treachery(game.king)) + gen_action(view, 'battle_treachery', game.king) + if (can_attempt_treachery(game.pretender)) + gen_action(view, 'battle_treachery', game.pretender) + if (can_attempt_treachery(B_WARWICK_L)) + gen_action(view, 'battle_treachery', B_WARWICK_L) + if (can_attempt_treachery(B_WARWICK_Y)) + gen_action(view, 'battle_treachery', B_WARWICK_Y) + } }, battle_fire: function (who) { fire_with_block(who) |