diff options
author | Santo Cariotti <santo@dcariotti.me> | 2025-04-18 16:09:32 +0200 |
---|---|---|
committer | Santo Cariotti <santo@dcariotti.me> | 2025-04-18 16:09:32 +0200 |
commit | 7c5a6176b27b6b0c0c3ef8a4aedbdec871391a80 (patch) | |
tree | 5ebfc9b402b8aa941ab9617b5f3842071edafedf /pkg/ui/multiplayer/multiplayer.go | |
parent | 0b4fb251efdfd2fba7cd6154f5f59bd61ede15f1 (diff) |
Add type on messages between peers
Diffstat (limited to 'pkg/ui/multiplayer/multiplayer.go')
-rw-r--r-- | pkg/ui/multiplayer/multiplayer.go | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/pkg/ui/multiplayer/multiplayer.go b/pkg/ui/multiplayer/multiplayer.go index ac3bc7a..98ccfb4 100644 --- a/pkg/ui/multiplayer/multiplayer.go +++ b/pkg/ui/multiplayer/multiplayer.go @@ -8,6 +8,18 @@ import ( "go.uber.org/zap" ) +type MoveType string + +const ( + AbandonGameMessage MoveType = "abandon" + MoveGameMessage MoveType = "new-move" +) + +type GameMove struct { + Type []byte `json:"type"` + Payload []byte `json:"payload"` +} + type GameNetwork struct { server *p2p.TCPNetwork me p2p.NetworkID @@ -37,8 +49,8 @@ func (n *GameNetwork) Me() p2p.NetworkID { return n.me } -func (n *GameNetwork) Send(payload []byte) error { - return n.server.Send(n.peer, payload) +func (n *GameNetwork) Send(messageType []byte, payload []byte) error { + return n.server.Send(n.peer, messageType, payload) } func (n *GameNetwork) AddPeer(remoteID p2p.NetworkID, addr string) { @@ -55,9 +67,9 @@ func (n *GameNetwork) Close() error { logger, _ := logger.GetLogger() if err != nil { - logger.Sugar().Errorf("Can't close connection for network '%+v': %s", n, err.Error()) + logger.Sugar().Errorf("can't close connection for network '%+v': %s", n, err.Error()) } else { - logger.Sugar().Infof("Connection closed for network '%+v'", n) + logger.Sugar().Infof("connection closed for network '%+v'", n) } return err |