fix(rpc): 修复日志输出格式并修正logic服务器注册逻辑

修复了rpc模块中日志输出时参数拼接错误的问题,同时修正了RegisterLogic函数中端口映射的逻辑错误。

feat(socket): 替换错误处理方式为panic

在ServerEvent.go中将网络启动失败的返回错误改为panic处理,提高错误可见性。

feat(fight): 增加战斗加载进度控制

在LoadPercent函数中增加对FightC非
This commit is contained in:
2025-11-01 00:40:19 +08:00
parent 06c30c6113
commit eac1d41043
16 changed files with 92 additions and 76 deletions

View File

@@ -12,9 +12,12 @@ import (
"fmt"
"reflect"
"github.com/gobwas/ws"
"github.com/gobwas/ws/wsutil"
"github.com/gogf/gf/v2/os/glog"
"github.com/lunixbochs/struc"
"github.com/panjf2000/gnet/v2"
"github.com/panjf2000/gnet/v2/pkg/logging"
)
// TomeeHeader 结构体字段定义
@@ -177,7 +180,7 @@ func (h *ClientData) Recv(data TomeeHeader) {
return
}
t := h.Conn.Context().(*ClientData).Player
t := h.Conn.Context().(*ClientData)
if ok && aa != 0 { //这里实现回复错误包
@@ -245,3 +248,30 @@ func (h *ClientData) OnEvent(v []byte) {
h.Recv(header)
}
func (p *ClientData) SendPack(b []byte) error {
// if _, ok := p.MainConn.Context().(*ClientData); !ok {
// return fmt.Errorf("链接错误,取消发包")
// }
p.Conn.Context().(*ClientData).Mu.Lock()
defer p.Conn.Context().(*ClientData).Mu.Unlock()
if p.Conn.Context().(*ClientData).Wsmsg.Upgraded {
// This is the echo server
err := wsutil.WriteServerMessage(p.Conn, ws.OpBinary, b)
if err != nil {
logging.Infof("conn[%v] [err=%v]", p.Conn.RemoteAddr().String(), err.Error())
return err
}
} else {
_, err := p.Conn.Write(b)
if err != nil {
glog.Debug(context.Background(), err)
}
}
return nil
}