diff --git a/bin/json/game_vip.json b/bin/json/game_vip.json new file mode 100644 index 000000000..8a1ca90df --- /dev/null +++ b/bin/json/game_vip.json @@ -0,0 +1,671 @@ +[ + { + "vip_lv": 1, + "up_exp": 100, + "vip_name": { + "key": "vipname1", + "text": "特邀会员" + }, + "vip_lv_png": "icon_vip_dj00", + "vip_lv_gift_png": "icon_vip_dj00", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 10 + } + ], + "vip_privilege": [ + 1 + ] + }, + { + "vip_lv": 2, + "up_exp": 500, + "vip_name": { + "key": "vipname2", + "text": "高级会员" + }, + "vip_lv_png": "icon_vip_dj01", + "vip_lv_gift_png": "icon_vip_dj01", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 15 + } + ], + "vip_privilege": [ + 1, + 2 + ] + }, + { + "vip_lv": 3, + "up_exp": 1000, + "vip_name": { + "key": "vipname3", + "text": "资深会员" + }, + "vip_lv_png": "icon_vip_dj02", + "vip_lv_gift_png": "icon_vip_dj02", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 20 + } + ], + "vip_privilege": [ + 1, + 2, + 3 + ] + }, + { + "vip_lv": 4, + "up_exp": 2000, + "vip_name": { + "key": "vipname4", + "text": "理事" + }, + "vip_lv_png": "icon_vip_dj03", + "vip_lv_gift_png": "icon_vip_dj03", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 25 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 5, + "up_exp": 4000, + "vip_name": { + "key": "vipname5", + "text": "高级理事" + }, + "vip_lv_png": "icon_vip_dj04", + "vip_lv_gift_png": "icon_vip_dj04", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 30 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 6, + "up_exp": 7000, + "vip_name": { + "key": "vipname6", + "text": "理事长" + }, + "vip_lv_png": "icon_vip_dj05", + "vip_lv_gift_png": "icon_vip_dj05", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 35 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 7, + "up_exp": 12000, + "vip_name": { + "key": "vipname7", + "text": "监事" + }, + "vip_lv_png": "icon_vip_dj06", + "vip_lv_gift_png": "icon_vip_dj06", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 40 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 8, + "up_exp": 22000, + "vip_name": { + "key": "vipname8", + "text": "高级监事" + }, + "vip_lv_png": "icon_vip_dj07", + "vip_lv_gift_png": "icon_vip_dj07", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 45 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 9, + "up_exp": 39000, + "vip_name": { + "key": "vipname9", + "text": "监事长" + }, + "vip_lv_png": "icon_vip_dj08", + "vip_lv_gift_png": "icon_vip_dj08", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 50 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 10, + "up_exp": 52000, + "vip_name": { + "key": "vipname10", + "text": "荣誉副会长" + }, + "vip_lv_png": "icon_vip_dj09", + "vip_lv_gift_png": "icon_vip_dj09", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 55 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 11, + "up_exp": 80000, + "vip_name": { + "key": "vipname11", + "text": "执行副会长" + }, + "vip_lv_png": "icon_vip_dj10", + "vip_lv_gift_png": "icon_vip_dj10", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 60 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 12, + "up_exp": 130000, + "vip_name": { + "key": "vipname12", + "text": "常务副会长" + }, + "vip_lv_png": "icon_vip_dj11", + "vip_lv_gift_png": "icon_vip_dj11", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 65 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 13, + "up_exp": 200000, + "vip_name": { + "key": "vipname13", + "text": "秘书长" + }, + "vip_lv_png": "icon_vip_dj12", + "vip_lv_gift_png": "icon_vip_dj12", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 70 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 14, + "up_exp": 250000, + "vip_name": { + "key": "vipname14", + "text": "执行会长" + }, + "vip_lv_png": "icon_vip_dj13", + "vip_lv_gift_png": "icon_vip_dj13", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 75 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + }, + { + "vip_lv": 15, + "up_exp": 400000, + "vip_name": { + "key": "vipname15", + "text": "商会主席" + }, + "vip_lv_png": "icon_vip_dj14", + "vip_lv_gift_png": "icon_vip_dj14", + "original_priceprice": { + "a": "attr", + "t": "diamond", + "n": 500 + }, + "price_discount": { + "a": "attr", + "t": "diamond", + "n": 188 + }, + "giftinfo": [ + { + "a": "item", + "t": "30001", + "n": 10 + }, + { + "a": "attr", + "t": "gold", + "n": 188888 + } + ], + "daygift": [ + { + "a": "attr", + "t": "diamond", + "n": 80 + } + ], + "vip_privilege": [ + 1, + 2, + 3, + 4 + ] + } +] \ No newline at end of file diff --git a/modules/comp_configure.go b/modules/comp_configure.go index 899e56fd7..05b4f8a3b 100644 --- a/modules/comp_configure.go +++ b/modules/comp_configure.go @@ -25,6 +25,7 @@ const ( game_sign = "game_sign.json" game_item = "game_item.json" + game_vip = "game_vip.json" ) ///配置管理基础组件 @@ -47,6 +48,7 @@ func (this *MCompConfigure) Init(service core.IService, module core.IModule, com err = this.LoadConfigure(game_signreset, cfg.NewGameSignReset) //err = this.LoadConfigure(game_sign, cfg.NewGameSign) err = this.LoadConfigure(game_item, cfg.NewGameItem) + err = this.LoadConfigure(game_vip, cfg.NewGameVip) this._dropMap = make(map[int32][]*cfg.GameDropData, 0) this._sign = make(map[int32]*cfg.GameSignData, 0) configure.RegisterConfigure(game_drop, cfg.NewGameDrop, this.LoadDropData) @@ -318,3 +320,15 @@ func (this *MCompConfigure) GetItemConfigureData(id string) (item *cfg.GameItemD } return } + +func (this *MCompConfigure) GetVipConfigureData(lv int32) (item *cfg.GameVipData) { + + if v, err := this.GetConfigure(game_vip); err == nil { + + if configure, ok := v.(*cfg.GameVip); ok { + item = configure.Get(lv) + } + } + + return +} diff --git a/modules/task/api_receive.go b/modules/task/api_receive.go index 865838785..ce3c6fdd9 100644 --- a/modules/task/api_receive.go +++ b/modules/task/api_receive.go @@ -104,7 +104,8 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.TaskReceiveReq) } // 监听玩家经验 - this.moduleTask.ModuleUser.EventUserChanged(session) + + //this.moduleTask.ModuleUser.EventUserChanged(session) return } diff --git a/modules/user/api.go b/modules/user/api.go index 91b33fcdd..f4eb0e88d 100644 --- a/modules/user/api.go +++ b/modules/user/api.go @@ -9,26 +9,27 @@ import ( ) const ( - UserSubTypeLogin = "login" - UserSubTypeLogout = "logout" - UserSubTypeCreate = "create" - UserSubTypeAddRes = "addres" //添加用户资源 金币、宝石等 - UserSubTypeGetSetting = "getsetting" //获取设置 - UserSubTypeUpdatesetting = "updatesetting" //更新设置 - UserSubTypeVeriCode = "vericode" //验证码 - UserSubTypeInitData = "initdata" //初始化用户 - UserGetTujianResp = "gettujian" //获取图鉴信息 - UserSubTypeLvChangedPush = "lvchanged" //等级变化推送 - UserSubTypeModifyName = "modifyname" //修改名称 - UserSubTypeModifyFigure = "modifyfigure" //修改形象 - UserSubTypeModifySign = "modifysign" //修改签名 - UserSubTypeModifyAvatar = "modifyavatar" //修改头像 - UserSubTYpeModifyBgp = "modifybgp" //修改背景 - UserSubTypeInfo = "info" //用户信息 - UserSubTypeBattlerecord = "battlerecord" //玩家战斗记录 - UserSubTypeShowteam = "showteam" //展示阵容 - UserSubTypeSettingteam = "settingteam" //设置阵容展示 - UserGetServerDataResp = "getserverdata" //获取服务器信息 + UserSubTypeLogin = "login" + UserSubTypeLogout = "logout" + UserSubTypeCreate = "create" + UserSubTypeAddRes = "addres" //添加用户资源 金币、宝石等 + UserSubTypeGetSetting = "getsetting" //获取设置 + UserSubTypeUpdatesetting = "updatesetting" //更新设置 + UserSubTypeVeriCode = "vericode" //验证码 + UserSubTypeInitData = "initdata" //初始化用户 + UserGetTujianResp = "gettujian" //获取图鉴信息 + UserSubTypeLvChangedPush = "lvchanged" //等级变化推送 + UserSubTypeModifyName = "modifyname" //修改名称 + UserSubTypeModifyFigure = "modifyfigure" //修改形象 + UserSubTypeModifySign = "modifysign" //修改签名 + UserSubTypeModifyAvatar = "modifyavatar" //修改头像 + UserSubTYpeModifyBgp = "modifybgp" //修改背景 + UserSubTypeInfo = "info" //用户信息 + UserSubTypeBattlerecord = "battlerecord" //玩家战斗记录 + UserSubTypeShowteam = "showteam" //展示阵容 + UserSubTypeSettingteam = "settingteam" //设置阵容展示 + UserGetServerDataResp = "getserverdata" //获取服务器信息 + UserSubTypeVipChangedPush = "vipchanged" //vip等级变化推送 ) type apiComp struct { diff --git a/modules/user/model_user.go b/modules/user/model_user.go index e8a19e91c..7de2c02ab 100644 --- a/modules/user/model_user.go +++ b/modules/user/model_user.go @@ -31,7 +31,7 @@ func (this *ModelUser) Init(service core.IService, module core.IModule, comp cor err = this.MCompModel.Init(service, module, comp, options) this.module = module.(*User) this.EventApp = event_v2.NewApp() - this.EventApp.Listen(comm.EventUserChanged, this.ChangeExp) + this.EventApp.Listen(comm.EventUserChanged, this.ChangeVipExp) this.EventApp.Listen(comm.EventUserChanged, this.ChangeLevel) // 通过uid创建索引 this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{ @@ -170,10 +170,48 @@ func (this *ModelUser) updateOfflineTime(uid string) { } } -// change exp -func (this *ModelUser) ChangeExp(event interface{}, next func(event interface{})) { +// change vipexp +func (this *ModelUser) ChangeVipExp(event interface{}, next func(event interface{})) { ul := event.(*UserListen) - // TODO nothing + var ( + curExp int32 + bChange bool + ) + vipExp := ul.vipexp + vipLv := ul.viplv + + conf := this.module.configure.GetVipConfigureData(vipLv) + curExp = conf.UpExp + + for vipExp >= curExp { + vipLv++ + vipExp -= curExp + tmpConf := this.module.configure.GetVipConfigureData(vipLv) + if tmpConf == nil { + vipLv-- + vipExp += curExp + break + } + curExp = tmpConf.UpExp + bChange = true + } + if bChange { + update := map[string]interface{}{ + "viplv": vipLv, + "vip": vipExp, + } + if err := this.module.modelUser.Change(ul.session.GetUserId(), update); err != nil { + this.module.Error("玩家Vip等级经验更新", log.Fields{"uid": ul.session.GetUserId(), "vipLv": vipLv, "vipExp": vipExp}) + return + } + } + // 推送玩家vip 经验变化 + ul.session.SendMsg(string(this.module.GetType()), UserSubTypeVipChangedPush, + &pb.UserVipChangedPush{ + Uid: ul.session.GetUserId(), + VipExp: int64(vipExp), + VipLv: vipLv, + }) next(ul) } @@ -255,4 +293,6 @@ type UserListen struct { exp int64 lv int32 name string + vipexp int32 + viplv int32 } diff --git a/modules/user/module.go b/modules/user/module.go index beecb1436..25b94478b 100644 --- a/modules/user/module.go +++ b/modules/user/module.go @@ -404,8 +404,9 @@ func (this *User) AddAttributeValues(session comm.IUserSession, attrs map[string if bPush { //推送玩家账号信息变化消息 session.SendMsg(string(this.GetType()), "reschanged", _change) } - - this.ModuleUser.EventUserChanged(session) + if key == comm.ResExp || key == comm.VipExp { + this.ModuleUser.EventUserChanged(session) + } } return @@ -420,6 +421,8 @@ func (this *User) EventUserChanged(session comm.IUserSession) { ul.exp = user.Exp ul.lv = user.Lv ul.name = user.Name + ul.vipexp = user.Vip + ul.viplv = user.Viplv } this.modelUser.EventApp.Dispatch(comm.EventUserChanged, ul) } diff --git a/pb/user_db.pb.go b/pb/user_db.pb.go index 5311e117c..0fb58589d 100644 --- a/pb/user_db.pb.go +++ b/pb/user_db.pb.go @@ -128,6 +128,7 @@ type DBUser struct { Offlinetime int64 `protobuf:"varint,22,opt,name=offlinetime,proto3" json:"offlinetime" bson:"offlinetime"` //离线时间 Figure int32 `protobuf:"varint,23,opt,name=figure,proto3" json:"figure" bson:"figure"` //主角形象 Bgp string `protobuf:"bytes,24,opt,name=bgp,proto3" json:"bgp" bson:"bgp"` //背景 + Viplv int32 `protobuf:"varint,25,opt,name=viplv,proto3" json:"viplv" bson:"viplv"` // vip等级 } func (x *DBUser) Reset() { @@ -330,6 +331,13 @@ func (x *DBUser) GetBgp() string { return "" } +func (x *DBUser) GetViplv() int32 { + if x != nil { + return x.Viplv + } + return 0 +} + type DBUserSetting struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -582,7 +590,7 @@ var file_user_user_db_proto_rawDesc = []byte{ 0x61, 0x67, 0x12, 0x2a, 0x0a, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x22, 0xb2, + 0x0a, 0x02, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x22, 0xc8, 0x04, 0x0a, 0x06, 0x44, 0x42, 0x55, 0x73, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x75, @@ -618,39 +626,40 @@ var file_user_user_db_proto_rawDesc = []byte{ 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x62, 0x67, 0x70, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x62, 0x67, 0x70, 0x22, 0xc7, 0x02, 0x0a, 0x0d, 0x44, 0x42, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, - 0x74, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x75, 0x61, 0x7a, 0x68, - 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x75, 0x61, 0x7a, 0x68, 0x69, 0x12, - 0x1c, 0x0a, 0x09, 0x6b, 0x61, 0x6e, 0x67, 0x6a, 0x75, 0x63, 0x68, 0x69, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x09, 0x6b, 0x61, 0x6e, 0x67, 0x6a, 0x75, 0x63, 0x68, 0x69, 0x12, 0x1a, 0x0a, - 0x08, 0x67, 0x61, 0x6f, 0x67, 0x75, 0x61, 0x6e, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x08, 0x67, 0x61, 0x6f, 0x67, 0x75, 0x61, 0x6e, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x75, 0x6c, - 0x69, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x77, 0x75, 0x6c, 0x69, 0x12, 0x14, 0x0a, - 0x05, 0x6d, 0x75, 0x73, 0x69, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6d, 0x75, - 0x73, 0x69, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x67, - 0x75, 0x61, 0x6a, 0x69, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x67, 0x75, 0x61, 0x6a, - 0x69, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x75, 0x62, 0x65, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x05, 0x66, 0x75, 0x62, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x6e, 0x73, 0x75, - 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x74, 0x61, 0x6e, 0x73, 0x75, 0x6f, 0x12, - 0x18, 0x0a, 0x07, 0x68, 0x75, 0x6f, 0x64, 0x6f, 0x6e, 0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x07, 0x68, 0x75, 0x6f, 0x64, 0x6f, 0x6e, 0x67, 0x12, 0x1c, 0x0a, 0x09, 0x78, 0x75, 0x61, - 0x6e, 0x73, 0x68, 0x61, 0x6e, 0x67, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x78, 0x75, - 0x61, 0x6e, 0x73, 0x68, 0x61, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x61, 0x69, 0x6a, 0x69, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x73, 0x61, 0x69, 0x6a, 0x69, 0x22, 0xa2, 0x01, - 0x0a, 0x06, 0x44, 0x42, 0x53, 0x69, 0x67, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x69, - 0x67, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x69, - 0x67, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, - 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, - 0x72, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x72, 0x54, 0x69, - 0x6d, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x33, + 0x62, 0x67, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x69, 0x70, 0x6c, 0x76, 0x18, 0x19, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x76, 0x69, 0x70, 0x6c, 0x76, 0x22, 0xc7, 0x02, 0x0a, 0x0d, 0x44, 0x42, + 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x75, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x68, 0x75, 0x61, 0x7a, 0x68, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, + 0x75, 0x61, 0x7a, 0x68, 0x69, 0x12, 0x1c, 0x0a, 0x09, 0x6b, 0x61, 0x6e, 0x67, 0x6a, 0x75, 0x63, + 0x68, 0x69, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6b, 0x61, 0x6e, 0x67, 0x6a, 0x75, + 0x63, 0x68, 0x69, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x61, 0x6f, 0x67, 0x75, 0x61, 0x6e, 0x67, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x67, 0x61, 0x6f, 0x67, 0x75, 0x61, 0x6e, 0x67, 0x12, + 0x12, 0x0a, 0x04, 0x77, 0x75, 0x6c, 0x69, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x77, + 0x75, 0x6c, 0x69, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x75, 0x73, 0x69, 0x63, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x05, 0x6d, 0x75, 0x73, 0x69, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x66, 0x66, + 0x65, 0x63, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, 0x66, 0x66, 0x65, 0x63, + 0x74, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x75, 0x61, 0x6a, 0x69, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x05, 0x67, 0x75, 0x61, 0x6a, 0x69, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x75, 0x62, 0x65, 0x6e, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x75, 0x62, 0x65, 0x6e, 0x12, 0x16, 0x0a, + 0x06, 0x74, 0x61, 0x6e, 0x73, 0x75, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x74, + 0x61, 0x6e, 0x73, 0x75, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x75, 0x6f, 0x64, 0x6f, 0x6e, 0x67, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x75, 0x6f, 0x64, 0x6f, 0x6e, 0x67, 0x12, + 0x1c, 0x0a, 0x09, 0x78, 0x75, 0x61, 0x6e, 0x73, 0x68, 0x61, 0x6e, 0x67, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x09, 0x78, 0x75, 0x61, 0x6e, 0x73, 0x68, 0x61, 0x6e, 0x67, 0x12, 0x14, 0x0a, + 0x05, 0x73, 0x61, 0x69, 0x6a, 0x69, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x73, 0x61, + 0x69, 0x6a, 0x69, 0x22, 0xa2, 0x01, 0x0a, 0x06, 0x44, 0x42, 0x53, 0x69, 0x67, 0x6e, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, + 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, + 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x69, 0x67, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x08, 0x73, 0x69, 0x67, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x73, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x73, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, + 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x63, + 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x05, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/pb/user_msg.pb.go b/pb/user_msg.pb.go index 152dfd33d..fa480d152 100644 --- a/pb/user_msg.pb.go +++ b/pb/user_msg.pb.go @@ -1663,6 +1663,70 @@ func (x *UserLvChangedPush) GetLv() int32 { return 0 } +// vip 等级变化 +type UserVipChangedPush struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid"` + VipExp int64 `protobuf:"varint,2,opt,name=vipExp,proto3" json:"vipExp"` + VipLv int32 `protobuf:"varint,3,opt,name=vipLv,proto3" json:"vipLv"` +} + +func (x *UserVipChangedPush) Reset() { + *x = UserVipChangedPush{} + if protoimpl.UnsafeEnabled { + mi := &file_user_user_msg_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UserVipChangedPush) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UserVipChangedPush) ProtoMessage() {} + +func (x *UserVipChangedPush) ProtoReflect() protoreflect.Message { + mi := &file_user_user_msg_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UserVipChangedPush.ProtoReflect.Descriptor instead. +func (*UserVipChangedPush) Descriptor() ([]byte, []int) { + return file_user_user_msg_proto_rawDescGZIP(), []int{32} +} + +func (x *UserVipChangedPush) GetUid() string { + if x != nil { + return x.Uid + } + return "" +} + +func (x *UserVipChangedPush) GetVipExp() int64 { + if x != nil { + return x.VipExp + } + return 0 +} + +func (x *UserVipChangedPush) GetVipLv() int32 { + if x != nil { + return x.VipLv + } + return 0 +} + // 用户签名 type UserModifysignReq struct { state protoimpl.MessageState @@ -1675,7 +1739,7 @@ type UserModifysignReq struct { func (x *UserModifysignReq) Reset() { *x = UserModifysignReq{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[32] + mi := &file_user_user_msg_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1688,7 +1752,7 @@ func (x *UserModifysignReq) String() string { func (*UserModifysignReq) ProtoMessage() {} func (x *UserModifysignReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[32] + mi := &file_user_user_msg_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1701,7 +1765,7 @@ func (x *UserModifysignReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UserModifysignReq.ProtoReflect.Descriptor instead. func (*UserModifysignReq) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{32} + return file_user_user_msg_proto_rawDescGZIP(), []int{33} } func (x *UserModifysignReq) GetSign() string { @@ -1722,7 +1786,7 @@ type UserModifysignResp struct { func (x *UserModifysignResp) Reset() { *x = UserModifysignResp{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[33] + mi := &file_user_user_msg_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1735,7 +1799,7 @@ func (x *UserModifysignResp) String() string { func (*UserModifysignResp) ProtoMessage() {} func (x *UserModifysignResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[33] + mi := &file_user_user_msg_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1748,7 +1812,7 @@ func (x *UserModifysignResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UserModifysignResp.ProtoReflect.Descriptor instead. func (*UserModifysignResp) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{33} + return file_user_user_msg_proto_rawDescGZIP(), []int{34} } func (x *UserModifysignResp) GetUid() string { @@ -1770,7 +1834,7 @@ type UserBattlerecordReq struct { func (x *UserBattlerecordReq) Reset() { *x = UserBattlerecordReq{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[34] + mi := &file_user_user_msg_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1783,7 +1847,7 @@ func (x *UserBattlerecordReq) String() string { func (*UserBattlerecordReq) ProtoMessage() {} func (x *UserBattlerecordReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[34] + mi := &file_user_user_msg_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1796,7 +1860,7 @@ func (x *UserBattlerecordReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UserBattlerecordReq.ProtoReflect.Descriptor instead. func (*UserBattlerecordReq) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{34} + return file_user_user_msg_proto_rawDescGZIP(), []int{35} } func (x *UserBattlerecordReq) GetUid() string { @@ -1821,7 +1885,7 @@ type UserBattlerecordResp struct { func (x *UserBattlerecordResp) Reset() { *x = UserBattlerecordResp{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[35] + mi := &file_user_user_msg_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1834,7 +1898,7 @@ func (x *UserBattlerecordResp) String() string { func (*UserBattlerecordResp) ProtoMessage() {} func (x *UserBattlerecordResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[35] + mi := &file_user_user_msg_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1847,7 +1911,7 @@ func (x *UserBattlerecordResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UserBattlerecordResp.ProtoReflect.Descriptor instead. func (*UserBattlerecordResp) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{35} + return file_user_user_msg_proto_rawDescGZIP(), []int{36} } func (x *UserBattlerecordResp) GetData() *DBUser { @@ -1897,7 +1961,7 @@ type UserSettingteamReq struct { func (x *UserSettingteamReq) Reset() { *x = UserSettingteamReq{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[36] + mi := &file_user_user_msg_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1910,7 +1974,7 @@ func (x *UserSettingteamReq) String() string { func (*UserSettingteamReq) ProtoMessage() {} func (x *UserSettingteamReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[36] + mi := &file_user_user_msg_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1923,7 +1987,7 @@ func (x *UserSettingteamReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UserSettingteamReq.ProtoReflect.Descriptor instead. func (*UserSettingteamReq) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{36} + return file_user_user_msg_proto_rawDescGZIP(), []int{37} } func (x *UserSettingteamReq) GetHeroObjIds() []string { @@ -1944,7 +2008,7 @@ type UserSettingteamResp struct { func (x *UserSettingteamResp) Reset() { *x = UserSettingteamResp{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[37] + mi := &file_user_user_msg_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1957,7 +2021,7 @@ func (x *UserSettingteamResp) String() string { func (*UserSettingteamResp) ProtoMessage() {} func (x *UserSettingteamResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[37] + mi := &file_user_user_msg_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1970,7 +2034,7 @@ func (x *UserSettingteamResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UserSettingteamResp.ProtoReflect.Descriptor instead. func (*UserSettingteamResp) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{37} + return file_user_user_msg_proto_rawDescGZIP(), []int{38} } func (x *UserSettingteamResp) GetUid() string { @@ -1990,7 +2054,7 @@ type UserShowteamReq struct { func (x *UserShowteamReq) Reset() { *x = UserShowteamReq{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[38] + mi := &file_user_user_msg_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2003,7 +2067,7 @@ func (x *UserShowteamReq) String() string { func (*UserShowteamReq) ProtoMessage() {} func (x *UserShowteamReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[38] + mi := &file_user_user_msg_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2016,7 +2080,7 @@ func (x *UserShowteamReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UserShowteamReq.ProtoReflect.Descriptor instead. func (*UserShowteamReq) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{38} + return file_user_user_msg_proto_rawDescGZIP(), []int{39} } type UserShowteamResp struct { @@ -2030,7 +2094,7 @@ type UserShowteamResp struct { func (x *UserShowteamResp) Reset() { *x = UserShowteamResp{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[39] + mi := &file_user_user_msg_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2043,7 +2107,7 @@ func (x *UserShowteamResp) String() string { func (*UserShowteamResp) ProtoMessage() {} func (x *UserShowteamResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[39] + mi := &file_user_user_msg_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2056,7 +2120,7 @@ func (x *UserShowteamResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UserShowteamResp.ProtoReflect.Descriptor instead. func (*UserShowteamResp) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{39} + return file_user_user_msg_proto_rawDescGZIP(), []int{40} } func (x *UserShowteamResp) GetHeroObjIds() []string { @@ -2078,7 +2142,7 @@ type UserOnlineResp struct { func (x *UserOnlineResp) Reset() { *x = UserOnlineResp{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[40] + mi := &file_user_user_msg_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2091,7 +2155,7 @@ func (x *UserOnlineResp) String() string { func (*UserOnlineResp) ProtoMessage() {} func (x *UserOnlineResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[40] + mi := &file_user_user_msg_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2104,7 +2168,7 @@ func (x *UserOnlineResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UserOnlineResp.ProtoReflect.Descriptor instead. func (*UserOnlineResp) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{40} + return file_user_user_msg_proto_rawDescGZIP(), []int{41} } func (x *UserOnlineResp) GetUsers() []*CacheUser { @@ -2126,7 +2190,7 @@ type UserDataListResp struct { func (x *UserDataListResp) Reset() { *x = UserDataListResp{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[41] + mi := &file_user_user_msg_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2139,7 +2203,7 @@ func (x *UserDataListResp) String() string { func (*UserDataListResp) ProtoMessage() {} func (x *UserDataListResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[41] + mi := &file_user_user_msg_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2152,7 +2216,7 @@ func (x *UserDataListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UserDataListResp.ProtoReflect.Descriptor instead. func (*UserDataListResp) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{41} + return file_user_user_msg_proto_rawDescGZIP(), []int{42} } func (x *UserDataListResp) GetUsers() []*DBUser { @@ -2171,7 +2235,7 @@ type UserGetServerDataReq struct { func (x *UserGetServerDataReq) Reset() { *x = UserGetServerDataReq{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[42] + mi := &file_user_user_msg_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2184,7 +2248,7 @@ func (x *UserGetServerDataReq) String() string { func (*UserGetServerDataReq) ProtoMessage() {} func (x *UserGetServerDataReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[42] + mi := &file_user_user_msg_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2197,7 +2261,7 @@ func (x *UserGetServerDataReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UserGetServerDataReq.ProtoReflect.Descriptor instead. func (*UserGetServerDataReq) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{42} + return file_user_user_msg_proto_rawDescGZIP(), []int{43} } type UserGetServerDataResp struct { @@ -2211,7 +2275,7 @@ type UserGetServerDataResp struct { func (x *UserGetServerDataResp) Reset() { *x = UserGetServerDataResp{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[43] + mi := &file_user_user_msg_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2224,7 +2288,7 @@ func (x *UserGetServerDataResp) String() string { func (*UserGetServerDataResp) ProtoMessage() {} func (x *UserGetServerDataResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[43] + mi := &file_user_user_msg_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2237,7 +2301,7 @@ func (x *UserGetServerDataResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UserGetServerDataResp.ProtoReflect.Descriptor instead. func (*UserGetServerDataResp) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{43} + return file_user_user_msg_proto_rawDescGZIP(), []int{44} } func (x *UserGetServerDataResp) GetData() *DBServerData { @@ -2256,7 +2320,7 @@ type UserSignReq struct { func (x *UserSignReq) Reset() { *x = UserSignReq{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[44] + mi := &file_user_user_msg_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2269,7 +2333,7 @@ func (x *UserSignReq) String() string { func (*UserSignReq) ProtoMessage() {} func (x *UserSignReq) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[44] + mi := &file_user_user_msg_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2282,7 +2346,7 @@ func (x *UserSignReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UserSignReq.ProtoReflect.Descriptor instead. func (*UserSignReq) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{44} + return file_user_user_msg_proto_rawDescGZIP(), []int{45} } // 推送签到信息 @@ -2298,7 +2362,7 @@ type UserSignResp struct { func (x *UserSignResp) Reset() { *x = UserSignResp{} if protoimpl.UnsafeEnabled { - mi := &file_user_user_msg_proto_msgTypes[45] + mi := &file_user_user_msg_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2311,7 +2375,7 @@ func (x *UserSignResp) String() string { func (*UserSignResp) ProtoMessage() {} func (x *UserSignResp) ProtoReflect() protoreflect.Message { - mi := &file_user_user_msg_proto_msgTypes[45] + mi := &file_user_user_msg_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2324,7 +2388,7 @@ func (x *UserSignResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UserSignResp.ProtoReflect.Descriptor instead. func (*UserSignResp) Descriptor() ([]byte, []int) { - return file_user_user_msg_proto_rawDescGZIP(), []int{45} + return file_user_user_msg_proto_rawDescGZIP(), []int{46} } func (x *UserSignResp) GetData() *DBSign { @@ -2468,58 +2532,63 @@ var file_user_user_msg_proto_rawDesc = []byte{ 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x78, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x65, 0x78, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, - 0x6c, 0x76, 0x22, 0x27, 0x0a, 0x11, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, - 0x73, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x67, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x69, 0x67, 0x6e, 0x22, 0x26, 0x0a, 0x12, 0x55, - 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x73, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x75, 0x69, 0x64, 0x22, 0x27, 0x0a, 0x13, 0x55, 0x73, 0x65, 0x72, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x22, 0xf0, 0x01, 0x0a, - 0x14, 0x55, 0x73, 0x65, 0x72, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, - 0x2e, 0x44, 0x42, 0x55, 0x73, 0x65, 0x72, 0x45, 0x78, 0x70, 0x61, 0x6e, 0x64, 0x52, 0x02, 0x65, - 0x78, 0x12, 0x33, 0x0a, 0x0c, 0x70, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x52, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x44, 0x42, 0x50, 0x61, 0x67, 0x6f, - 0x64, 0x61, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0c, 0x70, 0x61, 0x67, 0x6f, 0x64, 0x61, - 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x34, 0x0a, 0x0d, 0x68, 0x75, 0x6e, 0x74, 0x69, 0x6e, - 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, - 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x0d, 0x68, - 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x31, 0x0a, 0x0c, - 0x76, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x05, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x56, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, - 0x6b, 0x52, 0x0c, 0x76, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, - 0x34, 0x0a, 0x12, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x74, 0x65, - 0x61, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, - 0x49, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x4f, - 0x62, 0x6a, 0x49, 0x64, 0x73, 0x22, 0x27, 0x0a, 0x13, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x74, - 0x74, 0x69, 0x6e, 0x67, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, - 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x22, 0x11, - 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x53, 0x68, 0x6f, 0x77, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, - 0x71, 0x22, 0x32, 0x0a, 0x10, 0x55, 0x73, 0x65, 0x72, 0x53, 0x68, 0x6f, 0x77, 0x74, 0x65, 0x61, - 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, - 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x4f, - 0x62, 0x6a, 0x49, 0x64, 0x73, 0x22, 0x32, 0x0a, 0x0e, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x6e, 0x6c, - 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x55, 0x73, - 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x31, 0x0a, 0x10, 0x55, 0x73, 0x65, - 0x72, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, - 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, - 0x42, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, 0x16, 0x0a, 0x14, - 0x55, 0x73, 0x65, 0x72, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, - 0x61, 0x52, 0x65, 0x71, 0x22, 0x3a, 0x0a, 0x15, 0x55, 0x73, 0x65, 0x72, 0x47, 0x65, 0x74, 0x53, - 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x12, 0x21, 0x0a, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, - 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x22, 0x0d, 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x71, 0x22, - 0x43, 0x0a, 0x0c, 0x55, 0x73, 0x65, 0x72, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x1b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, - 0x44, 0x42, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, - 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x33, + 0x6c, 0x76, 0x22, 0x54, 0x0a, 0x12, 0x55, 0x73, 0x65, 0x72, 0x56, 0x69, 0x70, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x64, 0x50, 0x75, 0x73, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x69, + 0x70, 0x45, 0x78, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x76, 0x69, 0x70, 0x45, + 0x78, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x69, 0x70, 0x4c, 0x76, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x76, 0x69, 0x70, 0x4c, 0x76, 0x22, 0x27, 0x0a, 0x11, 0x55, 0x73, 0x65, 0x72, + 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x73, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, + 0x04, 0x73, 0x69, 0x67, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x69, 0x67, + 0x6e, 0x22, 0x26, 0x0a, 0x12, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x73, + 0x69, 0x67, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x22, 0x27, 0x0a, 0x13, 0x55, 0x73, 0x65, + 0x72, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, + 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, + 0x69, 0x64, 0x22, 0xf0, 0x01, 0x0a, 0x14, 0x55, 0x73, 0x65, 0x72, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x55, 0x73, + 0x65, 0x72, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x02, 0x65, 0x78, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x55, 0x73, 0x65, 0x72, 0x45, 0x78, 0x70, + 0x61, 0x6e, 0x64, 0x52, 0x02, 0x65, 0x78, 0x12, 0x33, 0x0a, 0x0c, 0x70, 0x61, 0x67, 0x6f, 0x64, + 0x61, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, + 0x44, 0x42, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0c, + 0x70, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x34, 0x0a, 0x0d, + 0x68, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, + 0x61, 0x6e, 0x6b, 0x52, 0x0d, 0x68, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, + 0x72, 0x64, 0x12, 0x31, 0x0a, 0x0c, 0x76, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, + 0x72, 0x64, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x56, 0x69, 0x6b, + 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x0c, 0x76, 0x69, 0x6b, 0x69, 0x6e, 0x67, 0x52, + 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x34, 0x0a, 0x12, 0x55, 0x73, 0x65, 0x72, 0x53, 0x65, 0x74, + 0x74, 0x69, 0x6e, 0x67, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x68, + 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x64, 0x73, 0x22, 0x27, 0x0a, 0x13, 0x55, + 0x73, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x75, 0x69, 0x64, 0x22, 0x11, 0x0a, 0x0f, 0x55, 0x73, 0x65, 0x72, 0x53, 0x68, 0x6f, 0x77, + 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x22, 0x32, 0x0a, 0x10, 0x55, 0x73, 0x65, 0x72, 0x53, + 0x68, 0x6f, 0x77, 0x74, 0x65, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x68, + 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x0a, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x64, 0x73, 0x22, 0x32, 0x0a, 0x0e, 0x55, + 0x73, 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, + 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x43, + 0x61, 0x63, 0x68, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x22, + 0x31, 0x0a, 0x10, 0x55, 0x73, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x75, 0x73, 0x65, + 0x72, 0x73, 0x22, 0x16, 0x0a, 0x14, 0x55, 0x73, 0x65, 0x72, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x22, 0x3a, 0x0a, 0x15, 0x55, 0x73, + 0x65, 0x72, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x21, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x0d, 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72, 0x53, 0x69, + 0x67, 0x6e, 0x52, 0x65, 0x71, 0x22, 0x43, 0x0a, 0x0c, 0x55, 0x73, 0x65, 0x72, 0x53, 0x69, 0x67, + 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, + 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2534,7 +2603,7 @@ func file_user_user_msg_proto_rawDescGZIP() []byte { return file_user_user_msg_proto_rawDescData } -var file_user_user_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 46) +var file_user_user_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 47) var file_user_user_msg_proto_goTypes = []interface{}{ (*UserLoginReq)(nil), // 0: UserLoginReq (*UserLoginResp)(nil), // 1: UserLoginResp @@ -2568,49 +2637,50 @@ var file_user_user_msg_proto_goTypes = []interface{}{ (*UserGetTujianReq)(nil), // 29: UserGetTujianReq (*UserGetTujianResp)(nil), // 30: UserGetTujianResp (*UserLvChangedPush)(nil), // 31: UserLvChangedPush - (*UserModifysignReq)(nil), // 32: UserModifysignReq - (*UserModifysignResp)(nil), // 33: UserModifysignResp - (*UserBattlerecordReq)(nil), // 34: UserBattlerecordReq - (*UserBattlerecordResp)(nil), // 35: UserBattlerecordResp - (*UserSettingteamReq)(nil), // 36: UserSettingteamReq - (*UserSettingteamResp)(nil), // 37: UserSettingteamResp - (*UserShowteamReq)(nil), // 38: UserShowteamReq - (*UserShowteamResp)(nil), // 39: UserShowteamResp - (*UserOnlineResp)(nil), // 40: UserOnlineResp - (*UserDataListResp)(nil), // 41: UserDataListResp - (*UserGetServerDataReq)(nil), // 42: UserGetServerDataReq - (*UserGetServerDataResp)(nil), // 43: UserGetServerDataResp - (*UserSignReq)(nil), // 44: UserSignReq - (*UserSignResp)(nil), // 45: UserSignResp - (*DBUser)(nil), // 46: DBUser - (*DBUserExpand)(nil), // 47: DBUserExpand - (ErrorCode)(0), // 48: ErrorCode - (*CacheUser)(nil), // 49: CacheUser - (*DBUserSetting)(nil), // 50: DBUserSetting - (*DBPagodaRecord)(nil), // 51: DBPagodaRecord - (*DBHuntingRank)(nil), // 52: DBHuntingRank - (*DBVikingRank)(nil), // 53: DBVikingRank - (*DBServerData)(nil), // 54: DBServerData - (*DBSign)(nil), // 55: DBSign + (*UserVipChangedPush)(nil), // 32: UserVipChangedPush + (*UserModifysignReq)(nil), // 33: UserModifysignReq + (*UserModifysignResp)(nil), // 34: UserModifysignResp + (*UserBattlerecordReq)(nil), // 35: UserBattlerecordReq + (*UserBattlerecordResp)(nil), // 36: UserBattlerecordResp + (*UserSettingteamReq)(nil), // 37: UserSettingteamReq + (*UserSettingteamResp)(nil), // 38: UserSettingteamResp + (*UserShowteamReq)(nil), // 39: UserShowteamReq + (*UserShowteamResp)(nil), // 40: UserShowteamResp + (*UserOnlineResp)(nil), // 41: UserOnlineResp + (*UserDataListResp)(nil), // 42: UserDataListResp + (*UserGetServerDataReq)(nil), // 43: UserGetServerDataReq + (*UserGetServerDataResp)(nil), // 44: UserGetServerDataResp + (*UserSignReq)(nil), // 45: UserSignReq + (*UserSignResp)(nil), // 46: UserSignResp + (*DBUser)(nil), // 47: DBUser + (*DBUserExpand)(nil), // 48: DBUserExpand + (ErrorCode)(0), // 49: ErrorCode + (*CacheUser)(nil), // 50: CacheUser + (*DBUserSetting)(nil), // 51: DBUserSetting + (*DBPagodaRecord)(nil), // 52: DBPagodaRecord + (*DBHuntingRank)(nil), // 53: DBHuntingRank + (*DBVikingRank)(nil), // 54: DBVikingRank + (*DBServerData)(nil), // 55: DBServerData + (*DBSign)(nil), // 56: DBSign } var file_user_user_msg_proto_depIdxs = []int32{ - 46, // 0: UserLoginResp.data:type_name -> DBUser - 47, // 1: UserLoginResp.ex:type_name -> DBUserExpand - 46, // 2: UserInfoResp.data:type_name -> DBUser - 47, // 3: UserInfoResp.ex:type_name -> DBUserExpand - 48, // 4: UserRegisterResp.Code:type_name -> ErrorCode - 49, // 5: UserLoadResp.data:type_name -> CacheUser - 50, // 6: UserGetSettingResp.setting:type_name -> DBUserSetting - 50, // 7: UserUpdateSettingReq.setting:type_name -> DBUserSetting - 46, // 8: UserBattlerecordResp.data:type_name -> DBUser - 47, // 9: UserBattlerecordResp.ex:type_name -> DBUserExpand - 51, // 10: UserBattlerecordResp.pagodaRecord:type_name -> DBPagodaRecord - 52, // 11: UserBattlerecordResp.huntingRecord:type_name -> DBHuntingRank - 53, // 12: UserBattlerecordResp.vikingRecord:type_name -> DBVikingRank - 49, // 13: UserOnlineResp.users:type_name -> CacheUser - 46, // 14: UserDataListResp.users:type_name -> DBUser - 54, // 15: UserGetServerDataResp.data:type_name -> DBServerData - 55, // 16: UserSignResp.data:type_name -> DBSign + 47, // 0: UserLoginResp.data:type_name -> DBUser + 48, // 1: UserLoginResp.ex:type_name -> DBUserExpand + 47, // 2: UserInfoResp.data:type_name -> DBUser + 48, // 3: UserInfoResp.ex:type_name -> DBUserExpand + 49, // 4: UserRegisterResp.Code:type_name -> ErrorCode + 50, // 5: UserLoadResp.data:type_name -> CacheUser + 51, // 6: UserGetSettingResp.setting:type_name -> DBUserSetting + 51, // 7: UserUpdateSettingReq.setting:type_name -> DBUserSetting + 47, // 8: UserBattlerecordResp.data:type_name -> DBUser + 48, // 9: UserBattlerecordResp.ex:type_name -> DBUserExpand + 52, // 10: UserBattlerecordResp.pagodaRecord:type_name -> DBPagodaRecord + 53, // 11: UserBattlerecordResp.huntingRecord:type_name -> DBHuntingRank + 54, // 12: UserBattlerecordResp.vikingRecord:type_name -> DBVikingRank + 50, // 13: UserOnlineResp.users:type_name -> CacheUser + 47, // 14: UserDataListResp.users:type_name -> DBUser + 55, // 15: UserGetServerDataResp.data:type_name -> DBServerData + 56, // 16: UserSignResp.data:type_name -> DBSign 17, // [17:17] is the sub-list for method output_type 17, // [17:17] is the sub-list for method input_type 17, // [17:17] is the sub-list for extension type_name @@ -3016,7 +3086,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserModifysignReq); i { + switch v := v.(*UserVipChangedPush); i { case 0: return &v.state case 1: @@ -3028,7 +3098,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserModifysignResp); i { + switch v := v.(*UserModifysignReq); i { case 0: return &v.state case 1: @@ -3040,7 +3110,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserBattlerecordReq); i { + switch v := v.(*UserModifysignResp); i { case 0: return &v.state case 1: @@ -3052,7 +3122,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserBattlerecordResp); i { + switch v := v.(*UserBattlerecordReq); i { case 0: return &v.state case 1: @@ -3064,7 +3134,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserSettingteamReq); i { + switch v := v.(*UserBattlerecordResp); i { case 0: return &v.state case 1: @@ -3076,7 +3146,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserSettingteamResp); i { + switch v := v.(*UserSettingteamReq); i { case 0: return &v.state case 1: @@ -3088,7 +3158,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserShowteamReq); i { + switch v := v.(*UserSettingteamResp); i { case 0: return &v.state case 1: @@ -3100,7 +3170,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserShowteamResp); i { + switch v := v.(*UserShowteamReq); i { case 0: return &v.state case 1: @@ -3112,7 +3182,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserOnlineResp); i { + switch v := v.(*UserShowteamResp); i { case 0: return &v.state case 1: @@ -3124,7 +3194,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserDataListResp); i { + switch v := v.(*UserOnlineResp); i { case 0: return &v.state case 1: @@ -3136,7 +3206,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserGetServerDataReq); i { + switch v := v.(*UserDataListResp); i { case 0: return &v.state case 1: @@ -3148,7 +3218,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserGetServerDataResp); i { + switch v := v.(*UserGetServerDataReq); i { case 0: return &v.state case 1: @@ -3160,7 +3230,7 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UserSignReq); i { + switch v := v.(*UserGetServerDataResp); i { case 0: return &v.state case 1: @@ -3172,6 +3242,18 @@ func file_user_user_msg_proto_init() { } } file_user_user_msg_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UserSignReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_user_user_msg_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UserSignResp); i { case 0: return &v.state @@ -3190,7 +3272,7 @@ func file_user_user_msg_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_user_user_msg_proto_rawDesc, NumEnums: 0, - NumMessages: 46, + NumMessages: 47, NumExtensions: 0, NumServices: 0, }, diff --git a/stress/server/dispose.go b/stress/server/dispose.go index 93424d9a2..db12e7ea1 100644 --- a/stress/server/dispose.go +++ b/stress/server/dispose.go @@ -17,7 +17,7 @@ import ( ) const ( - connectionMode = 1 // 1:顺序建立长链接 2:并发建立长链接 + connectionMode = 2 // 1:顺序建立长链接 2:并发建立长链接 ) // init 注册验证器 @@ -51,7 +51,7 @@ func Dispose(ctx context.Context, concurrency, totalNumber uint64, request *mode case 1: // 连接以后再启动协程 r := robot.NewRobot(request.URL) - r.SetAccount("f51112" + strconv.Itoa(int(i))) + r.SetAccount("e51112" + strconv.Itoa(int(i))) //head := &pb.UserMessage{MainType: "user", SubType: "login"} // 先登录 @@ -63,7 +63,7 @@ func Dispose(ctx context.Context, concurrency, totalNumber uint64, request *mode // 并发建立长链接 go func(i uint64) { r := robot.NewRobot(request.URL) - r.SetAccount("b71112" + strconv.Itoa(int(i))) + r.SetAccount("c71112" + strconv.Itoa(int(i))) //head := &pb.UserMessage{MainType: "user", SubType: "login"} // 先登录 diff --git a/sys/configure/structs/Game.Vip.go b/sys/configure/structs/Game.Vip.go new file mode 100644 index 000000000..227ea43c5 --- /dev/null +++ b/sys/configure/structs/Game.Vip.go @@ -0,0 +1,42 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +package cfg + +type GameVip struct { + _dataMap map[int32]*GameVipData + _dataList []*GameVipData +} + +func NewGameVip(_buf []map[string]interface{}) (*GameVip, error) { + _dataList := make([]*GameVipData, 0, len(_buf)) + dataMap := make(map[int32]*GameVipData) + for _, _ele_ := range _buf { + if _v, err2 := DeserializeGameVipData(_ele_); err2 != nil { + return nil, err2 + } else { + _dataList = append(_dataList, _v) + dataMap[_v.VipLv] = _v + } + } + return &GameVip{_dataList:_dataList, _dataMap:dataMap}, nil +} + +func (table *GameVip) GetDataMap() map[int32]*GameVipData { + return table._dataMap +} + +func (table *GameVip) GetDataList() []*GameVipData { + return table._dataList +} + +func (table *GameVip) Get(key int32) *GameVipData { + return table._dataMap[key] +} + + diff --git a/sys/configure/structs/Game.VipData.go b/sys/configure/structs/Game.VipData.go new file mode 100644 index 000000000..10dd294fe --- /dev/null +++ b/sys/configure/structs/Game.VipData.go @@ -0,0 +1,92 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +package cfg + +import "errors" + +type GameVipData struct { + VipLv int32 + UpExp int32 + VipName string + VipLvPng string + VipLvGiftPng string + OriginalPriceprice *Gameatn + PriceDiscount *Gameatn + Giftinfo []*Gameatn + Daygift []*Gameatn + VipPrivilege []int32 +} + +const TypeId_GameVipData = 947325803 + +func (*GameVipData) GetTypeId() int32 { + return 947325803 +} + +func (_v *GameVipData)Deserialize(_buf map[string]interface{}) (err error) { + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["vip_lv"].(float64); !_ok_ { err = errors.New("vip_lv error"); return }; _v.VipLv = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["up_exp"].(float64); !_ok_ { err = errors.New("up_exp error"); return }; _v.UpExp = int32(_tempNum_) } + {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["vip_name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.VipName error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.VipName, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } } + { var _ok_ bool; if _v.VipLvPng, _ok_ = _buf["vip_lv_png"].(string); !_ok_ { err = errors.New("vip_lv_png error"); return } } + { var _ok_ bool; if _v.VipLvGiftPng, _ok_ = _buf["vip_lv_gift_png"].(string); !_ok_ { err = errors.New("vip_lv_gift_png error"); return } } + { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["original_priceprice"].(map[string]interface{}); !_ok_ { err = errors.New("original_priceprice error"); return }; if _v.OriginalPriceprice, err = DeserializeGameatn(_x_); err != nil { return } } + { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["price_discount"].(map[string]interface{}); !_ok_ { err = errors.New("price_discount error"); return }; if _v.PriceDiscount, err = DeserializeGameatn(_x_); err != nil { return } } + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["giftinfo"].([]interface{}); !_ok_ { err = errors.New("giftinfo error"); return } + + _v.Giftinfo = make([]*Gameatn, 0, len(_arr_)) + + for _, _e_ := range _arr_ { + var _list_v_ *Gameatn + { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } } + _v.Giftinfo = append(_v.Giftinfo, _list_v_) + } + } + + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["daygift"].([]interface{}); !_ok_ { err = errors.New("daygift error"); return } + + _v.Daygift = make([]*Gameatn, 0, len(_arr_)) + + for _, _e_ := range _arr_ { + var _list_v_ *Gameatn + { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } } + _v.Daygift = append(_v.Daygift, _list_v_) + } + } + + { + var _arr_ []interface{} + var _ok_ bool + if _arr_, _ok_ = _buf["vip_privilege"].([]interface{}); !_ok_ { err = errors.New("vip_privilege error"); return } + + _v.VipPrivilege = make([]int32, 0, len(_arr_)) + + for _, _e_ := range _arr_ { + var _list_v_ int32 + { var _ok_ bool; var _x_ float64; if _x_, _ok_ = _e_.(float64); !_ok_ { err = errors.New("_list_v_ error"); return }; _list_v_ = int32(_x_) } + _v.VipPrivilege = append(_v.VipPrivilege, _list_v_) + } + } + + return +} + +func DeserializeGameVipData(_buf map[string]interface{}) (*GameVipData, error) { + v := &GameVipData{} + if err := v.Deserialize(_buf); err == nil { + return v, nil + } else { + return nil, err + } +}