package info import "blazing/common/core/info/pet" // 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代码中未给出详细定义 // 请根据实际需求补充 } // LoginUserInfo 登录用户信息结构体 type LoginUserInfo struct { // 米米号 通过sid拿到 UserId uint32 // 注册时间(按秒的时间戳) RegisterTime uint32 // 16字节昵称 Nick [16]byte `array_serialize:"fixed_length,16"` // 暂时不明建议先给固定值0 Vip uint16 `ushort:"true"` // 暂时不明建议先给固定值15 Viped uint16 `ushort:"true"` // 暂时不明建议先给固定值0 DsFlag uint32 // 机器人人物颜色 00 rgb Color uint32 // 暂时不明建议先给固定值0 Texture uint32 // 暂时不明建议先给固定值3000 Energy uint32 `default:"3000"` // 赛尔豆 Coins uint32 // 暂时不明建议先给固定值0 FightBadge uint32 // 上线的地图id MapID uint32 // 上线的坐标 2个uint Pos Point `array_serialize:"fixed_length,8"` // 已经消耗掉的时间(秒为单位) TimeToday uint32 // 总电池限制(秒为单位) TimeLimit uint32 // 暂时不明感觉是某种活动建议先给固定值0(只能0或1) IsClothHalfDay byte // 暂时不明感觉是某种活动建议先给固定值0(只能0或1) IsRoomHalfDay byte // 暂时不明感觉是某种活动建议先给固定值0(只能0或1) IFortressHalfDay byte // 暂时不明感觉是某种活动建议先给固定值0(只能0或1) IsHQHalfDay byte // 暂时不明建议先给固定值0 LoginCount uint32 // 邀请活动建议先给固定值0 Inviter uint32 // 邀请活动建议先给固定值0 NewInviteeCount uint32 // 超no等级建议固定8 VipLevel uint32 `default:"8"` // 超no的vip值建议固定80000 VipValue uint32 `default:"80000"` // 超no的外形等级建议固定1(暂定) VipStage uint32 `default:"1"` // nono是否自动充电 建议固定1 AutoCharge uint32 `default:"1"` // 超no的结束时间建议尽可能大 VipEndTime uint32 `default:"4294967295"` // 邀请活动建议先给固定值0 FreshManBonus uint32 // 超no芯片列表*(80字节) NonoChipList [80]byte `array_serialize:"fixed_length,80"` // 50字节,默认值为3 DailyResArr [50]byte `array_serialize:"fixed_length,50"` // 教官id TeacherID uint32 // 学员id StudentID uint32 // 毕业人数 GraduationCount uint32 // 默认值为0 MaxPuniLv uint32 `default:"0"` // 精灵的最高等级 PetMaxLevel uint32 // 所有的精灵的数量 AllPetNumber uint32 // 精灵王之战胜场 MonKingWin uint32 // 勇者之塔当前到达的层数 CurrentStage uint32 // 试炼之塔最大胜利的层数 MaxStage uint32 // 试炼之塔当前到达的层数 CurrentFreshStage uint32 // 试炼之塔最大胜利的层数 MaxFreshStage uint32 // 星际擂台连胜 MaxArenaWins uint32 // 未知默认0 TwoTimes uint32 `default:"0"` // 未知默认0 ThreeTimes uint32 `default:"0"` // 是否自动战斗(未知默认值0) AutoFight uint32 `default:"0"` // 自动战斗剩余的场次(未知默认值0) AutoFightTime uint32 `default:"0"` // 能量吸收仪剩余次数(未知待定默认值0) EnergyTime uint32 `default:"0"` // 学习力吸收仪剩余次数(未知待定默认值0) LearnTimes uint32 `default:"0"` // 未知默认0 MonBattleMedal uint32 `default:"0"` // 未知默认0 RecordCount uint32 `default:"0"` // 未知默认0 ObtainTm uint32 `default:"0"` // 当前在孵化的元神珠id SoulBeadItemID uint32 // 未知默认0 ExpireTm uint32 `default:"0"` // 未知默认0 FuseTimes uint32 `default:"0"` // 玩家有没有nono HasNono uint32 `default:"1"` // 玩家有没有超能nono SuperNono uint32 `default:"1"` // 默认值-1 NonoState uint32 `default:"4294967295"` // nono的颜色 NonoColor uint32 // 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 uint32 `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 []pet.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: uint32(^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: uint32(^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 }