summaryrefslogtreecommitdiff
path: root/rules.ts
diff options
context:
space:
mode:
authorTor Andersson <tor@ccxvii.net>2025-03-01 19:27:37 +0100
committerTor Andersson <tor@ccxvii.net>2025-03-01 19:28:10 +0100
commit8ea2481d40d05dbdb07a2b787d016d51f9b89959 (patch)
tree51242240a5707ebf82c4d647e4d14863d52556f5 /rules.ts
parent99de6e4bca3ec62d717ae255cf303dace1cb70e0 (diff)
downloadland-and-freedom-8ea2481d40d05dbdb07a2b787d016d51f9b89959.tar.gz
Fix intermittent bug with undo.
Diffstat (limited to 'rules.ts')
-rw-r--r--rules.ts7
1 files changed, 4 insertions, 3 deletions
diff --git a/rules.ts b/rules.ts
index 1939d74..1cc024a 100644
--- a/rules.ts
+++ b/rules.ts
@@ -172,11 +172,12 @@ export function action(
action: string,
arg: unknown
) {
- if (action !== 'undo' && state.state !== 'choose_card') {
- state.undo = push_undo();
+ game = state;
+
+ if (action !== 'undo' && game.state !== 'choose_card') {
+ push_undo();
}
- game = state;
let S = states[game.state];
if (action in S) S[action](arg, player);
else if (action === 'undo' && game.undo && game.undo.length > 0) pop_undo();