diff options
author | Santo Cariotti <santo@dcariotti.me> | 2025-04-18 12:46:00 +0200 |
---|---|---|
committer | Santo Cariotti <santo@dcariotti.me> | 2025-04-18 12:46:00 +0200 |
commit | fafd0111465ded6bfec5c0d91d7dd9c19ddac50b (patch) | |
tree | 17908eae0e0d3292798b7d98777ff8fb22722cfe /pkg/ui/multiplayer | |
parent | 0f21452248783d627ec1a3b4e8a3f8f0d9a69a10 (diff) |
Close connection on end game
Diffstat (limited to 'pkg/ui/multiplayer')
-rw-r--r-- | pkg/ui/multiplayer/multiplayer.go | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/pkg/ui/multiplayer/multiplayer.go b/pkg/ui/multiplayer/multiplayer.go index 0e390eb..ac3bc7a 100644 --- a/pkg/ui/multiplayer/multiplayer.go +++ b/pkg/ui/multiplayer/multiplayer.go @@ -3,6 +3,7 @@ package multiplayer import ( "time" + "github.com/boozec/rahanna/internal/logger" "github.com/boozec/rahanna/pkg/p2p" "go.uber.org/zap" ) @@ -48,3 +49,16 @@ func (n *GameNetwork) AddPeer(remoteID p2p.NetworkID, addr string) { func (n *GameNetwork) AddReceiveFunction(f p2p.NetworkMessageReceiveFunc) { n.server.OnReceiveFn = f } + +func (n *GameNetwork) Close() error { + err := n.server.Close() + logger, _ := logger.GetLogger() + + if err != nil { + logger.Sugar().Errorf("Can't close connection for network '%+v': %s", n, err.Error()) + } else { + logger.Sugar().Infof("Connection closed for network '%+v'", n) + } + + return err +} |