From ddc88bace31594cb55448db244e8b032b3dfabba Mon Sep 17 00:00:00 2001 From: zqj <582132116@qq.com> Date: Tue, 10 May 2022 15:34:46 +0800 Subject: [PATCH] fix: 记录战斗 --- .gitignore | 5 ++++- .gitmodules | 3 +++ DesignerConfigs | 2 +- Makefile | 30 +++++++++++++++++++++++++----- cmd/gameserver/action/RoleAction.go | 82 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- cmd/gameserver/action/protocode.go | 2 ++ cmd/gameserver/gmaction/GmAction.go | 21 ++++++++++++++++++--- cmd/gameserver/service/gm.go | 1 - common/commonFunc.go | 30 +++++++++++++++++++++++++++++- luban_examples | 1 + models/role.go | 8 ++++---- models/rolePlugin.go | 57 ++++++++++++++++++++++++++++++++++++++++++++------------- models/schema.go | 10 ++++------ pb/game.pb.go | 319 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------- pb/models.pb.go | 210 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------------------------- pb/protocode.pb.go | 40 +++++++++++++++++++++++++++++----------- 16 files changed, 658 insertions(+), 163 deletions(-) create mode 160000 luban_examples diff --git a/.gitignore b/.gitignore index 8cdeb79..d6d529d 100644 --- a/.gitignore +++ b/.gitignore @@ -9,4 +9,7 @@ imgui *.log -doc/draw.md \ No newline at end of file +doc/draw.md + +luaban_examples +*cache.meta \ No newline at end of file diff --git a/.gitmodules b/.gitmodules index 4defc5a..0ec4480 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "DesignerConfigs"] path = DesignerConfigs url = git@120.26.43.151:loujiachen/DesignerConfigs.git +[submodule "luban_examples"] + path = luban_examples + url = git@github.com:focus-creative-games/luban_examples.git diff --git a/DesignerConfigs b/DesignerConfigs index 64305a1..3b86cdc 160000 --- a/DesignerConfigs +++ b/DesignerConfigs @@ -1 +1 @@ -Subproject commit 64305a17c006445bfc036ca0890ea8e96727aff7 +Subproject commit 3b86cdcde67acc5d79e9bcd51bde67c667f69613 diff --git a/Makefile b/Makefile index baef80a..5b6166b 100644 --- a/Makefile +++ b/Makefile @@ -4,10 +4,11 @@ pname = plugin-$(IMGTIME) race = -race #DEBUG = -gcflags "-l -N" DEBUG= -gen: - protoc -I./protos --go_out=./protos --go-grpc_out=./protos ./protos/*proto - protoc-go-inject-tag -input=./pb/*.pb.go - python3 tools/generator.py + +# excel generator config +WORKSPACE=. +GEN_CLIENT=${WORKSPACE}/luban_examples/Tools/Luban.Client/Luban.Client.dll +CONF_ROOT=${WORKSPACE}/DesignerConfigs test: go run cmd/test/client.go @@ -31,4 +32,23 @@ doc: godoc -http=:8980 -goroot="." -play open localhost:8980/pkg/pro2d/cmd/gameserver/action/#pkg-index -.PHONY: all build protos test cert plugin doc \ No newline at end of file +proto: + protoc -I./protos --go_out=./protos --go-grpc_out=./protos ./protos/*proto + protoc-go-inject-tag -input=./pb/*.pb.go + python3 tools/generator.py + +excel: + cd ${WORKSPACE}/DesignerConfigs && git pull && cd - + dotnet ${GEN_CLIENT} -h 127.0.0.1 -j cfg --\ + -d ${CONF_ROOT}/Defines/__root__.xml \ + --input_data_dir ${CONF_ROOT}/Datas \ + --output_code_dir ${WORKSPACE}/csvdata/gen/cfg \ + --output_data_dir ${WORKSPACE}/csvdata/data \ + --gen_types code_go_bin,data_bin \ + --go:bright_module_name "pro2d/csvdata/bin_bright" \ + -s all + +gen:proto excel + + +.PHONY: all build protos test cert plugin doc proto \ No newline at end of file diff --git a/cmd/gameserver/action/RoleAction.go b/cmd/gameserver/action/RoleAction.go index 6f3f8ce..b3dd8b6 100644 --- a/cmd/gameserver/action/RoleAction.go +++ b/cmd/gameserver/action/RoleAction.go @@ -1,4 +1,4 @@ -// Package action 游戏服角色相关操作 +// 游戏服角色相关操作 package action import ( @@ -9,6 +9,7 @@ import ( "pro2d/common/db/mongoproxy" "pro2d/common/db/redisproxy" "pro2d/common/logger" + "pro2d/csvdata" "pro2d/models" "pro2d/pb" ) @@ -168,3 +169,82 @@ func EquipmentDelRpc(role *models.RoleModel, msg components.IMessage) (int32, in return 0, nil } + +/* +RoleStartBattleRpc 开始战斗 +*/ +func RoleStartBattleRpc(role *models.RoleModel, msg components.IMessage) (int32, interface{}) { + req := pb.RoleStartBattleReq{} + if err := proto.Unmarshal(msg.GetData(), &req); err != nil { + logger.Error("loginRpc err: %v", err) + return 1, nil + } + + //TODO 消耗体力 + + return 0, nil +} + +/* +RoleEndBattleRpc 结束战斗 + 2 关卡不存在 + + RoleEndBattleRsp 返回值 +*/ +func RoleEndBattleRpc(role *models.RoleModel, msg components.IMessage) (int32, interface{}) { + req := pb.RoleEndBattleReq{} + if err := proto.Unmarshal(msg.GetData(), &req); err != nil { + logger.Error("loginRpc err: %v", err) + return 1, nil + } + + //find chapter from table config + chapterInfo := csvdata.Get().TbRogueChapter.Get(req.ChapterId) + + //find chapter from role pass + chapterCount, first := role.Role.PassChapters[req.ChapterId] + + //find carbon + carbonInfo, ok := chapterInfo.Carbons[req.CarbonId] + if !ok { + logger.Error("carbonInfo not exists") + return 2, nil + } + + reward := make(common.IMapStringNum) + if !first { + role.Role.PassChapters[req.ChapterId] = 1 + for k, v := range common.StringToMapNum(carbonInfo.FirstAward) { + reward[k] = v + } + } else { + role.Role.PassChapters[req.ChapterId] = chapterCount + 1 + } + + for k, v := range common.StringToMapNum(carbonInfo.NormalAward) { + rv, ok := reward[k] + if !ok { + reward[k] = v + } else { + reward[k] = rv + v + } + } + //award + reward = role.Award(reward) + + //exp + var exp int32 + if req.Pass { + exp = carbonInfo.CarbonExp + } else { + exp = carbonInfo.CarbonFailExp + } + level, exp := role.UpLevel(exp) + + rsp := pb.RoleEndBattleRsp{ + RoleLevel: level, + RoleExp: exp, + Reward: common.MapNumToString(reward), + } + return 0, rsp +} diff --git a/cmd/gameserver/action/protocode.go b/cmd/gameserver/action/protocode.go index 7b11f98..a908688 100644 --- a/cmd/gameserver/action/protocode.go +++ b/cmd/gameserver/action/protocode.go @@ -13,6 +13,8 @@ func GetActionMap() map[interface{}]interface{} { am[uint32(pb.ProtoCode_ChangeTeamReq)] = ChangeTeamRpc am[uint32(pb.ProtoCode_HeroEquipReferReq)] = HeroEquipReferRpc am[uint32(pb.ProtoCode_RoleClearItemsReq)] = RoleClearItemsRpc + am[uint32(pb.ProtoCode_RoleStartBattleReq)] = RoleStartBattleRpc + am[uint32(pb.ProtoCode_RoleEndBattleReq)] = RoleEndBattleRpc am[uint32(pb.ProtoCode_EquipmentDelReq)] = EquipmentDelRpc return am diff --git a/cmd/gameserver/gmaction/GmAction.go b/cmd/gameserver/gmaction/GmAction.go index 11e9c11..b0e7b34 100644 --- a/cmd/gameserver/gmaction/GmAction.go +++ b/cmd/gameserver/gmaction/GmAction.go @@ -53,24 +53,39 @@ func (gm *GmAction) AddItem(role *models.RoleModel, params GMParams) { UpdatePackLimit 更新背包限制 clotheslimit: 服饰限制数 weaponslimit: 武器限制数 + jewelrylimit: 首饰限制数 + materiallimit: 材料限制数 otherlimit: 其他限制数 */ func (gm *GmAction) UpdatePackLimit(role *models.RoleModel, params GMParams) { - update := make(map[string]interface{}, 3) + update := make(map[string]interface{}, 5) c, ok := params["clotheslimit"] if ok { l, _ := strconv.Atoi(c) update["clotheslimit"] = uint32(l) } - w := params["weaponslimit"] + w, ok := params["weaponslimit"] if ok { l, _ := strconv.Atoi(w) update["weaponslimit"] = uint32(l) } - o := params["otherlimit"] + o, ok := params["otherlimit"] if ok { l, _ := strconv.Atoi(o) update["otherlimit"] = uint32(l) } + + o, ok = params["jewelrylimit"] + if ok { + l, _ := strconv.Atoi(o) + update["jewelrylimit"] = uint32(l) + } + + o, ok = params["materiallimit"] + if ok { + l, _ := strconv.Atoi(o) + update["materiallimit"] = uint32(l) + } + role.UpdateProperties(update, true) } diff --git a/cmd/gameserver/service/gm.go b/cmd/gameserver/service/gm.go index 66af485..c089c56 100644 --- a/cmd/gameserver/service/gm.go +++ b/cmd/gameserver/service/gm.go @@ -37,7 +37,6 @@ func (s *GmServer) HandlerFuncObj(tvl, obj reflect.Value) gin.HandlerFunc { } else if c.Request.Method == "GET" { roleId, ok = c.GetQuery("role_id") - logger.Debug(c.Request.URL.Query()) for k, v := range c.Request.URL.Query() { properties[k] = v[0] } diff --git a/common/commonFunc.go b/common/commonFunc.go index 5e4095f..1077a6a 100644 --- a/common/commonFunc.go +++ b/common/commonFunc.go @@ -54,6 +54,7 @@ func GetNextUId() (string, error) { } type IMapString map[string]interface{} +type IMapStringNum map[string]int32 func MapToString(params IMapString) string { var items bytes.Buffer @@ -67,7 +68,7 @@ func MapToString(params IMapString) string { } func StringToMap(items string, num bool) IMapString { - backPack := make(map[string]interface{}, 10) + backPack := make(map[string]interface{}) for _, v := range strings.Split(items, " ") { ii := strings.Split(v, "=") if len(ii) < 2 { @@ -85,3 +86,30 @@ func StringToMap(items string, num bool) IMapString { } return backPack } + +func MapNumToString(params IMapStringNum) string { + var items bytes.Buffer + for k, v := range params { + items.WriteString(k) + items.WriteString("=") + items.WriteString(fmt.Sprintf("%v", v)) + items.WriteString(" ") + } + return items.String() +} + +func StringToMapNum(items string) IMapStringNum { + backPack := make(IMapStringNum) + for _, v := range strings.Split(items, " ") { + ii := strings.Split(v, "=") + if len(ii) < 2 { + continue + } + c, err := strconv.Atoi(ii[1]) + if err != nil { + continue + } + backPack[ii[0]] = int32(c) + } + return backPack +} diff --git a/luban_examples b/luban_examples new file mode 160000 index 0000000..64026a9 --- /dev/null +++ b/luban_examples @@ -0,0 +1 @@ +Subproject commit 64026a935d29e4baef757b9ef7548ff2082516d6 diff --git a/models/role.go b/models/role.go index 4f8c76f..0e304f1 100644 --- a/models/role.go +++ b/models/role.go @@ -18,7 +18,7 @@ type RoleModel struct { Teams SchemaMap Equipments SchemaMap Prop *PropModel - Items common.IMapString //背包 + Items common.IMapStringNum //背包 lastSaveTs int64 } @@ -38,7 +38,7 @@ func RoleExistByUid(uid string) *RoleModel { Teams: make(SchemaMap), Equipments: make(SchemaMap), Prop: new(PropModel), - Items: make(common.IMapString), + Items: make(common.IMapStringNum), } r.Load() r.LoadAll() @@ -54,7 +54,7 @@ func NewRole(id string) *RoleModel { Teams: make(SchemaMap), Equipments: make(SchemaMap), Prop: new(PropModel), - Items: make(common.IMapString), + Items: make(common.IMapStringNum), } return m } @@ -164,7 +164,7 @@ func (m *RoleModel) LoadTeams() { //加载背包数据到内存 func (m *RoleModel) LoadItems() { - m.Items = common.StringToMap(m.Role.Items, true) + m.Items = common.StringToMapNum(m.Role.Items) } func (m *RoleModel) LoadEquipments() { diff --git a/models/rolePlugin.go b/models/rolePlugin.go index 244aba0..8db1e9e 100644 --- a/models/rolePlugin.go +++ b/models/rolePlugin.go @@ -5,32 +5,33 @@ import ( "github.com/golang/protobuf/proto" "pro2d/common" "pro2d/common/logger" + "pro2d/csvdata" "pro2d/pb" ) //背包系统 -func (m *RoleModel) GetItemCount(key string) uint32 { +func (m *RoleModel) GetItemCount(key string) int32 { c, ok := m.Items[key] if !ok { - c = uint32(0) + c = int32(0) } - return c.(uint32) + return c } func (m *RoleModel) CostItem(key string, count int32) bool { - if uint32(count) > m.GetItemCount(key) { + if count > m.GetItemCount(key) { return false } return m.AddItem(key, -count) } -func (m *RoleModel) CostItems(params common.IMapString) bool { +func (m *RoleModel) CostItems(params common.IMapStringNum) bool { for k, v := range params { - if v.(uint32) > m.GetItemCount(k) { + if v > m.GetItemCount(k) { return false } - m.AddItem(k, -v.(int32)) + m.AddItem(k, -v) } return true } @@ -38,13 +39,13 @@ func (m *RoleModel) CostItems(params common.IMapString) bool { func (m *RoleModel) AddItem(key string, count int32) bool { c := m.GetItemCount(key) - num := int32(c) + count + num := c + count if num > 0 { - m.Items[key] = uint32(num) + m.Items[key] = num } else { delete(m.Items, key) } - m.SetProperty("items", common.MapToString(m.Items)) + m.SetProperty("items", common.MapNumToString(m.Items)) rsp, err := proto.Marshal(&pb.RoleUpdateItemsRsp{Items: fmt.Sprintf("%s=%d", key, num)}) if err != nil { @@ -58,12 +59,12 @@ func (m *RoleModel) AddItem(key string, count int32) bool { return true } -func (m *RoleModel) AddItems(params common.IMapString) bool { +func (m *RoleModel) AddItems(params common.IMapStringNum) bool { tmp := make(common.IMapString) for k, v := range params { c := m.GetItemCount(k) - num := c + v.(uint32) + num := c + v if num > 0 { m.Items[k] = num tmp[k] = num @@ -72,7 +73,7 @@ func (m *RoleModel) AddItems(params common.IMapString) bool { } } - m.SetProperty("items", common.MapToString(m.Items)) + m.SetProperty("items", common.MapNumToString(m.Items)) rsp, err := proto.Marshal(&pb.RoleUpdateItemsRsp{Items: common.MapToString(tmp)}) if err != nil { @@ -128,3 +129,33 @@ func (m *RoleModel) EquipmentAddNotify(equip *pb.Equipment) { } } } + +func (m *RoleModel) UpLevel(exp int32) (int32, int32) { + level := m.Role.Level + oldLevelExp := csvdata.Get().TbAccountLevelExp.Get(level) + if exp >= oldLevelExp.NeedExp-m.Role.Exp { + exp = exp - oldLevelExp.NeedExp + level++ + + for exp > 0 { + oldLevelExp = csvdata.Get().TbAccountLevelExp.Get(level) + if exp >= oldLevelExp.NeedExp { + exp = exp - oldLevelExp.NeedExp + level++ + } else { + exp = exp + m.Role.Exp + break + } + } + + } else { + exp = exp + m.Role.Exp + } + return level, exp + +} + +func (m *RoleModel) Award(award common.IMapStringNum) common.IMapStringNum { + m.AddItems(award) + return award +} diff --git a/models/schema.go b/models/schema.go index 003be24..ff2f9d2 100644 --- a/models/schema.go +++ b/models/schema.go @@ -46,10 +46,10 @@ func NewSchema(key string, schema interface{}) *Schema { protoIndex: make(map[string]int), } - proto.MessageReflect(schema.(proto.Message)).Range(func(des protoreflect.FieldDescriptor, value protoreflect.Value) bool { - sch.protoIndex[strings.ToLower(des.JSONName())] = des.Index() - return true - }) + p := proto.MessageReflect(schema.(proto.Message)).Descriptor() + for i := 0; i < p.Fields().Len(); i++ { + sch.protoIndex[strings.ToLower(p.Fields().Get(i).JSONName())] = i + } for i := 0; i < s.Type().NumField(); i++ { name := s.Type().Field(i).Name @@ -216,8 +216,6 @@ func (s *Schema) ParseFields(message protoreflect.Message, properties map[string ids = append(ids, int32(field.Index())) - field.Kind() - message.Set(field, protoreflect.ValueOf(v)) s.SetProperty(k, v) diff --git a/pb/game.pb.go b/pb/game.pb.go index 1a0af97..0f4480f 100644 --- a/pb/game.pb.go +++ b/pb/game.pb.go @@ -570,6 +570,195 @@ func (x *RoleClearItemsReq) GetCount() int32 { return 0 } +type RoleStartBattleReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ChapterId int32 `protobuf:"varint,1,opt,name=chapter_id,json=chapterId,proto3" json:"chapter_id,omitempty"` + CarbonId int32 `protobuf:"varint,2,opt,name=carbon_id,json=carbonId,proto3" json:"carbon_id,omitempty"` +} + +func (x *RoleStartBattleReq) Reset() { + *x = RoleStartBattleReq{} + if protoimpl.UnsafeEnabled { + mi := &file_game_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RoleStartBattleReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RoleStartBattleReq) ProtoMessage() {} + +func (x *RoleStartBattleReq) ProtoReflect() protoreflect.Message { + mi := &file_game_proto_msgTypes[10] + 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 RoleStartBattleReq.ProtoReflect.Descriptor instead. +func (*RoleStartBattleReq) Descriptor() ([]byte, []int) { + return file_game_proto_rawDescGZIP(), []int{10} +} + +func (x *RoleStartBattleReq) GetChapterId() int32 { + if x != nil { + return x.ChapterId + } + return 0 +} + +func (x *RoleStartBattleReq) GetCarbonId() int32 { + if x != nil { + return x.CarbonId + } + return 0 +} + +type RoleEndBattleReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ChapterId int32 `protobuf:"varint,1,opt,name=chapter_id,json=chapterId,proto3" json:"chapter_id,omitempty"` + CarbonId int32 `protobuf:"varint,2,opt,name=carbon_id,json=carbonId,proto3" json:"carbon_id,omitempty"` + Pass bool `protobuf:"varint,3,opt,name=pass,proto3" json:"pass,omitempty"` +} + +func (x *RoleEndBattleReq) Reset() { + *x = RoleEndBattleReq{} + if protoimpl.UnsafeEnabled { + mi := &file_game_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RoleEndBattleReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RoleEndBattleReq) ProtoMessage() {} + +func (x *RoleEndBattleReq) ProtoReflect() protoreflect.Message { + mi := &file_game_proto_msgTypes[11] + 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 RoleEndBattleReq.ProtoReflect.Descriptor instead. +func (*RoleEndBattleReq) Descriptor() ([]byte, []int) { + return file_game_proto_rawDescGZIP(), []int{11} +} + +func (x *RoleEndBattleReq) GetChapterId() int32 { + if x != nil { + return x.ChapterId + } + return 0 +} + +func (x *RoleEndBattleReq) GetCarbonId() int32 { + if x != nil { + return x.CarbonId + } + return 0 +} + +func (x *RoleEndBattleReq) GetPass() bool { + if x != nil { + return x.Pass + } + return false +} + +type RoleEndBattleRsp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RoleLevel int32 `protobuf:"varint,1,opt,name=role_level,json=roleLevel,proto3" json:"role_level,omitempty"` + RoleExp int32 `protobuf:"varint,2,opt,name=role_exp,json=roleExp,proto3" json:"role_exp,omitempty"` + Hero *Hero `protobuf:"bytes,3,opt,name=hero,proto3" json:"hero,omitempty"` + Reward string `protobuf:"bytes,4,opt,name=reward,proto3" json:"reward,omitempty"` +} + +func (x *RoleEndBattleRsp) Reset() { + *x = RoleEndBattleRsp{} + if protoimpl.UnsafeEnabled { + mi := &file_game_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RoleEndBattleRsp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RoleEndBattleRsp) ProtoMessage() {} + +func (x *RoleEndBattleRsp) ProtoReflect() protoreflect.Message { + mi := &file_game_proto_msgTypes[12] + 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 RoleEndBattleRsp.ProtoReflect.Descriptor instead. +func (*RoleEndBattleRsp) Descriptor() ([]byte, []int) { + return file_game_proto_rawDescGZIP(), []int{12} +} + +func (x *RoleEndBattleRsp) GetRoleLevel() int32 { + if x != nil { + return x.RoleLevel + } + return 0 +} + +func (x *RoleEndBattleRsp) GetRoleExp() int32 { + if x != nil { + return x.RoleExp + } + return 0 +} + +func (x *RoleEndBattleRsp) GetHero() *Hero { + if x != nil { + return x.Hero + } + return nil +} + +func (x *RoleEndBattleRsp) GetReward() string { + if x != nil { + return x.Reward + } + return "" +} + //ResponseCmd EquipmentDelReq type EquipmentDelReq struct { state protoimpl.MessageState @@ -582,7 +771,7 @@ type EquipmentDelReq struct { func (x *EquipmentDelReq) Reset() { *x = EquipmentDelReq{} if protoimpl.UnsafeEnabled { - mi := &file_game_proto_msgTypes[10] + mi := &file_game_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -595,7 +784,7 @@ func (x *EquipmentDelReq) String() string { func (*EquipmentDelReq) ProtoMessage() {} func (x *EquipmentDelReq) ProtoReflect() protoreflect.Message { - mi := &file_game_proto_msgTypes[10] + mi := &file_game_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -608,7 +797,7 @@ func (x *EquipmentDelReq) ProtoReflect() protoreflect.Message { // Deprecated: Use EquipmentDelReq.ProtoReflect.Descriptor instead. func (*EquipmentDelReq) Descriptor() ([]byte, []int) { - return file_game_proto_rawDescGZIP(), []int{10} + return file_game_proto_rawDescGZIP(), []int{13} } func (x *EquipmentDelReq) GetId() string { @@ -630,7 +819,7 @@ type EquipmentAddRsp struct { func (x *EquipmentAddRsp) Reset() { *x = EquipmentAddRsp{} if protoimpl.UnsafeEnabled { - mi := &file_game_proto_msgTypes[11] + mi := &file_game_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -643,7 +832,7 @@ func (x *EquipmentAddRsp) String() string { func (*EquipmentAddRsp) ProtoMessage() {} func (x *EquipmentAddRsp) ProtoReflect() protoreflect.Message { - mi := &file_game_proto_msgTypes[11] + mi := &file_game_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -656,7 +845,7 @@ func (x *EquipmentAddRsp) ProtoReflect() protoreflect.Message { // Deprecated: Use EquipmentAddRsp.ProtoReflect.Descriptor instead. func (*EquipmentAddRsp) Descriptor() ([]byte, []int) { - return file_game_proto_rawDescGZIP(), []int{11} + return file_game_proto_rawDescGZIP(), []int{14} } func (x *EquipmentAddRsp) GetEquip() *Equipment { @@ -712,14 +901,34 @@ var file_game_proto_rawDesc = []byte{ 0x6d, 0x73, 0x22, 0x39, 0x0a, 0x11, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x21, 0x0a, - 0x0f, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x52, 0x65, 0x71, - 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, - 0x22, 0x3a, 0x0a, 0x0f, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, - 0x52, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x05, 0x65, 0x71, 0x75, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2e, 0x45, 0x71, 0x75, 0x69, - 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x71, 0x75, 0x69, 0x70, 0x42, 0x0a, 0x5a, 0x08, - 0x2e, 0x2e, 0x2f, 0x70, 0x62, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x50, 0x0a, + 0x12, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x61, 0x72, 0x62, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x61, 0x72, 0x62, 0x6f, 0x6e, 0x49, 0x64, 0x22, + 0x62, 0x0a, 0x10, 0x52, 0x6f, 0x6c, 0x65, 0x45, 0x6e, 0x64, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x52, 0x65, 0x71, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x61, 0x72, 0x62, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x61, 0x72, 0x62, 0x6f, 0x6e, 0x49, 0x64, 0x12, + 0x12, 0x0a, 0x04, 0x70, 0x61, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x70, + 0x61, 0x73, 0x73, 0x22, 0x86, 0x01, 0x0a, 0x10, 0x52, 0x6f, 0x6c, 0x65, 0x45, 0x6e, 0x64, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x6f, 0x6c, 0x65, + 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x6f, + 0x6c, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x45, + 0x78, 0x70, 0x12, 0x20, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0c, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, + 0x68, 0x65, 0x72, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x21, 0x0a, 0x0f, + 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, + 0x3a, 0x0a, 0x0f, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x52, + 0x73, 0x70, 0x12, 0x27, 0x0a, 0x05, 0x65, 0x71, 0x75, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2e, 0x45, 0x71, 0x75, 0x69, 0x70, + 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x71, 0x75, 0x69, 0x70, 0x42, 0x0a, 0x5a, 0x08, 0x2e, + 0x2e, 0x2f, 0x70, 0x62, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -734,7 +943,7 @@ func file_game_proto_rawDescGZIP() []byte { return file_game_proto_rawDescData } -var file_game_proto_msgTypes = make([]protoimpl.MessageInfo, 12) +var file_game_proto_msgTypes = make([]protoimpl.MessageInfo, 15) var file_game_proto_goTypes = []interface{}{ (*HeartReq)(nil), // 0: game.HeartReq (*HeartRsp)(nil), // 1: game.HeartRsp @@ -746,26 +955,30 @@ var file_game_proto_goTypes = []interface{}{ (*RoleUpdatePropertyRsp)(nil), // 7: game.RoleUpdatePropertyRsp (*RoleUpdateItemsRsp)(nil), // 8: game.RoleUpdateItemsRsp (*RoleClearItemsReq)(nil), // 9: game.RoleClearItemsReq - (*EquipmentDelReq)(nil), // 10: game.EquipmentDelReq - (*EquipmentAddRsp)(nil), // 11: game.EquipmentAddRsp - (*Team)(nil), // 12: models.Team - (*Role)(nil), // 13: models.Role - (*Hero)(nil), // 14: models.Hero - (*Equipment)(nil), // 15: models.Equipment + (*RoleStartBattleReq)(nil), // 10: game.RoleStartBattleReq + (*RoleEndBattleReq)(nil), // 11: game.RoleEndBattleReq + (*RoleEndBattleRsp)(nil), // 12: game.RoleEndBattleRsp + (*EquipmentDelReq)(nil), // 13: game.EquipmentDelReq + (*EquipmentAddRsp)(nil), // 14: game.EquipmentAddRsp + (*Team)(nil), // 15: models.Team + (*Role)(nil), // 16: models.Role + (*Hero)(nil), // 17: models.Hero + (*Equipment)(nil), // 18: models.Equipment } var file_game_proto_depIdxs = []int32{ - 12, // 0: game.ChangeTeamReq.team:type_name -> models.Team - 13, // 1: game.RoleRsp.role:type_name -> models.Role - 14, // 2: game.RoleRsp.hero:type_name -> models.Hero - 12, // 3: game.RoleRsp.team:type_name -> models.Team - 15, // 4: game.RoleRsp.equipments:type_name -> models.Equipment - 13, // 5: game.RoleUpdatePropertyRsp.role:type_name -> models.Role - 15, // 6: game.EquipmentAddRsp.equip:type_name -> models.Equipment - 7, // [7:7] is the sub-list for method output_type - 7, // [7:7] is the sub-list for method input_type - 7, // [7:7] is the sub-list for extension type_name - 7, // [7:7] is the sub-list for extension extendee - 0, // [0:7] is the sub-list for field type_name + 15, // 0: game.ChangeTeamReq.team:type_name -> models.Team + 16, // 1: game.RoleRsp.role:type_name -> models.Role + 17, // 2: game.RoleRsp.hero:type_name -> models.Hero + 15, // 3: game.RoleRsp.team:type_name -> models.Team + 18, // 4: game.RoleRsp.equipments:type_name -> models.Equipment + 16, // 5: game.RoleUpdatePropertyRsp.role:type_name -> models.Role + 17, // 6: game.RoleEndBattleRsp.hero:type_name -> models.Hero + 18, // 7: game.EquipmentAddRsp.equip:type_name -> models.Equipment + 8, // [8:8] is the sub-list for method output_type + 8, // [8:8] is the sub-list for method input_type + 8, // [8:8] is the sub-list for extension type_name + 8, // [8:8] is the sub-list for extension extendee + 0, // [0:8] is the sub-list for field type_name } func init() { file_game_proto_init() } @@ -896,7 +1109,7 @@ func file_game_proto_init() { } } file_game_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EquipmentDelReq); i { + switch v := v.(*RoleStartBattleReq); i { case 0: return &v.state case 1: @@ -908,6 +1121,42 @@ func file_game_proto_init() { } } file_game_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RoleEndBattleReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_game_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RoleEndBattleRsp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_game_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EquipmentDelReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_game_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*EquipmentAddRsp); i { case 0: return &v.state @@ -926,7 +1175,7 @@ func file_game_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_game_proto_rawDesc, NumEnums: 0, - NumMessages: 12, + NumMessages: 15, NumExtensions: 0, NumServices: 0, }, diff --git a/pb/models.pb.go b/pb/models.pb.go index 767ebae..d9dbd4e 100644 --- a/pb/models.pb.go +++ b/pb/models.pb.go @@ -95,6 +95,7 @@ type Hero struct { ReinCount int32 `protobuf:"varint,5,opt,name=rein_count,json=reinCount,proto3" json:"rein_count,omitempty"` ReinPoint int32 `protobuf:"varint,6,opt,name=rein_point,json=reinPoint,proto3" json:"rein_point,omitempty"` Equipments string `protobuf:"bytes,7,opt,name=equipments,proto3" json:"equipments,omitempty"` //"id=type id1=type1" + Exp int64 `protobuf:"varint,8,opt,name=exp,proto3" json:"exp,omitempty"` } func (x *Hero) Reset() { @@ -178,6 +179,13 @@ func (x *Hero) GetEquipments() string { return "" } +func (x *Hero) GetExp() int64 { + if x != nil { + return x.Exp + } + return 0 +} + type Equipment struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -459,22 +467,25 @@ type Role struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" index:"unique" pri:"1"` // @inject_tag: index:"unique" pri:"1" - Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid,omitempty" index:"unique"` // @inject_tag: index:"unique" - Device string `protobuf:"bytes,3,opt,name=device,proto3" json:"device,omitempty"` - Nick string `protobuf:"bytes,4,opt,name=nick,proto3" json:"nick,omitempty"` - Level int32 `protobuf:"varint,5,opt,name=level,proto3" json:"level,omitempty"` - Exp int64 `protobuf:"varint,6,opt,name=exp,proto3" json:"exp,omitempty"` - Hp int64 `protobuf:"varint,7,opt,name=hp,proto3" json:"hp,omitempty"` - HpMax int64 `protobuf:"varint,8,opt,name=hp_max,json=hpMax,proto3" json:"hp_max,omitempty"` - BuyR string `protobuf:"bytes,11,opt,name=buy_r,json=buyR,proto3" json:"buy_r,omitempty"` - PayR string `protobuf:"bytes,12,opt,name=pay_r,json=payR,proto3" json:"pay_r,omitempty"` - Del bool `protobuf:"varint,13,opt,name=del,proto3" json:"del,omitempty"` - Incres map[string]uint32 `protobuf:"bytes,14,rep,name=incres,proto3" json:"incres,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - Items string `protobuf:"bytes,15,opt,name=items,proto3" json:"items,omitempty"` //物品 "id=count id2=count2" - Clotheslimit uint32 `protobuf:"varint,16,opt,name=clotheslimit,proto3" json:"clotheslimit,omitempty"` - Weaponslimit uint32 `protobuf:"varint,17,opt,name=weaponslimit,proto3" json:"weaponslimit,omitempty"` - Otherlimit uint32 `protobuf:"varint,18,opt,name=otherlimit,proto3" json:"otherlimit,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" index:"unique" pri:"1"` // @inject_tag: index:"unique" pri:"1" + Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid,omitempty" index:"unique"` // @inject_tag: index:"unique" + Device string `protobuf:"bytes,3,opt,name=device,proto3" json:"device,omitempty"` + Nick string `protobuf:"bytes,4,opt,name=nick,proto3" json:"nick,omitempty"` + Level int32 `protobuf:"varint,5,opt,name=level,proto3" json:"level,omitempty"` + Exp int32 `protobuf:"varint,6,opt,name=exp,proto3" json:"exp,omitempty"` + Hp int64 `protobuf:"varint,7,opt,name=hp,proto3" json:"hp,omitempty"` + HpMax int64 `protobuf:"varint,8,opt,name=hp_max,json=hpMax,proto3" json:"hp_max,omitempty"` + BuyR string `protobuf:"bytes,11,opt,name=buy_r,json=buyR,proto3" json:"buy_r,omitempty"` + PayR string `protobuf:"bytes,12,opt,name=pay_r,json=payR,proto3" json:"pay_r,omitempty"` + Del bool `protobuf:"varint,13,opt,name=del,proto3" json:"del,omitempty"` + Incres map[string]uint32 `protobuf:"bytes,14,rep,name=incres,proto3" json:"incres,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + Items string `protobuf:"bytes,15,opt,name=items,proto3" json:"items,omitempty"` //物品 "id=count id2=count2" + Clotheslimit uint32 `protobuf:"varint,16,opt,name=clotheslimit,proto3" json:"clotheslimit,omitempty"` + Weaponslimit uint32 `protobuf:"varint,17,opt,name=weaponslimit,proto3" json:"weaponslimit,omitempty"` + Otherlimit uint32 `protobuf:"varint,18,opt,name=otherlimit,proto3" json:"otherlimit,omitempty"` + Jewelrylimit uint32 `protobuf:"varint,19,opt,name=jewelrylimit,proto3" json:"jewelrylimit,omitempty"` + Materiallimit uint32 `protobuf:"varint,20,opt,name=materiallimit,proto3" json:"materiallimit,omitempty"` + PassChapters map[int32]int32 `protobuf:"bytes,21,rep,name=pass_chapters,json=passChapters,proto3" json:"pass_chapters,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 通关记录 } func (x *Role) Reset() { @@ -544,7 +555,7 @@ func (x *Role) GetLevel() int32 { return 0 } -func (x *Role) GetExp() int64 { +func (x *Role) GetExp() int32 { if x != nil { return x.Exp } @@ -621,6 +632,27 @@ func (x *Role) GetOtherlimit() uint32 { return 0 } +func (x *Role) GetJewelrylimit() uint32 { + if x != nil { + return x.Jewelrylimit + } + return 0 +} + +func (x *Role) GetMateriallimit() uint32 { + if x != nil { + return x.Materiallimit + } + return 0 +} + +func (x *Role) GetPassChapters() map[int32]int32 { + if x != nil { + return x.PassChapters + } + return nil +} + var File_models_proto protoreflect.FileDescriptor var file_models_proto_rawDesc = []byte{ @@ -630,7 +662,7 @@ var file_models_proto_rawDesc = []byte{ 0x52, 0x05, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x75, 0x69, 0x64, 0x22, 0xb7, 0x01, 0x0a, 0x04, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x0e, + 0x52, 0x03, 0x75, 0x69, 0x64, 0x22, 0xc9, 0x01, 0x0a, 0x04, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, @@ -641,62 +673,76 @@ var file_models_proto_rawDesc = []byte{ 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x69, 0x6e, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x65, 0x69, 0x6e, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, - 0xa0, 0x01, 0x0a, 0x09, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, - 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, - 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, - 0x68, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0c, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, - 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, 0x61, 0x6c, - 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x71, 0x75, 0x61, 0x6c, 0x69, - 0x74, 0x79, 0x22, 0x2c, 0x0a, 0x04, 0x50, 0x72, 0x6f, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x22, 0x80, 0x01, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, - 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x31, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x31, 0x12, 0x19, 0x0a, - 0x08, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x32, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x65, 0x72, 0x6f, - 0x5f, 0x69, 0x64, 0x33, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x65, 0x72, 0x6f, - 0x49, 0x64, 0x33, 0x22, 0x2f, 0x0a, 0x09, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, - 0x65, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x03, 0x76, 0x61, 0x6c, 0x22, 0xca, 0x03, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 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, - 0x16, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x69, 0x63, 0x6b, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x69, 0x63, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x6c, - 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x78, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, - 0x65, 0x78, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x68, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x02, 0x68, 0x70, 0x12, 0x15, 0x0a, 0x06, 0x68, 0x70, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x05, 0x68, 0x70, 0x4d, 0x61, 0x78, 0x12, 0x13, 0x0a, 0x05, 0x62, 0x75, - 0x79, 0x5f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x75, 0x79, 0x52, 0x12, - 0x13, 0x0a, 0x05, 0x70, 0x61, 0x79, 0x5f, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x70, 0x61, 0x79, 0x52, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x65, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x03, 0x64, 0x65, 0x6c, 0x12, 0x30, 0x0a, 0x06, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x73, - 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2e, - 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x06, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, - 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x22, - 0x0a, 0x0c, 0x63, 0x6c, 0x6f, 0x74, 0x68, 0x65, 0x73, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x10, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6c, 0x6f, 0x74, 0x68, 0x65, 0x73, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x73, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x65, 0x61, 0x70, 0x6f, 0x6e, - 0x73, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x6c, - 0x69, 0x6d, 0x69, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6f, 0x74, 0x68, 0x65, - 0x72, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x1a, 0x39, 0x0a, 0x0b, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x42, 0x0a, 0x5a, 0x08, 0x2e, 0x2e, 0x2f, 0x70, 0x62, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, + 0x10, 0x0a, 0x03, 0x65, 0x78, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x65, 0x78, + 0x70, 0x22, 0xa0, 0x01, 0x0a, 0x09, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, + 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, + 0x6c, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x71, 0x75, 0x61, + 0x6c, 0x69, 0x74, 0x79, 0x22, 0x2c, 0x0a, 0x04, 0x50, 0x72, 0x6f, 0x70, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x22, 0x80, 0x01, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, + 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, + 0x6c, 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x31, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x31, 0x12, + 0x19, 0x0a, 0x08, 0x68, 0x65, 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x32, 0x12, 0x19, 0x0a, 0x08, 0x68, 0x65, + 0x72, 0x6f, 0x5f, 0x69, 0x64, 0x33, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x65, + 0x72, 0x6f, 0x49, 0x64, 0x33, 0x22, 0x2f, 0x0a, 0x09, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x03, 0x76, 0x61, 0x6c, 0x22, 0x9a, 0x05, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 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, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x69, 0x63, + 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x69, 0x63, 0x6b, 0x12, 0x14, 0x0a, + 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x78, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x03, 0x65, 0x78, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x68, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x02, 0x68, 0x70, 0x12, 0x15, 0x0a, 0x06, 0x68, 0x70, 0x5f, 0x6d, 0x61, 0x78, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x68, 0x70, 0x4d, 0x61, 0x78, 0x12, 0x13, 0x0a, 0x05, + 0x62, 0x75, 0x79, 0x5f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x75, 0x79, + 0x52, 0x12, 0x13, 0x0a, 0x05, 0x70, 0x61, 0x79, 0x5f, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x70, 0x61, 0x79, 0x52, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x65, 0x6c, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x03, 0x64, 0x65, 0x6c, 0x12, 0x30, 0x0a, 0x06, 0x69, 0x6e, 0x63, 0x72, + 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, + 0x73, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x06, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, + 0x65, 0x6d, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, + 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6c, 0x6f, 0x74, 0x68, 0x65, 0x73, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x63, 0x6c, 0x6f, 0x74, 0x68, 0x65, 0x73, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x65, 0x61, 0x70, 0x6f, 0x6e, 0x73, 0x6c, + 0x69, 0x6d, 0x69, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x65, 0x61, 0x70, + 0x6f, 0x6e, 0x73, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x74, 0x68, 0x65, + 0x72, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6f, 0x74, + 0x68, 0x65, 0x72, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x6a, 0x65, 0x77, 0x65, + 0x6c, 0x72, 0x79, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x6a, 0x65, 0x77, 0x65, 0x6c, 0x72, 0x79, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x24, 0x0a, 0x0d, + 0x6d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x6c, 0x69, 0x6d, + 0x69, 0x74, 0x12, 0x43, 0x0a, 0x0d, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x63, 0x68, 0x61, 0x70, 0x74, + 0x65, 0x72, 0x73, 0x18, 0x15, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x6f, 0x64, 0x65, + 0x6c, 0x73, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x50, 0x61, 0x73, 0x73, 0x43, 0x68, 0x61, 0x70, + 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x70, 0x61, 0x73, 0x73, 0x43, + 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x49, 0x6e, 0x63, 0x72, 0x65, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x1a, 0x3f, 0x0a, 0x11, 0x50, 0x61, 0x73, 0x73, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, + 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x42, 0x0a, 0x5a, 0x08, 0x2e, 0x2e, 0x2f, 0x70, 0x62, 0x3b, 0x70, 0x62, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -711,7 +757,7 @@ func file_models_proto_rawDescGZIP() []byte { return file_models_proto_rawDescData } -var file_models_proto_msgTypes = make([]protoimpl.MessageInfo, 8) +var file_models_proto_msgTypes = make([]protoimpl.MessageInfo, 9) var file_models_proto_goTypes = []interface{}{ (*Account)(nil), // 0: models.Account (*Hero)(nil), // 1: models.Hero @@ -721,14 +767,16 @@ var file_models_proto_goTypes = []interface{}{ (*Increment)(nil), // 5: models.Increment (*Role)(nil), // 6: models.Role nil, // 7: models.Role.IncresEntry + nil, // 8: models.Role.PassChaptersEntry } var file_models_proto_depIdxs = []int32{ 7, // 0: models.Role.incres:type_name -> models.Role.IncresEntry - 1, // [1:1] is the sub-list for method output_type - 1, // [1:1] is the sub-list for method input_type - 1, // [1:1] is the sub-list for extension type_name - 1, // [1:1] is the sub-list for extension extendee - 0, // [0:1] is the sub-list for field type_name + 8, // 1: models.Role.pass_chapters:type_name -> models.Role.PassChaptersEntry + 2, // [2:2] is the sub-list for method output_type + 2, // [2:2] is the sub-list for method input_type + 2, // [2:2] is the sub-list for extension type_name + 2, // [2:2] is the sub-list for extension extendee + 0, // [0:2] is the sub-list for field type_name } func init() { file_models_proto_init() } @@ -828,7 +876,7 @@ func file_models_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_models_proto_rawDesc, NumEnums: 0, - NumMessages: 8, + NumMessages: 9, NumExtensions: 0, NumServices: 0, }, diff --git a/pb/protocode.pb.go b/pb/protocode.pb.go index 9acfd45..cb79ae4 100644 --- a/pb/protocode.pb.go +++ b/pb/protocode.pb.go @@ -35,8 +35,12 @@ const ( ProtoCode_RoleUpdatePropertyRsp ProtoCode = 9 ProtoCode_RoleUpdateItemsRsp ProtoCode = 10 ProtoCode_RoleClearItemsReq ProtoCode = 11 - ProtoCode_EquipmentDelReq ProtoCode = 12 - ProtoCode_EquipmentAddRsp ProtoCode = 13 + ProtoCode_RoleStartBattleReq ProtoCode = 12 + ProtoCode_RoleEndBattleReq ProtoCode = 13 + ProtoCode_RoleEndBattleRsp ProtoCode = 14 + ProtoCode_RoleRewardRsp ProtoCode = 15 + ProtoCode_EquipmentDelReq ProtoCode = 16 + ProtoCode_EquipmentAddRsp ProtoCode = 17 ) // Enum value maps for ProtoCode. @@ -54,8 +58,12 @@ var ( 9: "RoleUpdatePropertyRsp", 10: "RoleUpdateItemsRsp", 11: "RoleClearItemsReq", - 12: "EquipmentDelReq", - 13: "EquipmentAddRsp", + 12: "RoleStartBattleReq", + 13: "RoleEndBattleReq", + 14: "RoleEndBattleRsp", + 15: "RoleRewardRsp", + 16: "EquipmentDelReq", + 17: "EquipmentAddRsp", } ProtoCode_value = map[string]int32{ "UNKNOWN": 0, @@ -70,8 +78,12 @@ var ( "RoleUpdatePropertyRsp": 9, "RoleUpdateItemsRsp": 10, "RoleClearItemsReq": 11, - "EquipmentDelReq": 12, - "EquipmentAddRsp": 13, + "RoleStartBattleReq": 12, + "RoleEndBattleReq": 13, + "RoleEndBattleRsp": 14, + "RoleRewardRsp": 15, + "EquipmentDelReq": 16, + "EquipmentAddRsp": 17, } ) @@ -106,7 +118,7 @@ var File_protocode_proto protoreflect.FileDescriptor var file_protocode_proto_rawDesc = []byte{ 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x12, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x64, 0x65, 0x2a, 0x8a, 0x02, 0x0a, + 0x6f, 0x12, 0x09, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x64, 0x65, 0x2a, 0xe1, 0x02, 0x0a, 0x09, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x73, 0x70, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x48, 0x65, 0x61, 0x72, 0x74, 0x52, 0x65, @@ -121,10 +133,16 @@ var file_protocode_proto_rawDesc = []byte{ 0x12, 0x16, 0x0a, 0x12, 0x52, 0x6f, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x73, 0x70, 0x10, 0x0a, 0x12, 0x15, 0x0a, 0x11, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x65, 0x71, 0x10, 0x0b, 0x12, - 0x13, 0x0a, 0x0f, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x52, - 0x65, 0x71, 0x10, 0x0c, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, - 0x74, 0x41, 0x64, 0x64, 0x52, 0x73, 0x70, 0x10, 0x0d, 0x42, 0x0a, 0x5a, 0x08, 0x2e, 0x2e, 0x2f, - 0x70, 0x62, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x16, 0x0a, 0x12, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x52, 0x65, 0x71, 0x10, 0x0c, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x6f, 0x6c, 0x65, 0x45, + 0x6e, 0x64, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x10, 0x0d, 0x12, 0x14, 0x0a, + 0x10, 0x52, 0x6f, 0x6c, 0x65, 0x45, 0x6e, 0x64, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x73, + 0x70, 0x10, 0x0e, 0x12, 0x11, 0x0a, 0x0d, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, + 0x64, 0x52, 0x73, 0x70, 0x10, 0x0f, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, + 0x65, 0x6e, 0x74, 0x44, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x10, 0x10, 0x12, 0x13, 0x0a, 0x0f, 0x45, + 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x52, 0x73, 0x70, 0x10, 0x11, + 0x42, 0x0a, 0x5a, 0x08, 0x2e, 0x2e, 0x2f, 0x70, 0x62, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, } var ( -- libgit2 0.21.2