装备套装星级和等级属性添加

This commit is contained in:
liwei1dao 2022-08-31 16:11:23 +08:00
parent 8e71ed1091
commit d975c28b68
3 changed files with 139 additions and 79 deletions

View File

@ -23,16 +23,16 @@ func (this *apiComp) EquipCheck(session comm.IUserSession, req *pb.EquipmentEqui
///英雄挂在装备 code 错误码信息 data 错误附加数据 ///英雄挂在装备 code 错误码信息 data 错误附加数据
func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq) (code pb.ErrorCode, data proto.Message) { func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq) (code pb.ErrorCode, data proto.Message) {
var ( var (
err error err error
confs []*cfg.GameEquipData confs []*cfg.GameEquipData
equipment *pb.DB_Equipment equipment *pb.DB_Equipment
equipments []*pb.DB_Equipment equipments []*pb.DB_Equipment
updatequipment []*pb.DB_Equipment updatequipment []*pb.DB_Equipment
equipNum int32 equipNum int32
equipStr map[int32]int32 = make(map[int32]int32) equipStr map[int32]int32 = make(map[int32]int32)
equipLv map[int32]int32 = make(map[int32]int32) equipLv map[int32]int32 = make(map[int32]int32)
hero *pb.DBHero hero *pb.DBHero
minStr, minLv int32 = math.MaxInt32, math.MaxInt32 suite1Str, suite1Lv, suite2Str, suite2Lv int32 = math.MaxInt32, math.MaxInt32, math.MaxInt32, math.MaxInt32
) )
if code = this.EquipCheck(session, req); code != pb.ErrorCode_Success { if code = this.EquipCheck(session, req); code != pb.ErrorCode_Success {
@ -67,11 +67,20 @@ func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq)
} }
equipStr[confs[i].Star]++ equipStr[confs[i].Star]++
if confs[i].Star < minStr { if i < 4 {
minStr = confs[i].Star if confs[i].Star < suite1Str {
} suite1Str = confs[i].Star
if equipments[i].Lv < minLv { }
minLv = equipments[i].Lv if equipments[i].Lv < suite1Lv {
suite1Lv = equipments[i].Lv
}
} else {
if confs[i].Star < suite2Str {
suite2Str = confs[i].Star
}
if equipments[i].Lv < suite2Lv {
suite2Lv = equipments[i].Lv
}
} }
} else { } else {
equipments[i] = nil equipments[i] = nil
@ -131,16 +140,24 @@ func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq)
confs[1].Suittype == confs[2].Suittype && confs[1].Suittype == confs[2].Suittype &&
confs[2].Suittype == confs[3].Suittype { confs[2].Suittype == confs[3].Suittype {
hero.SuiteId = confs[0].Suittype hero.SuiteId = confs[0].Suittype
hero.Suite1Star = suite1Str
hero.Suite1Lv = suite1Lv
} }
} else { } else {
hero.SuiteId = 0 hero.SuiteId = 0
hero.Suite1Star = 0
hero.Suite1Lv = 0
} }
if subsit { //后2个位置都有装备 判断是否存在套装 if subsit { //后2个位置都有装备 判断是否存在套装
if confs[4].Suittype == confs[5].Suittype { if confs[4].Suittype == confs[5].Suittype {
hero.SuiteExtId = confs[4].Suittype hero.SuiteExtId = confs[4].Suittype
hero.Suite2Star = suite2Str
hero.Suite2Lv = suite2Lv
} }
} else { } else {
hero.SuiteId = 0 hero.SuiteExtId = 0
hero.Suite2Star = 0
hero.Suite2Lv = 0
} }
//更新装备数据加成 //更新装备数据加成
if code = this.module.ModuleHero.UpdateEquipment(session, hero, equipments); code != pb.ErrorCode_Success { if code = this.module.ModuleHero.UpdateEquipment(session, hero, equipments); code != pb.ErrorCode_Success {
@ -161,12 +178,10 @@ func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype42, utils.ToInt32(hero.HeroID), v, k) this.module.ModuleRtask.SendToRtask(session, comm.Rtype42, utils.ToInt32(hero.HeroID), v, k)
} }
if hero.SuiteId != 0 { if hero.SuiteId != 0 {
this.module.ModuleRtask.SendToRtask(session, comm.Rtype46, utils.ToInt32(hero.HeroID), minStr, minLv) this.module.ModuleRtask.SendToRtask(session, comm.Rtype49, 1, hero.Suite1Star, hero.Suite1Lv)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype49, 1, minStr, minLv)
} }
if hero.SuiteExtId != 0 { if hero.SuiteExtId != 0 {
this.module.ModuleRtask.SendToRtask(session, comm.Rtype46, utils.ToInt32(hero.HeroID), minStr, minLv) this.module.ModuleRtask.SendToRtask(session, comm.Rtype48, 1, hero.Suite2Star, hero.Suite2Lv)
this.module.ModuleRtask.SendToRtask(session, comm.Rtype48, 1, minStr, minLv)
} }
session.SendMsg(string(this.module.GetType()), "equip", &pb.EquipmentEquipResp{Equipments: updatequipment}) session.SendMsg(string(this.module.GetType()), "equip", &pb.EquipmentEquipResp{Equipments: updatequipment})

View File

@ -26,16 +26,16 @@ func (this *apiComp) UpgradeCheck(session comm.IUserSession, req *pb.EquipmentUp
///英雄挂在装备 ///英雄挂在装备
func (this *apiComp) Upgrade(session comm.IUserSession, req *pb.EquipmentUpgradeReq) (code pb.ErrorCode, data proto.Message) { func (this *apiComp) Upgrade(session comm.IUserSession, req *pb.EquipmentUpgradeReq) (code pb.ErrorCode, data proto.Message) {
var ( var (
err error err error
conf *cfg.GameEquipData conf *cfg.GameEquipData
intensify *cfg.GameEquipIntensifyData intensify *cfg.GameEquipIntensifyData
equipment *pb.DB_Equipment equipment *pb.DB_Equipment
modifyequipments []*pb.DB_Equipment modifyequipments []*pb.DB_Equipment
hero *pb.DBHero hero *pb.DBHero
equipments []*pb.DB_Equipment equipments []*pb.DB_Equipment
confs []*cfg.GameEquipData confs []*cfg.GameEquipData
issucc bool issucc bool
minStr, minLv int32 = math.MaxInt32, math.MaxInt32 suite1Lv, suite2Lv int32 = math.MaxInt32, math.MaxInt32
) )
if code = this.UpgradeCheck(session, req); code != pb.ErrorCode_Success { if code = this.UpgradeCheck(session, req); code != pb.ErrorCode_Success {
return return
@ -144,21 +144,27 @@ func (this *apiComp) Upgrade(session comm.IUserSession, req *pb.EquipmentUpgrade
equipments[i] = equipment equipments[i] = equipment
confs[i] = conf confs[i] = conf
} }
if confs[i].Star < minStr { if i < 4 {
minStr = confs[i].Star if equipments[i].Lv < suite1Lv {
} suite1Lv = equipments[i].Lv
if equipments[i].Lv < minLv { }
minLv = equipments[i].Lv } else {
if equipments[i].Lv < suite2Lv {
suite2Lv = equipments[i].Lv
}
} }
} }
} }
if hero.SuiteId != 0 {
hero.Suite1Lv = suite1Lv
this.module.ModuleRtask.SendToRtask(session, comm.Rtype49, 1, hero.Suite1Star, hero.Suite1Lv)
}
if hero.SuiteExtId != 0 {
this.module.ModuleRtask.SendToRtask(session, comm.Rtype48, 1, hero.Suite2Star, hero.Suite2Lv)
}
code = this.module.ModuleHero.UpdateEquipment(session, hero, equipments) code = this.module.ModuleHero.UpdateEquipment(session, hero, equipments)
if hero.SuiteId != 0 && hero.SuiteExtId == conf.Suittype {
this.module.ModuleRtask.SendToRtask(session, comm.Rtype49, 1, minStr, minLv)
}
if hero.SuiteExtId != 0 && hero.SuiteExtId == conf.Suittype {
this.module.ModuleRtask.SendToRtask(session, comm.Rtype48, 1, minStr, minLv)
}
} }
//随机任务触发 //随机任务触发
this.module.ModuleRtask.SendToRtask(session, comm.Rtype43, 1, equipment.Lv) this.module.ModuleRtask.SendToRtask(session, comm.Rtype43, 1, equipment.Lv)

View File

@ -152,6 +152,10 @@ type DBHero struct {
EnergyProperty map[string]int32 `protobuf:"bytes,24,rep,name=energyProperty,proto3" json:"energyProperty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3" bson:"energyProperty"` // EnergyProperty map[string]int32 `protobuf:"bytes,24,rep,name=energyProperty,proto3" json:"energyProperty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3" bson:"energyProperty"` //
JuexProperty map[string]int32 `protobuf:"bytes,25,rep,name=juexProperty,proto3" json:"juexProperty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3" bson:"juexProperty"` ////hp JuexProperty map[string]int32 `protobuf:"bytes,25,rep,name=juexProperty,proto3" json:"juexProperty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3" bson:"juexProperty"` ////hp
Status HeroType `protobuf:"varint,26,opt,name=status,proto3,enum=HeroType" json:"status" bson:"heroType"` //状态 (1 练功) Status HeroType `protobuf:"varint,26,opt,name=status,proto3,enum=HeroType" json:"status" bson:"heroType"` //状态 (1 练功)
Suite1Star int32 `protobuf:"varint,27,opt,name=suite1Star,proto3" json:"suite1Star"`
Suite2Star int32 `protobuf:"varint,28,opt,name=suite2Star,proto3" json:"suite2Star"`
Suite1Lv int32 `protobuf:"varint,29,opt,name=suite1Lv,proto3" json:"suite1Lv"`
Suite2Lv int32 `protobuf:"varint,30,opt,name=suite2Lv,proto3" json:"suite2Lv"`
} }
func (x *DBHero) Reset() { func (x *DBHero) Reset() {
@ -368,6 +372,34 @@ func (x *DBHero) GetStatus() HeroType {
return HeroType_HeroTypeNil return HeroType_HeroTypeNil
} }
func (x *DBHero) GetSuite1Star() int32 {
if x != nil {
return x.Suite1Star
}
return 0
}
func (x *DBHero) GetSuite2Star() int32 {
if x != nil {
return x.Suite2Star
}
return 0
}
func (x *DBHero) GetSuite1Lv() int32 {
if x != nil {
return x.Suite1Lv
}
return 0
}
func (x *DBHero) GetSuite2Lv() int32 {
if x != nil {
return x.Suite2Lv
}
return 0
}
type Floor struct { type Floor struct {
state protoimpl.MessageState state protoimpl.MessageState
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
@ -519,7 +551,7 @@ var file_hero_hero_db_proto_rawDesc = []byte{
0x61, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01,
0x28, 0x05, 0x52, 0x07, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x28, 0x05, 0x52, 0x07, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x73,
0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, 0x6b, 0x6b, 0x69, 0x6c, 0x6c, 0x4c, 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x73, 0x6b,
0x69, 0x6c, 0x6c, 0x4c, 0x76, 0x22, 0xb3, 0x09, 0x0a, 0x06, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x69, 0x6c, 0x6c, 0x4c, 0x76, 0x22, 0xab, 0x0a, 0x0a, 0x06, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f,
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 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, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75,
0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01,
@ -574,43 +606,50 @@ var file_hero_hero_db_proto_rawDesc = []byte{
0x78, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c,
0x6a, 0x75, 0x65, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x06, 0x6a, 0x75, 0x65, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x06,
0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x48, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x48,
0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
0x3b, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x69, 0x74, 0x65, 0x31, 0x53, 0x74, 0x61, 0x72, 0x18, 0x1b, 0x20,
0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x75, 0x69, 0x74, 0x65, 0x31, 0x53, 0x74, 0x61, 0x72, 0x12,
0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x69, 0x74, 0x65, 0x32, 0x53, 0x74, 0x61, 0x72, 0x18, 0x1c, 0x20,
0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3e, 0x0a, 0x10, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, 0x75, 0x69, 0x74, 0x65, 0x32, 0x53, 0x74, 0x61, 0x72, 0x12,
0x41, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x1a, 0x0a, 0x08, 0x73, 0x75, 0x69, 0x74, 0x65, 0x31, 0x4c, 0x76, 0x18, 0x1d, 0x20, 0x01, 0x28,
0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x05, 0x52, 0x08, 0x73, 0x75, 0x69, 0x74, 0x65, 0x31, 0x4c, 0x76, 0x12, 0x1a, 0x0a, 0x08, 0x73,
0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x75, 0x69, 0x74, 0x65, 0x32, 0x4c, 0x76, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73,
0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x75, 0x69, 0x74, 0x65, 0x32, 0x4c, 0x76, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x65,
0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x41, 0x0a, 0x13, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x70, 0x65,
0x79, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3f, 0x0a, 0x11, 0x4a, 0x75, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x45, 0x6e,
0x65, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a,
0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x27, 0x0a, 0x05, 0x46, 0x41, 0x0a, 0x13, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74,
0x6c, 0x6f, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x68, 0x34, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
0x52, 0x02, 0x68, 0x34, 0x12, 0x0e, 0x0a, 0x02, 0x68, 0x35, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
0x52, 0x02, 0x68, 0x35, 0x22, 0x90, 0x01, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x38, 0x01, 0x1a, 0x3f, 0x0a, 0x11, 0x4a, 0x75, 0x65, 0x78, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72,
0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x12, 0x14, 0x0a, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x02, 0x38, 0x01, 0x22, 0x27, 0x0a, 0x05, 0x46, 0x6c, 0x6f, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02,
0x61, 0x72, 0x35, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x68, 0x34, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x68, 0x34, 0x12, 0x0e, 0x0a, 0x02,
0x28, 0x03, 0x52, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x72, 0x61, 0x68, 0x35, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x68, 0x35, 0x22, 0x90, 0x01, 0x0a,
0x77, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x72, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a,
0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2a, 0x2f, 0x0a, 0x08, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a,
0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12,
0x69, 0x6c, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
0x4b, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x73, 0x74, 0x61, 0x72, 0x34, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x18, 0x04,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x12, 0x14, 0x0a, 0x05, 0x6d,
0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6d, 0x74, 0x69, 0x6d,
0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06,
0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2a,
0x2f, 0x0a, 0x08, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x48,
0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e,
0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4b, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x10, 0x01,
0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
} }
var ( var (