summaryrefslogtreecommitdiff
path: root/pkg/ui/views/game_moves.go
diff options
context:
space:
mode:
authorSanto Cariotti <santo@dcariotti.me>2025-04-18 21:25:32 +0200
committerSanto Cariotti <santo@dcariotti.me>2025-04-18 21:25:32 +0200
commit42d68aa99d59339dbdf928a54c28242635728daa (patch)
tree98dadfd64a0fc05d1fb6f6ddbc9a3e8963fbf1dd /pkg/ui/views/game_moves.go
parent7c5a6176b27b6b0c0c3ef8a4aedbdec871391a80 (diff)
Restore a game
Diffstat (limited to 'pkg/ui/views/game_moves.go')
-rw-r--r--pkg/ui/views/game_moves.go11
1 files changed, 9 insertions, 2 deletions
diff --git a/pkg/ui/views/game_moves.go b/pkg/ui/views/game_moves.go
index ea1fa02..32f440f 100644
--- a/pkg/ui/views/game_moves.go
+++ b/pkg/ui/views/game_moves.go
@@ -35,10 +35,17 @@ func (m *GameModel) getMoves() tea.Cmd {
return func() tea.Msg {
move := <-m.incomingMoves
- if multiplayer.MoveType(string(move.Type)) == multiplayer.AbandonGameMessage {
+
+ switch multiplayer.MoveType(string(move.Type)) {
+ case multiplayer.AbandonGameMessage:
return EndGameMsg{abandoned: true}
+ case multiplayer.RestoreGameMessage:
+ return SendRestoreMsg{}
+ case multiplayer.RestoreAckGameMessage:
+ return RestoreMoves(string(move.Payload))
+ default:
+ return ChessMoveMsg(string(move.Payload))
}
- return ChessMoveMsg(string(move.Payload))
}
}