Documentation
¶
Index ¶
- func InitRoom(r IRoom)
- func Manager(playerChan chan IPlayerConn, getWorld func(id interface{}) IWorld)
- func ParsePlayerConn(p IPlayerConn, pchan chan IPlayerConn)
- type IPlayerConn
- type IRoom
- type IWorld
- type PlayerConn
- func (p *PlayerConn) Close()
- func (p *PlayerConn) GetID() interface{}
- func (p *PlayerConn) GetWorldID() interface{}
- func (p *PlayerConn) Login(b []byte) (ok bool)
- func (p *PlayerConn) LoginInput() (b []byte, err error)
- func (p *PlayerConn) ParseMessage(b []byte) (msg interface{}, ok bool)
- func (p *PlayerConn) ReadDeamon(cp IPlayerConn)
- func (p *PlayerConn) Send(b []byte)
- func (p *PlayerConn) SendBroadcast(pm *websocket.PreparedMessage, stop bool)
- func (p *PlayerConn) SendDeamon()
- func (p *PlayerConn) SendManager(pchan chan IPlayerConn, np IPlayerConn) (ok bool)
- func (p *PlayerConn) SendStop(b []byte)
- func (p *PlayerConn) SetRoom(r IRoom)
- type PlayerConnMsg
- type Room
- func (r *Room) GetTickDuration() time.Duration
- func (r *Room) Init()
- func (r *Room) LoopServe() (ok bool)
- func (r *Room) PlayerConn(p IPlayerConn)
- func (r *Room) PlayerExit(p IPlayerConn)
- func (r *Room) PlayerMsg(p IPlayerConn, msg interface{})
- func (r *Room) SendMsg(msg []byte, playerID ...interface{})
- func (r *Room) Start(tick time.Duration)
- func (r *Room) Stop()
- type World
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Manager ¶
func Manager(playerChan chan IPlayerConn, getWorld func(id interface{}) IWorld)
Manager ...
func ParsePlayerConn ¶
func ParsePlayerConn(p IPlayerConn, pchan chan IPlayerConn)
ParsePlayerConn 处理通过 ws 连接过来的用户
Types ¶
type IPlayerConn ¶
type IPlayerConn interface { LoginInput() (b []byte, err error) Login(b []byte) (ok bool) SendManager(pchan chan IPlayerConn, np IPlayerConn) (ok bool) SetRoom(r IRoom) GetWorldID() interface{} GetID() interface{} SendDeamon() ReadDeamon(cp IPlayerConn) ParseMessage(b []byte) (msg interface{}, ok bool) Send(b []byte) SendStop(b []byte) SendBroadcast(pm *websocket.PreparedMessage, stop bool) Close() }
IPlayerConn 用户
type IRoom ¶
type IRoom interface { PlayerConn(p IPlayerConn) PlayerMsg(p IPlayerConn, msg interface{}) PlayerExit(p IPlayerConn) SendMsg(msg []byte, playerID ...interface{}) GetTickDuration() (d time.Duration) Start(tick time.Duration) Stop() Init() }
IRoom ...
type IWorld ¶
type IWorld interface { Player(p IPlayerConn, status bool) Input(p IPlayerConn, msg interface{}) PlayerConn(p IPlayerConn) Tick(i int) (ok bool) }
IWorld ...
type PlayerConn ¶
type PlayerConn struct { ID interface{} WS *websocket.Conn CloseCode int CloseText string // contains filtered or unexported fields }
PlayerConn ...
func (*PlayerConn) Login ¶ added in v1.0.1
func (p *PlayerConn) Login(b []byte) (ok bool)
LoginDecode ...
func (*PlayerConn) LoginInput ¶
func (p *PlayerConn) LoginInput() (b []byte, err error)
LoginInput ...
func (*PlayerConn) ParseMessage ¶
func (p *PlayerConn) ParseMessage(b []byte) (msg interface{}, ok bool)
ParseMessage ...
func (*PlayerConn) SendBroadcast ¶
func (p *PlayerConn) SendBroadcast(pm *websocket.PreparedMessage, stop bool)
SendBroadcast 群发消息专用,
func (*PlayerConn) SendManager ¶
func (p *PlayerConn) SendManager(pchan chan IPlayerConn, np IPlayerConn) (ok bool)
SendManager ...
Click to show internal directories.
Click to hide internal directories.