Files
bl/common/core/info/LoginUserInfo.go

218 lines
6.1 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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
}