summaryrefslogtreecommitdiff
path: root/pkg/ui/multiplayer/multiplayer.go
diff options
context:
space:
mode:
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,