package msg import "leafstalk/covenant/model" // 服务器发送有用户登录 type Login struct { AccId int64 `json:"accId"` OpenId string `json:"openId"` RemoteAddr string `json:"remoteAddr"` NickName string `json:"nickName"` ImgUrl string `json:"imgUrl"` GateId int64 `json:"gateId"` LineId int64 `json:"lineId"` ClickId string `json:"clickId"` AdId string `json:"adId"` AdSrc string `json:"adSrc"` Flag int `json:"flag"` Plat string `json:"plat"` SubPlat string `json:"subPlat"` SessionKey string `json:"sessionKey"` } type ResponseLogin struct { AccId int64 `json:"userId"` DocId int64 `json:"docId"` ErrCode int `json:"errCode"` } type Logout struct { RpcRequestMsg PlayerIds []int64 `json:"userIds"` } type ResponseLogout struct { RpcResponseMsg PlayerIds []int64 `json:"userIds"` } // Entry 登录 type Entry struct { UserId int64 `json:"userId"` //客户端->gate:accid; gate->world:playerId PhoneType int64 `json:"phoneType"` ClientFlag string `json:"clientPlat"` Version string `json:"version"` Token string `json:"token"` LineId int64 `json:"serverId"` SubPlat string `json:"subPlat"` } type BuffData struct { BuffId int `json:"buffId"` //buFF id CoolDown int `json:"coolDown"` //倒计时 } // type EntryDataFort struct { // Level int64 `json:"level"` //等级 // Parts [6]*model.FortPart `json:"parts"` //部位 // TalentTree [2]int64 `json:"talents"` //天赋树 // Skin *model.FortSkin `json:"skin"` //皮肤 // SkillIds [3]int64 `json:"skill"` //技能 // } type GmPlayer struct { MsgId string `json:"msgId"` PlayerID int64 `json:"userId"` OperatorId int64 `json:"operatorId"` } type ResponseGmPlayer struct { ErrCode int `json:"errCode"` MsgId string `json:"msgId"` Data *EntryData } // 增加 金币、钻石、材料、装备 type GmAddMaterial struct { MsgId string `json:"msgId"` PlayerID int64 `json:"userId"` Materials map[int64]int64 `json:"materials"` Runes map[int64]int64 `json:"runes"` Legends map[int64]int64 `json:"legends"` Equipments []int64 `json:"equipments"` Treasures []int64 `json:"treasures"` OperatorId int64 `json:"operatorId"` ClientPlat string `json:"clientPlat"` } type ResponseGmAddMaterial struct { ErrCode int `json:"errCode"` MsgId string `json:"msgId"` } // 要塞时装(皮肤) // type FortSkin struct { // Wear int64 `json:"wear"` // Skins map[int64]int64 `json:"skins"` //皮肤id:星级 // } // type Hero struct { // ID int64 `json:"id"` // Level int64 `json:"level"` // 当等级=0时,表示英雄未解锁,可以拥有皮肤 // Wear int64 `json:"wear"` // Skins []int64 `json:"skins"` // } type ChapterProcess struct { Standard int64 `json:"standard"` //主章节当前进度 Advanced int64 `json:"advanced"` //精英 Cooperation int64 `json:"cooperation"` //合作关卡 Levels map[int64]*LevelProcess `json:"levels"` CDs []int64 `json:"cds"` //普通 困难 噩梦 OpenServerTl int64 `json:"openServerTl"` //开服时长 } type LevelProcess struct { Level int64 `json:"id"` //关卡 Wave int64 `json:"wave"` //首通波次 Geted int64 `json:"geted"` //首通获取到的波次 SubWave int64 `json:"subWave"` //次通波次 SubGeted int64 `json:"subGeted"` //次通获取到的波次 } type Legend struct { Level int64 `json:"level"` // 精通等级 SlotWear map[int64]int64 `json:"slotWear"` // {slotId:modelId} Legends map[int64]int64 `json:"legends"` // {modelId:num} } type PayParam struct { WxIosOpenLevel int64 `json:"wxIosOpenLevel"` PayMethod int `json:"payMethod"` } type EntryData struct { PlayerId int64 `json:"userId"` Level int `json:"userLevel"` AccId int64 `json:"accId"` Exp int64 `json:"userExp"` Heros map[int64]*model.Hero `json:"heros"` Fort *model.EntryDataFort `json:"fort"` Materials map[int64]int64 `json:"materials"` Runes map[string]*model.BagRune `json:"runes"` Treasures map[int64]*model.GrowableTreasure `json:"treasures"` Chapters *ChapterProcess `json:"chapters"` Crystals map[int64]int64 `json:"crystals"` Arenas model.ClientArena `json:"arenas"` Resonances []*model.GrowableResonance `json:"resonances"` Renown int64 `json:"renown"` LoginDays int64 `json:"loginDays"` Legends *Legend `json:"legends"` ServerTs int64 `json:"serverts"` HeadId int64 `json:"headId"` FrameId int64 `json:"frameId"` Nick string `json:"nick"` ChangedNickNum int64 `json:"changedNickNum"` CreditScore int64 `json:"creditScore"` CoopTickets map[int64]int64 `json:"coopTickets"` GameSyncEnterRoom *model.EnterRoomData `json:"gameSyncEnterRoom"` Pay PayParam `json:"pay"` LanuchShare UserShareData `json:"lanuchShare"` // TimeStamp int64 `json:"timeStamp"` // Stamina int `json:"stamina"` // LastLogoutTick int64 `json:"lastLogoutTick"` // FirstWeapon bool `json:"firstGame"` // Guide []int `json:"guide"` // Funs []int `json:"funs"` // Equipments []*model.DropEquipment `json:"equipments"` // Roles []*model.DropedRole `json:"roles"` // Treasures []*model.DropedTreasure `json:"treasures"` // Talents []*model.DropTalent `json:"talents"` // TalentPoint int `json:"talentPoint"` // PassRoom []*model.PlayerPassRoom `json:"passRoom"` // Buff *BuffData `json:"buff"` // LastChapter *model.ChapterSummary `json:"lastChapter"` // BodyParts []*model.BodyPart `json:"bodyParts"` // RoleCollocate []int `json:"roleCollocate"` // 角色羁绊 // PayMethod *model.PayMethodData `json:"payMethod"` // DoubleAdCount int `json:"adCount"` // Location int `json:"adState"` // Flag int `json:"flag"` // MaxCombatEffe int64 `json:"maxCombatEffe"` // PaySwitch int `json:"paySwitch"` // New bool `json:"isNew"` // 新注册玩家 // CreateTick int64 `json:"createTick"` // AutoCheckToken int `json:"autoCheckToken"` // 是否发送随机种子 0/1 // NickName string `json:"nickName"` // ImgUrl string `json:"imgUrl"` // HeadId int `json:"headId"` // 头像 -1 代表使用 AvatarURL 微信授权头像 // FrameId int `json:"frameId"` // 头像框 // InviterStatus int `json:"inviterStatus"` // 邀请设置 // List []*HeadFrameDataList `json:"framelist"` // VipId []int64 `json:"vipId"` // 截止到登录还生效的月卡 季卡 永久卡 // CreateTime int64 `json:"createtime"` // NowTime int64 `json:"nowtime"` // RoleTreasure []*model.RoleTreasureInfo `json:"roleTreasure"` // 专属宝物 } type ResponseEntry struct { ErrCode int `json:"errCode"` Msg string `json:"msg,omitempty"` Data *EntryData `json:"data"` } // ReLogin 重新连接 type ReLogin struct { UID int64 `json:"userId"` ClientFlag int `json:"clientFlag"` Version string `json:"version"` Token string `json:"token"` } type ResponseReLogin struct { ErrCode int `json:"errCode"` Msg string `json:"msg,omitempty"` Data *EntryData `json:"data"` }