summaryrefslogtreecommitdiff
path: root/pkg/ui/multiplayer/multiplayer.go
diff options
context:
space:
mode:
authorSanto Cariotti <santo@dcariotti.me>2025-04-16 11:46:04 +0200
committerSanto Cariotti <santo@dcariotti.me>2025-04-16 11:46:04 +0200
commitba4afeb4ee19c24b393ec21d374bdd752651c1a6 (patch)
tree2082deaddd348439605a7209fbffd4a355ff7b37 /pkg/ui/multiplayer/multiplayer.go
parent76f46e54175253d4b2ba61b9cb8f2525a48c15d8 (diff)
Remove topics on network
Diffstat (limited to 'pkg/ui/multiplayer/multiplayer.go')
-rw-r--r--pkg/ui/multiplayer/multiplayer.go13
1 files changed, 11 insertions, 2 deletions
diff --git a/pkg/ui/multiplayer/multiplayer.go b/pkg/ui/multiplayer/multiplayer.go
index 436388f..1680035 100644
--- a/pkg/ui/multiplayer/multiplayer.go
+++ b/pkg/ui/multiplayer/multiplayer.go
@@ -1,7 +1,10 @@
package multiplayer
import (
+ "time"
+
"github.com/boozec/rahanna/internal/network"
+ "go.uber.org/zap"
)
type GameNetwork struct {
@@ -9,8 +12,14 @@ type GameNetwork struct {
Peer string
}
-func NewGameNetwork(localID, localIP string, localPort int, callback func()) *GameNetwork {
- server := network.NewTCPNetwork(localID, localIP, localPort, callback)
+func NewGameNetwork(localID string, address string, onHandshake network.NetworkHandshakeFunc, logger *zap.Logger) *GameNetwork {
+ opts := network.TCPNetworkOpts{
+ ListenAddr: address,
+ HandshakeFn: onHandshake,
+ RetryDelay: time.Second * 2,
+ Logger: logger,
+ }
+ server := network.NewTCPNetwork(network.NetworkID(localID), opts)
peer := ""
return &GameNetwork{
Server: server,