Documentation
¶
Index ¶
- Constants
- func ReadFromTCP(conn net.Conn) ([]byte, error)
- func ReadFromUDP(conn *net.UDPConn) ([]byte, error)
- type ErrConnectionClosedByClient
- type ErrConnectionClosedByServer
- type NetworkManager
- func (m *NetworkManager) ClientID() uint32
- func (m *NetworkManager) IsConnected() bool
- func (m *NetworkManager) SendReliableMessage(msg *messages.Message) error
- func (m *NetworkManager) SendUnreliableMessage(msg *messages.Message) error
- func (m *NetworkManager) ServerMessageQueue() queue.Queue
- func (m *NetworkManager) ServerSettings() ServerSettings
- func (m *NetworkManager) ServerTime() (serverTime float64, ping float64)
- func (m *NetworkManager) Start(token string, characterID int32) error
- func (m *NetworkManager) Stop() error
- func (m *NetworkManager) TCPClientErrChan() <-chan error
- func (m *NetworkManager) UDPClientErrChan() <-chan error
- func (m *NetworkManager) UpdateServerTime(deltaTime float64)
- type ServerSettings
- type TCPClient
- type UDPClient
Constants ¶
const ( DefaultServerHostname = "localhost" DefaultServerTCPPort = 8888 DefaultServerUDPPort = 8889 )
Variables ¶
This section is empty.
Functions ¶
func ReadFromTCP ¶
ReadFromTCP reads a buffer from a TCP connection
Types ¶
type ErrConnectionClosedByClient ¶
type ErrConnectionClosedByClient struct{}
ErrConnectionClosed is returned when the TCP connection is closed
func (*ErrConnectionClosedByClient) Error ¶
func (e *ErrConnectionClosedByClient) Error() string
type ErrConnectionClosedByServer ¶
type ErrConnectionClosedByServer struct{}
ErrConnectionClosedByServer is returned when the TCP connection is closed
func (*ErrConnectionClosedByServer) Error ¶
func (e *ErrConnectionClosedByServer) Error() string
type NetworkManager ¶
type NetworkManager struct {
// contains filtered or unexported fields
}
NetworkManager represents a network manager.
func NewNetworkManager ¶
func NewNetworkManager(serverSettings ServerSettings, messageQueue queue.Queue) (*NetworkManager, error)
NewNetworkManager creates a new network manager.
func (*NetworkManager) ClientID ¶
func (m *NetworkManager) ClientID() uint32
func (*NetworkManager) IsConnected ¶
func (m *NetworkManager) IsConnected() bool
func (*NetworkManager) SendReliableMessage ¶
func (m *NetworkManager) SendReliableMessage(msg *messages.Message) error
func (*NetworkManager) SendUnreliableMessage ¶
func (m *NetworkManager) SendUnreliableMessage(msg *messages.Message) error
func (*NetworkManager) ServerMessageQueue ¶
func (m *NetworkManager) ServerMessageQueue() queue.Queue
func (*NetworkManager) ServerSettings ¶
func (m *NetworkManager) ServerSettings() ServerSettings
func (*NetworkManager) ServerTime ¶
func (m *NetworkManager) ServerTime() (serverTime float64, ping float64)
func (*NetworkManager) Start ¶
func (m *NetworkManager) Start(token string, characterID int32) error
Start starts the network manager.
func (*NetworkManager) Stop ¶
func (m *NetworkManager) Stop() error
Stop stops the network manager and its clients and clears the server message queue.
func (*NetworkManager) TCPClientErrChan ¶
func (m *NetworkManager) TCPClientErrChan() <-chan error
func (*NetworkManager) UDPClientErrChan ¶
func (m *NetworkManager) UDPClientErrChan() <-chan error
func (*NetworkManager) UpdateServerTime ¶
func (m *NetworkManager) UpdateServerTime(deltaTime float64)
UpdateServerTime updates the server time with the given delta time. This is intended to be called by the game update loop to keep the server time in sync with the client's time.
type ServerSettings ¶
type TCPClient ¶
type TCPClient struct {
// contains filtered or unexported fields
}
TCPClient represents a TCP client.
func NewTCPClient ¶
func NewTCPClient(serverAddr string, messageQueue queue.Queue, clientIDChan chan<- uint32, loginErrChan chan<- error, serverTimeChan chan<- *messages.ServerSyncTime) *TCPClient
NewTCPClient creates a new TCP client.
type UDPClient ¶
type UDPClient struct {
// contains filtered or unexported fields
}
UDPClient represents a UDP client.
func NewUDPClient ¶
NewUDPClient creates a new UDP client.