1. 消息的结构:
2. 消息发送
a: 消息定义: protocl/目录下/common一些通用的消息, /proto_cs 客户端服务器通讯消息, /proto_svr服务器之间通讯消息, 各自目录下应该是CMD定义和消息定义分属相应文件
b:消息封装与发送: 参看源码就好, 有类似CGameSvrPacketSendUtil这样的类提供发送接口
3. 消息的接收:
a: 接收消息的注册 一般先在类似CBattleSvrApp->InitProcessor里注册各个需要处理消息的模块,比如CLoginProcessor,处理登陆消息的,将此处理模块注册进去, 带上CMD参数
b: 消息接收流程: 距离enet, 进入CPacketDisp::ProcessENetPacket,根据type进入m_connEventHandlerImp.OnConnectionMessage
根据cmd找到对应的processor,就上a步骤注册的,进入pProcessor->ProcessClientPacket执行消息处理
时间: 2024-11-05 22:46:56