218 lines
6.1 KiB
Go
218 lines
6.1 KiB
Go
|
|
package info
|
|||
|
|
|
|||
|
|
// Point 表示坐标结构
|
|||
|
|
type Point struct {
|
|||
|
|
X uint32
|
|||
|
|
Y uint32
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// TeamInfo 战队信息
|
|||
|
|
type TeamInfo struct {
|
|||
|
|
// 此处应包含TeamInfo的具体字段,原Java代码中未给出详细定义
|
|||
|
|
// 请根据实际需求补充
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// TeamPKInfo 战队PK信息
|
|||
|
|
type TeamPKInfo struct {
|
|||
|
|
// 此处应包含TeamPKInfo的具体字段,原Java代码中未给出详细定义
|
|||
|
|
// 请根据实际需求补充
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// PeopleItemInfo 人物物品信息
|
|||
|
|
type PeopleItemInfo struct {
|
|||
|
|
// 此处应包含PeopleItemInfo的具体字段,原Java代码中未给出详细定义
|
|||
|
|
// 请根据实际需求补充
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// PetInfo 精灵信息
|
|||
|
|
type PetInfo struct {
|
|||
|
|
// 此处应包含PetInfo的具体字段,原Java代码中未给出详细定义
|
|||
|
|
// 请根据实际需求补充
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// LoginUserInfo 登录用户信息结构体
|
|||
|
|
type LoginUserInfo struct {
|
|||
|
|
// 米米号 通过sid拿到
|
|||
|
|
UserId uint64
|
|||
|
|
// 注册时间(按秒的时间戳)
|
|||
|
|
RegisterTime uint64
|
|||
|
|
// 16字节昵称
|
|||
|
|
Nick [16]byte `array_serialize:"fixed_length,16"`
|
|||
|
|
// 暂时不明建议先给固定值0
|
|||
|
|
Vip uint16 `ushort:"true"`
|
|||
|
|
// 暂时不明建议先给固定值15
|
|||
|
|
Viped uint16 `ushort:"true"`
|
|||
|
|
// 暂时不明建议先给固定值0
|
|||
|
|
DsFlag uint64
|
|||
|
|
// 机器人人物颜色 00 rgb
|
|||
|
|
Color uint64
|
|||
|
|
// 暂时不明建议先给固定值0
|
|||
|
|
Texture uint64
|
|||
|
|
// 暂时不明建议先给固定值3000
|
|||
|
|
Energy uint64 `default:"3000"`
|
|||
|
|
// 赛尔豆
|
|||
|
|
Coins uint64
|
|||
|
|
// 暂时不明建议先给固定值0
|
|||
|
|
FightBadge uint64
|
|||
|
|
// 上线的地图id
|
|||
|
|
MapID uint64
|
|||
|
|
// 上线的坐标 2个uint
|
|||
|
|
Pos Point `array_serialize:"fixed_length,8"`
|
|||
|
|
// 已经消耗掉的时间(秒为单位)
|
|||
|
|
TimeToday uint64
|
|||
|
|
// 总电池限制(秒为单位)
|
|||
|
|
TimeLimit uint64
|
|||
|
|
// 暂时不明感觉是某种活动建议先给固定值0(只能0或1)
|
|||
|
|
IsClothHalfDay byte
|
|||
|
|
// 暂时不明感觉是某种活动建议先给固定值0(只能0或1)
|
|||
|
|
IsRoomHalfDay byte
|
|||
|
|
// 暂时不明感觉是某种活动建议先给固定值0(只能0或1)
|
|||
|
|
IFortressHalfDay byte
|
|||
|
|
// 暂时不明感觉是某种活动建议先给固定值0(只能0或1)
|
|||
|
|
IsHQHalfDay byte
|
|||
|
|
// 暂时不明建议先给固定值0
|
|||
|
|
LoginCount uint64
|
|||
|
|
// 邀请活动建议先给固定值0
|
|||
|
|
Inviter uint64
|
|||
|
|
// 邀请活动建议先给固定值0
|
|||
|
|
NewInviteeCount uint64
|
|||
|
|
// 超no等级建议固定8
|
|||
|
|
VipLevel uint64 `default:"8"`
|
|||
|
|
// 超no的vip值建议固定80000
|
|||
|
|
VipValue uint64 `default:"80000"`
|
|||
|
|
// 超no的外形等级建议固定1(暂定)
|
|||
|
|
VipStage uint64 `default:"1"`
|
|||
|
|
// nono是否自动充电 建议固定1
|
|||
|
|
AutoCharge uint64 `default:"1"`
|
|||
|
|
// 超no的结束时间建议尽可能大
|
|||
|
|
VipEndTime uint64 `default:"4294967295"`
|
|||
|
|
// 邀请活动建议先给固定值0
|
|||
|
|
FreshManBonus uint64
|
|||
|
|
// 超no芯片列表*(80字节)
|
|||
|
|
NonoChipList [80]byte `array_serialize:"fixed_length,80"`
|
|||
|
|
// 50字节,默认值为3
|
|||
|
|
DailyResArr [50]byte `array_serialize:"fixed_length,50"`
|
|||
|
|
// 教官id
|
|||
|
|
TeacherID uint64
|
|||
|
|
// 学员id
|
|||
|
|
StudentID uint64
|
|||
|
|
// 毕业人数
|
|||
|
|
GraduationCount uint64
|
|||
|
|
// 默认值为0
|
|||
|
|
MaxPuniLv uint64 `default:"0"`
|
|||
|
|
// 精灵的最高等级
|
|||
|
|
PetMaxLevel uint64
|
|||
|
|
// 所有的精灵的数量
|
|||
|
|
AllPetNumber uint64
|
|||
|
|
// 精灵王之战胜场
|
|||
|
|
MonKingWin uint64
|
|||
|
|
// 勇者之塔当前到达的层数
|
|||
|
|
CurrentStage uint64
|
|||
|
|
// 试炼之塔最大胜利的层数
|
|||
|
|
MaxStage uint64
|
|||
|
|
// 试炼之塔当前到达的层数
|
|||
|
|
CurrentFreshStage uint64
|
|||
|
|
// 试炼之塔最大胜利的层数
|
|||
|
|
MaxFreshStage uint64
|
|||
|
|
// 星际擂台连胜
|
|||
|
|
MaxArenaWins uint64
|
|||
|
|
// 未知默认0
|
|||
|
|
TwoTimes uint64 `default:"0"`
|
|||
|
|
// 未知默认0
|
|||
|
|
ThreeTimes uint64 `default:"0"`
|
|||
|
|
// 是否自动战斗(未知默认值0)
|
|||
|
|
AutoFight uint64 `default:"0"`
|
|||
|
|
// 自动战斗剩余的场次(未知默认值0)
|
|||
|
|
AutoFightTime uint64 `default:"0"`
|
|||
|
|
// 能量吸收仪剩余次数(未知待定默认值0)
|
|||
|
|
EnergyTime uint64 `default:"0"`
|
|||
|
|
// 学习力吸收仪剩余次数(未知待定默认值0)
|
|||
|
|
LearnTimes uint64 `default:"0"`
|
|||
|
|
// 未知默认0
|
|||
|
|
MonBattleMedal uint64 `default:"0"`
|
|||
|
|
// 未知默认0
|
|||
|
|
RecordCount uint64 `default:"0"`
|
|||
|
|
// 未知默认0
|
|||
|
|
ObtainTm uint64 `default:"0"`
|
|||
|
|
// 当前在孵化的元神珠id
|
|||
|
|
SoulBeadItemID uint64
|
|||
|
|
// 未知默认0
|
|||
|
|
ExpireTm uint64 `default:"0"`
|
|||
|
|
// 未知默认0
|
|||
|
|
FuseTimes uint64 `default:"0"`
|
|||
|
|
// 玩家有没有nono
|
|||
|
|
HasNono uint64 `default:"1"`
|
|||
|
|
// 玩家有没有超能nono
|
|||
|
|
SuperNono uint64 `default:"1"`
|
|||
|
|
// 默认值-1
|
|||
|
|
NonoState uint64 `default:"4294967295"`
|
|||
|
|
// nono的颜色
|
|||
|
|
NonoColor uint64
|
|||
|
|
// nono的名字 必须要补齐到16位
|
|||
|
|
NonoNick [16]byte `array_serialize:"fixed_length,16"`
|
|||
|
|
// 猜测为战队信息24字节
|
|||
|
|
TeamInfo TeamInfo `array_serialize:"fixed_length,24"`
|
|||
|
|
// 8字节
|
|||
|
|
TeamPkInfo TeamPKInfo `array_serialize:"fixed_length,8"`
|
|||
|
|
// 1字节 无内容
|
|||
|
|
Reserved byte
|
|||
|
|
// 默认值为0
|
|||
|
|
Badge uint64 `default:"0"`
|
|||
|
|
// 未知(27字节,默认值为3)
|
|||
|
|
Reserved1 [27]byte `array_serialize:"fixed_length,27"`
|
|||
|
|
// 任务状态数组(500字节,3为已经完成,建议默认值为3)
|
|||
|
|
TaskList [500]byte `array_serialize:"fixed_length,500"`
|
|||
|
|
// 精灵背包内的信息由于特性精灵的存在精灵背包不定长 如果有特性占199字节 如果没特性 一个精灵占175字节
|
|||
|
|
PetList []PetInfo
|
|||
|
|
// 穿戴装备 8字节
|
|||
|
|
Clothes []PeopleItemInfo
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// NewLoginUserInfo 创建新的登录用户信息实例,设置默认值
|
|||
|
|
func NewLoginUserInfo() *LoginUserInfo {
|
|||
|
|
info := &LoginUserInfo{
|
|||
|
|
Vip: 0,
|
|||
|
|
Viped: 15,
|
|||
|
|
Energy: 3000,
|
|||
|
|
VipLevel: 8,
|
|||
|
|
VipValue: 80000,
|
|||
|
|
VipStage: 1,
|
|||
|
|
AutoCharge: 1,
|
|||
|
|
VipEndTime: uint64(^uint32(0)),
|
|||
|
|
TwoTimes: 0,
|
|||
|
|
ThreeTimes: 0,
|
|||
|
|
AutoFight: 0,
|
|||
|
|
AutoFightTime: 0,
|
|||
|
|
EnergyTime: 0,
|
|||
|
|
LearnTimes: 0,
|
|||
|
|
MonBattleMedal: 0,
|
|||
|
|
RecordCount: 0,
|
|||
|
|
ObtainTm: 0,
|
|||
|
|
ExpireTm: 0,
|
|||
|
|
FuseTimes: 0,
|
|||
|
|
HasNono: 1,
|
|||
|
|
SuperNono: 1,
|
|||
|
|
NonoState: uint64(^uint32(0)),
|
|||
|
|
Badge: 0,
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 初始化固定长度数组
|
|||
|
|
for i := range info.NonoChipList {
|
|||
|
|
info.NonoChipList[i] = 0
|
|||
|
|
}
|
|||
|
|
for i := range info.DailyResArr {
|
|||
|
|
info.DailyResArr[i] = 3
|
|||
|
|
}
|
|||
|
|
for i := range info.Reserved1 {
|
|||
|
|
info.Reserved1[i] = 3
|
|||
|
|
}
|
|||
|
|
for i := range info.TaskList {
|
|||
|
|
info.TaskList[i] = 3
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// 初始化nono昵称
|
|||
|
|
copy(info.NonoNick[:], "nono")
|
|||
|
|
|
|||
|
|
return info
|
|||
|
|
}
|