- 更新 LoginUserInfo 结构体,将 uint64 类型改为 uint32 - 调整 ServerInfo 结构体,将 IP 字段从 []byte 改为 string - 移除未使用的 ArraySerialize 结构体 - 更新 ByteArray 类,修改相关方法名 - 删除未使用的 serialize 相关代码 - 优化模块导入,移除冗余依赖
42 lines
956 B
Go
42 lines
956 B
Go
package info
|
||
|
||
// ServerInfo 服务器信息结构体
|
||
type ServerInfo struct {
|
||
// 连接ID, 即服务器序号
|
||
OnlineID uint32
|
||
// 当前服务器玩家在线数量, 供SWF显示
|
||
UserCnt uint32
|
||
// 服务器IP, 16字节UTF-8, 不足16补齐到16
|
||
IP string `serialize:"fixed:16"` // 定长模式:16字节
|
||
// 端口
|
||
Port uint16
|
||
// 好友在线的个数
|
||
Friends uint32
|
||
}
|
||
|
||
// NewServerInfo 创建新的服务器信息实例
|
||
func NewServerInfo() *ServerInfo {
|
||
return &ServerInfo{
|
||
OnlineID: 0,
|
||
UserCnt: 0,
|
||
IP: "",
|
||
Port: 0,
|
||
Friends: 0,
|
||
}
|
||
}
|
||
|
||
// // SetIP 设置IP地址并自动填充到16字节
|
||
// func (s *ServerInfo) SetIP(ip string) {
|
||
// copy(s.IP[:], ip)
|
||
// if len(ip) < 16 {
|
||
// for i := len(ip); i < 16; i++ {
|
||
// s.IP[i] = 0 // 用0填充剩余字节
|
||
// }
|
||
// }
|
||
// }
|
||
|
||
// // GetIP 获取IP地址(去除填充的0)
|
||
// func (s *ServerInfo) GetIP() string {
|
||
// return strings.TrimRight(string(s.IP[:]), "\x00")
|
||
// }
|