From: Ian Jackson Date: Fri, 19 Mar 2021 19:47:25 +0000 (+0000) Subject: clock: User swap to other position X-Git-Tag: otter-0.5.0~640 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=aeabf9a13afaa2bd0ddfcb4e8541e50b1c4daf11;p=otter.git clock: User swap to other position Signed-off-by: Ian Jackson --- diff --git a/src/clock.rs b/src/clock.rs index 8250a2c9..632cd227 100644 --- a/src/clock.rs +++ b/src/clock.rs @@ -430,12 +430,11 @@ impl PieceTrait for Clock { if let Some(_gpl) = gs.players.get(state.users[user].player) { throw!(OE::BadPieceStateForOperation); } + state.users[user].player = player; if state.users[! user].player == player { - // todo: some more useful per-player message - // xxx: actually, clear us from the other player instead ? - throw!(OE::BadPieceStateForOperation); + // OK, you want to swap + state.users[! user].player = default(); } - state.users[user].player = player; }, "unclaim-x" | "unclaim-y" => { // xxx these need to be Unpredictable let user = get_user();