Documentation
¶
Index ¶
- Constants
- type FrameSever
- func (f *FrameSever) GameOver(c entity.Context, req *frameproto.GameOverReq) error
- func (f *FrameSever) Heartbeat(c entity.Context, req *frameproto.HeartbeatReq) (*frameproto.HeartbeatRsp, error)
- func (f *FrameSever) Init(c entity.Context, req *frameproto.InitReq) (*frameproto.InitRsp, error)
- func (f *FrameSever) Input(c entity.Context, req *frameproto.InputReq) error
- func (f *FrameSever) Join(c entity.Context, req *frameproto.JoinReq) (*frameproto.JoinRsp, error)
- func (f *FrameSever) OnInit()
- func (f *FrameSever) OnNotify(wn entity.NotifyInfo)
- func (f *FrameSever) OnTick()
- func (f *FrameSever) Progress(c entity.Context, req *frameproto.ProgressReq) error
- func (f *FrameSever) Ready(c entity.Context, req *frameproto.ReadyReq) error
- type GameState
- type Player
- func (p *Player) Cleanup()
- func (p *Player) GetLastHeartbeatTime() int64
- func (p *Player) GetSendFrameCount() uint32
- func (p *Player) IsOnline() bool
- func (p *Player) LoadingProgress() int32
- func (p *Player) RefreshHeartbeatTime()
- func (p *Player) SetLoadingProgress(n int32)
- func (p *Player) SetSendFrameCount(c uint32)
Constants ¶
View Source
const ( BroadcastFrameCnt = 3 // 每秒45帧, 3帧一次下发, 也就是1秒15次下发,大概66毫秒一次 FrameFrequency = 15 * BroadcastFrameCnt // 每秒45帧, 3帧一次下发, 也就是1秒15次下发,大概66毫秒一次 FrameTimer = 1000 / FrameFrequency // 心跳Timer MaxReadyTime int64 = 20 // second,准备阶段最长时间,如果超过这个时间没人连进来直接关闭游戏 MaxGameFrame uint32 = 30*60*FrameFrequency + 100 // 每局最大帧数(30分钟) MaxFrameDataPerMsg = 60 // 每个消息包最多包含多少个帧数据 BadNetworkThreshold = 2 // 这个时间段没有收到心跳包认为他网络很差,不再持续给发包(网络层的读写时间设置的比较长,客户端要求的方案) )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type FrameSever ¶
FrameSever
func (*FrameSever) GameOver ¶
func (f *FrameSever) GameOver(c entity.Context, req *frameproto.GameOverReq) error
GameOver 上报结束
func (*FrameSever) Heartbeat ¶
func (f *FrameSever) Heartbeat(c entity.Context, req *frameproto.HeartbeatReq) (*frameproto.HeartbeatRsp, error)
Heartbeat
func (*FrameSever) Init ¶
func (f *FrameSever) Init(c entity.Context, req *frameproto.InitReq) (*frameproto.InitRsp, error)
Init
func (*FrameSever) Input ¶
func (f *FrameSever) Input(c entity.Context, req *frameproto.InputReq) error
Input
func (*FrameSever) Join ¶
func (f *FrameSever) Join(c entity.Context, req *frameproto.JoinReq) (*frameproto.JoinRsp, error)
Join
func (*FrameSever) OnInit ¶
func (f *FrameSever) OnInit()
func (*FrameSever) OnNotify ¶
func (f *FrameSever) OnNotify(wn entity.NotifyInfo)
func (*FrameSever) OnTick ¶
func (f *FrameSever) OnTick()
func (*FrameSever) Progress ¶
func (f *FrameSever) Progress(c entity.Context, req *frameproto.ProgressReq) error
Progress 无实际意义,告诉其他人加载进度
func (*FrameSever) Ready ¶
func (f *FrameSever) Ready(c entity.Context, req *frameproto.ReadyReq) error
Ready
type Player ¶
type Player struct { *frameproto.FrameClient Id uint64 // contains filtered or unexported fields }
func (*Player) GetLastHeartbeatTime ¶
func (*Player) GetSendFrameCount ¶
func (*Player) LoadingProgress ¶
func (*Player) RefreshHeartbeatTime ¶
func (p *Player) RefreshHeartbeatTime()
func (*Player) SetLoadingProgress ¶
func (*Player) SetSendFrameCount ¶
Click to show internal directories.
Click to hide internal directories.