From 09f0e254890666122f4b234b6ea45c9db109c113 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Thu, 8 Sep 2022 11:47:59 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E5=9B=BE=E4=B9=A6=E9=A6=86=E5=8D=8F?= =?UTF-8?q?=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + modules/hunting/api_challenge.go | 2 +- modules/viking/api_challenge.go | 2 +- pb/battle_db.pb.go | 290 +++++++-------------------- pb/library_db.pb.go | 265 +++++++++++++++++++++++++ pb/library_msg.pb.go | 329 +++++++++++++++++++++++++++++++ 6 files changed, 668 insertions(+), 221 deletions(-) create mode 100644 pb/library_db.pb.go create mode 100644 pb/library_msg.pb.go diff --git a/.gitignore b/.gitignore index 782a02199..62e4e995b 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ cmd/luban/ pb.bat cmd/v2/.cache.meta cmd/v2/my.db +.idea/ diff --git a/modules/hunting/api_challenge.go b/modules/hunting/api_challenge.go index 91134cd86..41def23c1 100644 --- a/modules/hunting/api_challenge.go +++ b/modules/hunting/api_challenge.go @@ -36,7 +36,7 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.HuntingChallen code = pb.ErrorCode_PagodaNotFound return } - if hunting.ChallengeCount > this.module.configure.GetGlobalConf().HuntingNum { + if hunting.ChallengeCount+hunting.BuyCount > this.module.configure.GetGlobalConf().HuntingNum { code = pb.ErrorCode_HuntingMaxChallengeCount return } diff --git a/modules/viking/api_challenge.go b/modules/viking/api_challenge.go index 0119e318c..535aa689a 100644 --- a/modules/viking/api_challenge.go +++ b/modules/viking/api_challenge.go @@ -37,7 +37,7 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.VikingChalleng return } - if viking.ChallengeCount > this.module.configure.GetGlobalConf().VikingNum { + if viking.ChallengeCount+viking.BuyCount > this.module.configure.GetGlobalConf().VikingNum { code = pb.ErrorCode_VikingMaxChallengeCount return } diff --git a/pb/battle_db.pb.go b/pb/battle_db.pb.go index 5ba4ffdbf..48b940e8a 100644 --- a/pb/battle_db.pb.go +++ b/pb/battle_db.pb.go @@ -219,131 +219,20 @@ func (DBBattleComp) EnumDescriptor() ([]byte, []int) { return file_battle_battle_db_proto_rawDescGZIP(), []int{3} } -type BattleRole struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Tid int32 `protobuf:"varint,1,opt,name=tid,proto3" json:"tid"` // 临时id - Oid string `protobuf:"bytes,2,opt,name=oid,proto3" json:"oid"` // 玩家英雄数据库id - Pos int32 `protobuf:"varint,3,opt,name=pos,proto3" json:"pos"` // 站位坐标 - HeroID string `protobuf:"bytes,4,opt,name=heroID,proto3" json:"heroID"` // 英雄的配置表ID - Star int32 `protobuf:"varint,5,opt,name=star,proto3" json:"star"` // 英雄星级 - Lv int32 `protobuf:"varint,6,opt,name=lv,proto3" json:"lv"` // 英雄等级 - CaptainSkill int32 `protobuf:"varint,7,opt,name=captainSkill,proto3" json:"captainSkill" bson:"captainSkill"` //队长技能 - NormalSkill []*SkillData `protobuf:"bytes,8,rep,name=normalSkill,proto3" json:"normalSkill" bson:"normalSkill"` //普通技能 - Property map[string]int32 `protobuf:"bytes,9,rep,name=property,proto3" json:"property" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 属性相关 -} - -func (x *BattleRole) Reset() { - *x = BattleRole{} - if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_db_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BattleRole) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BattleRole) ProtoMessage() {} - -func (x *BattleRole) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_db_proto_msgTypes[0] - 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 BattleRole.ProtoReflect.Descriptor instead. -func (*BattleRole) Descriptor() ([]byte, []int) { - return file_battle_battle_db_proto_rawDescGZIP(), []int{0} -} - -func (x *BattleRole) GetTid() int32 { - if x != nil { - return x.Tid - } - return 0 -} - -func (x *BattleRole) GetOid() string { - if x != nil { - return x.Oid - } - return "" -} - -func (x *BattleRole) GetPos() int32 { - if x != nil { - return x.Pos - } - return 0 -} - -func (x *BattleRole) GetHeroID() string { - if x != nil { - return x.HeroID - } - return "" -} - -func (x *BattleRole) GetStar() int32 { - if x != nil { - return x.Star - } - return 0 -} - -func (x *BattleRole) GetLv() int32 { - if x != nil { - return x.Lv - } - return 0 -} - -func (x *BattleRole) GetCaptainSkill() int32 { - if x != nil { - return x.CaptainSkill - } - return 0 -} - -func (x *BattleRole) GetNormalSkill() []*SkillData { - if x != nil { - return x.NormalSkill - } - return nil -} - -func (x *BattleRole) GetProperty() map[string]int32 { - if x != nil { - return x.Property - } - return nil -} - //战斗阵型信息 type DBBattleFormt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Leadpos int32 `protobuf:"varint,1,opt,name=leadpos,proto3" json:"leadpos"` //队长位置 - Team []*BattleRole `protobuf:"bytes,2,rep,name=team,proto3" json:"team"` + Leadpos int32 `protobuf:"varint,1,opt,name=leadpos,proto3" json:"leadpos"` //队长位置 + Team []*DBHero `protobuf:"bytes,2,rep,name=team,proto3" json:"team"` } func (x *DBBattleFormt) Reset() { *x = DBBattleFormt{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_db_proto_msgTypes[1] + mi := &file_battle_battle_db_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -356,7 +245,7 @@ func (x *DBBattleFormt) String() string { func (*DBBattleFormt) ProtoMessage() {} func (x *DBBattleFormt) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_db_proto_msgTypes[1] + mi := &file_battle_battle_db_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -369,7 +258,7 @@ func (x *DBBattleFormt) ProtoReflect() protoreflect.Message { // Deprecated: Use DBBattleFormt.ProtoReflect.Descriptor instead. func (*DBBattleFormt) Descriptor() ([]byte, []int) { - return file_battle_battle_db_proto_rawDescGZIP(), []int{1} + return file_battle_battle_db_proto_rawDescGZIP(), []int{0} } func (x *DBBattleFormt) GetLeadpos() int32 { @@ -379,7 +268,7 @@ func (x *DBBattleFormt) GetLeadpos() int32 { return 0 } -func (x *DBBattleFormt) GetTeam() []*BattleRole { +func (x *DBBattleFormt) GetTeam() []*DBHero { if x != nil { return x.Team } @@ -408,7 +297,7 @@ type DBBattleRecord struct { func (x *DBBattleRecord) Reset() { *x = DBBattleRecord{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_db_proto_msgTypes[2] + mi := &file_battle_battle_db_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -421,7 +310,7 @@ func (x *DBBattleRecord) String() string { func (*DBBattleRecord) ProtoMessage() {} func (x *DBBattleRecord) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_db_proto_msgTypes[2] + mi := &file_battle_battle_db_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -434,7 +323,7 @@ func (x *DBBattleRecord) ProtoReflect() protoreflect.Message { // Deprecated: Use DBBattleRecord.ProtoReflect.Descriptor instead. func (*DBBattleRecord) Descriptor() ([]byte, []int) { - return file_battle_battle_db_proto_rawDescGZIP(), []int{2} + return file_battle_battle_db_proto_rawDescGZIP(), []int{1} } func (x *DBBattleRecord) GetId() string { @@ -519,70 +408,49 @@ var File_battle_battle_db_proto protoreflect.FileDescriptor var file_battle_battle_db_proto_rawDesc = []byte{ 0x0a, 0x16, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x12, 0x68, 0x65, 0x72, 0x6f, 0x2f, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc4, 0x02, 0x0a, - 0x0a, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x74, 0x69, 0x64, 0x12, 0x10, 0x0a, - 0x03, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x69, 0x64, 0x12, - 0x10, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x70, 0x6f, - 0x73, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x74, 0x61, - 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x74, 0x61, 0x72, 0x12, 0x0e, 0x0a, - 0x02, 0x6c, 0x76, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x12, 0x22, 0x0a, - 0x0c, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x53, 0x6b, 0x69, 0x6c, - 0x6c, 0x12, 0x2c, 0x0a, 0x0b, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x53, 0x6b, 0x69, 0x6c, 0x6c, - 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x44, 0x61, - 0x74, 0x61, 0x52, 0x0b, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x12, - 0x35, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x09, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x19, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x50, - 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x70, 0x72, - 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, - 0x74, 0x79, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0x4a, 0x0a, 0x0d, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, - 0x6f, 0x72, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1f, - 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, - 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x22, - 0x91, 0x03, 0x0a, 0x0e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x63, 0x6f, - 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x21, 0x0a, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, - 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, - 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x23, - 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, - 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, - 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x07, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, - 0x72, 0x6d, 0x74, 0x52, 0x08, 0x72, 0x65, 0x64, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x0a, - 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2c, 0x0a, - 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, - 0x52, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x0b, 0x72, - 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0e, - 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x52, - 0x0b, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, 0x06, - 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x44, - 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x52, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x2a, 0x30, 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x07, 0x0a, 0x03, 0x6e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, - 0x65, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x70, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, - 0x70, 0x76, 0x62, 0x10, 0x03, 0x2a, 0x35, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x6d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x10, 0x00, 0x12, - 0x0a, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x6d, - 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x10, 0x02, 0x2a, 0x1f, 0x0a, 0x0c, - 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x06, 0x0a, 0x02, - 0x69, 0x6e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x10, 0x02, 0x2a, 0x2b, 0x0a, - 0x0c, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x12, 0x08, 0x0a, - 0x04, 0x64, 0x72, 0x61, 0x77, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x72, 0x65, 0x64, 0x10, 0x01, - 0x12, 0x08, 0x0a, 0x04, 0x62, 0x75, 0x6c, 0x65, 0x10, 0x02, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, - 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x46, 0x0a, 0x0d, + 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x12, 0x18, 0x0a, + 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, + 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1b, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, + 0x74, 0x65, 0x61, 0x6d, 0x22, 0x91, 0x03, 0x0a, 0x0e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, + 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, + 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x12, 0x23, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x43, + 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x64, + 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x66, 0x6c, 0x69, + 0x73, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, + 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x08, 0x72, 0x65, 0x64, 0x66, 0x6c, 0x69, + 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, + 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, + 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, + 0x12, 0x2f, 0x0a, 0x0b, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, + 0x0a, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, + 0x43, 0x6f, 0x6d, 0x70, 0x52, 0x0b, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, 0x75, 0x6c, + 0x74, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, + 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2a, 0x30, 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x6e, 0x69, 0x6c, 0x10, 0x00, 0x12, + 0x07, 0x0a, 0x03, 0x70, 0x76, 0x65, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x70, 0x10, + 0x02, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x62, 0x10, 0x03, 0x2a, 0x35, 0x0a, 0x08, 0x50, 0x6c, + 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x6d, 0x61, 0x69, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x10, 0x01, + 0x12, 0x0f, 0x0a, 0x0b, 0x6d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x10, + 0x02, 0x2a, 0x1f, 0x0a, 0x0c, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x12, 0x06, 0x0a, 0x02, 0x69, 0x6e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x65, 0x6e, 0x64, + 0x10, 0x02, 0x2a, 0x2b, 0x0a, 0x0c, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, + 0x6d, 0x70, 0x12, 0x08, 0x0a, 0x04, 0x64, 0x72, 0x61, 0x77, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, + 0x72, 0x65, 0x64, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x62, 0x75, 0x6c, 0x65, 0x10, 0x02, 0x42, + 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -598,34 +466,30 @@ func file_battle_battle_db_proto_rawDescGZIP() []byte { } var file_battle_battle_db_proto_enumTypes = make([]protoimpl.EnumInfo, 4) -var file_battle_battle_db_proto_msgTypes = make([]protoimpl.MessageInfo, 4) +var file_battle_battle_db_proto_msgTypes = make([]protoimpl.MessageInfo, 2) var file_battle_battle_db_proto_goTypes = []interface{}{ (BattleType)(0), // 0: BattleType (PlayType)(0), // 1: PlayType (BBattleState)(0), // 2: BBattleState (DBBattleComp)(0), // 3: DBBattleComp - (*BattleRole)(nil), // 4: BattleRole - (*DBBattleFormt)(nil), // 5: DBBattleFormt - (*DBBattleRecord)(nil), // 6: DBBattleRecord - nil, // 7: BattleRole.PropertyEntry - (*SkillData)(nil), // 8: SkillData + (*DBBattleFormt)(nil), // 4: DBBattleFormt + (*DBBattleRecord)(nil), // 5: DBBattleRecord + (*DBHero)(nil), // 6: DBHero } var file_battle_battle_db_proto_depIdxs = []int32{ - 8, // 0: BattleRole.normalSkill:type_name -> SkillData - 7, // 1: BattleRole.property:type_name -> BattleRole.PropertyEntry - 4, // 2: DBBattleFormt.team:type_name -> BattleRole - 0, // 3: DBBattleRecord.btype:type_name -> BattleType - 1, // 4: DBBattleRecord.ptype:type_name -> PlayType - 2, // 5: DBBattleRecord.state:type_name -> BBattleState - 5, // 6: DBBattleRecord.redflist:type_name -> DBBattleFormt - 5, // 7: DBBattleRecord.buleflist:type_name -> DBBattleFormt - 3, // 8: DBBattleRecord.roundresult:type_name -> DBBattleComp - 3, // 9: DBBattleRecord.result:type_name -> DBBattleComp - 10, // [10:10] is the sub-list for method output_type - 10, // [10:10] is the sub-list for method input_type - 10, // [10:10] is the sub-list for extension type_name - 10, // [10:10] is the sub-list for extension extendee - 0, // [0:10] is the sub-list for field type_name + 6, // 0: DBBattleFormt.team:type_name -> DBHero + 0, // 1: DBBattleRecord.btype:type_name -> BattleType + 1, // 2: DBBattleRecord.ptype:type_name -> PlayType + 2, // 3: DBBattleRecord.state:type_name -> BBattleState + 4, // 4: DBBattleRecord.redflist:type_name -> DBBattleFormt + 4, // 5: DBBattleRecord.buleflist:type_name -> DBBattleFormt + 3, // 6: DBBattleRecord.roundresult:type_name -> DBBattleComp + 3, // 7: DBBattleRecord.result:type_name -> DBBattleComp + 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_battle_battle_db_proto_init() } @@ -636,18 +500,6 @@ func file_battle_battle_db_proto_init() { file_hero_hero_db_proto_init() if !protoimpl.UnsafeEnabled { file_battle_battle_db_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BattleRole); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_battle_battle_db_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DBBattleFormt); i { case 0: return &v.state @@ -659,7 +511,7 @@ func file_battle_battle_db_proto_init() { return nil } } - file_battle_battle_db_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_battle_battle_db_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DBBattleRecord); i { case 0: return &v.state @@ -678,7 +530,7 @@ func file_battle_battle_db_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_battle_battle_db_proto_rawDesc, NumEnums: 4, - NumMessages: 4, + NumMessages: 2, NumExtensions: 0, NumServices: 0, }, diff --git a/pb/library_db.pb.go b/pb/library_db.pb.go new file mode 100644 index 000000000..daa9ccfea --- /dev/null +++ b/pb/library_db.pb.go @@ -0,0 +1,265 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.0 +// protoc v3.20.0 +// source: library/library_db.proto + +package pb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type Fetter struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Cid string `protobuf:"bytes,1,opt,name=cid,proto3" json:"cid"` + Lv int32 `protobuf:"varint,2,opt,name=lv,proto3" json:"lv"` +} + +func (x *Fetter) Reset() { + *x = Fetter{} + if protoimpl.UnsafeEnabled { + mi := &file_library_library_db_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Fetter) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Fetter) ProtoMessage() {} + +func (x *Fetter) ProtoReflect() protoreflect.Message { + mi := &file_library_library_db_proto_msgTypes[0] + 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 Fetter.ProtoReflect.Descriptor instead. +func (*Fetter) Descriptor() ([]byte, []int) { + return file_library_library_db_proto_rawDescGZIP(), []int{0} +} + +func (x *Fetter) GetCid() string { + if x != nil { + return x.Cid + } + return "" +} + +func (x *Fetter) GetLv() int32 { + if x != nil { + return x.Lv + } + return 0 +} + +type DBLibrary struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID + Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID + Fid int32 `protobuf:"varint,3,opt,name=fid,proto3" json:"fid"` + Hero map[int32]int32 `protobuf:"bytes,4,rep,name=hero,proto3" json:"hero" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key: hid value: favorlv + Prize bool `protobuf:"varint,5,opt,name=prize,proto3" json:"prize"` //是否领奖 + Fetterlv int32 `protobuf:"varint,6,opt,name=fetterlv,proto3" json:"fetterlv"` // 当前羁绊等级 +} + +func (x *DBLibrary) Reset() { + *x = DBLibrary{} + if protoimpl.UnsafeEnabled { + mi := &file_library_library_db_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DBLibrary) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DBLibrary) ProtoMessage() {} + +func (x *DBLibrary) ProtoReflect() protoreflect.Message { + mi := &file_library_library_db_proto_msgTypes[1] + 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 DBLibrary.ProtoReflect.Descriptor instead. +func (*DBLibrary) Descriptor() ([]byte, []int) { + return file_library_library_db_proto_rawDescGZIP(), []int{1} +} + +func (x *DBLibrary) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DBLibrary) GetUid() string { + if x != nil { + return x.Uid + } + return "" +} + +func (x *DBLibrary) GetFid() int32 { + if x != nil { + return x.Fid + } + return 0 +} + +func (x *DBLibrary) GetHero() map[int32]int32 { + if x != nil { + return x.Hero + } + return nil +} + +func (x *DBLibrary) GetPrize() bool { + if x != nil { + return x.Prize + } + return false +} + +func (x *DBLibrary) GetFetterlv() int32 { + if x != nil { + return x.Fetterlv + } + return 0 +} + +var File_library_library_db_proto protoreflect.FileDescriptor + +var file_library_library_db_proto_rawDesc = []byte{ + 0x0a, 0x18, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x2f, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x72, + 0x79, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x2a, 0x0a, 0x06, 0x46, 0x65, + 0x74, 0x74, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x6c, 0x76, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x22, 0xd4, 0x01, 0x0a, 0x09, 0x44, 0x42, 0x4c, 0x69, 0x62, + 0x72, 0x61, 0x72, 0x79, 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, 0x10, 0x0a, 0x03, 0x66, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x03, 0x66, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x44, 0x42, 0x4c, 0x69, 0x62, 0x72, 0x61, + 0x72, 0x79, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x68, 0x65, + 0x72, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x72, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x05, 0x70, 0x72, 0x69, 0x7a, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x6c, 0x76, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x66, 0x65, 0x74, 0x74, + 0x65, 0x72, 0x6c, 0x76, 0x1a, 0x37, 0x0a, 0x09, 0x48, 0x65, 0x72, 0x6f, 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, 0x06, 0x5a, + 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_library_library_db_proto_rawDescOnce sync.Once + file_library_library_db_proto_rawDescData = file_library_library_db_proto_rawDesc +) + +func file_library_library_db_proto_rawDescGZIP() []byte { + file_library_library_db_proto_rawDescOnce.Do(func() { + file_library_library_db_proto_rawDescData = protoimpl.X.CompressGZIP(file_library_library_db_proto_rawDescData) + }) + return file_library_library_db_proto_rawDescData +} + +var file_library_library_db_proto_msgTypes = make([]protoimpl.MessageInfo, 3) +var file_library_library_db_proto_goTypes = []interface{}{ + (*Fetter)(nil), // 0: Fetter + (*DBLibrary)(nil), // 1: DBLibrary + nil, // 2: DBLibrary.HeroEntry +} +var file_library_library_db_proto_depIdxs = []int32{ + 2, // 0: DBLibrary.hero:type_name -> DBLibrary.HeroEntry + 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 +} + +func init() { file_library_library_db_proto_init() } +func file_library_library_db_proto_init() { + if File_library_library_db_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_library_library_db_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Fetter); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_library_library_db_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DBLibrary); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_library_library_db_proto_rawDesc, + NumEnums: 0, + NumMessages: 3, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_library_library_db_proto_goTypes, + DependencyIndexes: file_library_library_db_proto_depIdxs, + MessageInfos: file_library_library_db_proto_msgTypes, + }.Build() + File_library_library_db_proto = out.File + file_library_library_db_proto_rawDesc = nil + file_library_library_db_proto_goTypes = nil + file_library_library_db_proto_depIdxs = nil +} diff --git a/pb/library_msg.pb.go b/pb/library_msg.pb.go new file mode 100644 index 000000000..5e3a89027 --- /dev/null +++ b/pb/library_msg.pb.go @@ -0,0 +1,329 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.0 +// protoc v3.20.0 +// source: library/library_msg.proto + +package pb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// 获取羁绊信息 +type LibraryGetListReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *LibraryGetListReq) Reset() { + *x = LibraryGetListReq{} + if protoimpl.UnsafeEnabled { + mi := &file_library_library_msg_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LibraryGetListReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LibraryGetListReq) ProtoMessage() {} + +func (x *LibraryGetListReq) ProtoReflect() protoreflect.Message { + mi := &file_library_library_msg_proto_msgTypes[0] + 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 LibraryGetListReq.ProtoReflect.Descriptor instead. +func (*LibraryGetListReq) Descriptor() ([]byte, []int) { + return file_library_library_msg_proto_rawDescGZIP(), []int{0} +} + +type LibraryGetListResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*DBLibrary `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` +} + +func (x *LibraryGetListResp) Reset() { + *x = LibraryGetListResp{} + if protoimpl.UnsafeEnabled { + mi := &file_library_library_msg_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LibraryGetListResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LibraryGetListResp) ProtoMessage() {} + +func (x *LibraryGetListResp) ProtoReflect() protoreflect.Message { + mi := &file_library_library_msg_proto_msgTypes[1] + 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 LibraryGetListResp.ProtoReflect.Descriptor instead. +func (*LibraryGetListResp) Descriptor() ([]byte, []int) { + return file_library_library_msg_proto_rawDescGZIP(), []int{1} +} + +func (x *LibraryGetListResp) GetData() []*DBLibrary { + if x != nil { + return x.Data + } + return nil +} + +// 领取奖励 +type LibraryGetRewardReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ObjId string `protobuf:"bytes,1,opt,name=objId,proto3" json:"objId"` +} + +func (x *LibraryGetRewardReq) Reset() { + *x = LibraryGetRewardReq{} + if protoimpl.UnsafeEnabled { + mi := &file_library_library_msg_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LibraryGetRewardReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LibraryGetRewardReq) ProtoMessage() {} + +func (x *LibraryGetRewardReq) ProtoReflect() protoreflect.Message { + mi := &file_library_library_msg_proto_msgTypes[2] + 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 LibraryGetRewardReq.ProtoReflect.Descriptor instead. +func (*LibraryGetRewardReq) Descriptor() ([]byte, []int) { + return file_library_library_msg_proto_rawDescGZIP(), []int{2} +} + +func (x *LibraryGetRewardReq) GetObjId() string { + if x != nil { + return x.ObjId + } + return "" +} + +type LibraryGetRewardResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *DBLibrary `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` +} + +func (x *LibraryGetRewardResp) Reset() { + *x = LibraryGetRewardResp{} + if protoimpl.UnsafeEnabled { + mi := &file_library_library_msg_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LibraryGetRewardResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LibraryGetRewardResp) ProtoMessage() {} + +func (x *LibraryGetRewardResp) ProtoReflect() protoreflect.Message { + mi := &file_library_library_msg_proto_msgTypes[3] + 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 LibraryGetRewardResp.ProtoReflect.Descriptor instead. +func (*LibraryGetRewardResp) Descriptor() ([]byte, []int) { + return file_library_library_msg_proto_rawDescGZIP(), []int{3} +} + +func (x *LibraryGetRewardResp) GetData() *DBLibrary { + if x != nil { + return x.Data + } + return nil +} + +var File_library_library_msg_proto protoreflect.FileDescriptor + +var file_library_library_msg_proto_rawDesc = []byte{ + 0x0a, 0x19, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x2f, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x72, + 0x79, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x18, 0x6c, 0x69, 0x62, + 0x72, 0x61, 0x72, 0x79, 0x2f, 0x6c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x5f, 0x64, 0x62, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x13, 0x0a, 0x11, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, + 0x47, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x34, 0x0a, 0x12, 0x4c, 0x69, + 0x62, 0x72, 0x61, 0x72, 0x79, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x12, 0x1e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, + 0x2e, 0x44, 0x42, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x22, 0x2b, 0x0a, 0x13, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x62, 0x6a, 0x49, 0x64, 0x22, 0x36, 0x0a, + 0x14, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x47, 0x65, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, + 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x44, 0x42, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_library_library_msg_proto_rawDescOnce sync.Once + file_library_library_msg_proto_rawDescData = file_library_library_msg_proto_rawDesc +) + +func file_library_library_msg_proto_rawDescGZIP() []byte { + file_library_library_msg_proto_rawDescOnce.Do(func() { + file_library_library_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_library_library_msg_proto_rawDescData) + }) + return file_library_library_msg_proto_rawDescData +} + +var file_library_library_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 4) +var file_library_library_msg_proto_goTypes = []interface{}{ + (*LibraryGetListReq)(nil), // 0: LibraryGetListReq + (*LibraryGetListResp)(nil), // 1: LibraryGetListResp + (*LibraryGetRewardReq)(nil), // 2: LibraryGetRewardReq + (*LibraryGetRewardResp)(nil), // 3: LibraryGetRewardResp + (*DBLibrary)(nil), // 4: DBLibrary +} +var file_library_library_msg_proto_depIdxs = []int32{ + 4, // 0: LibraryGetListResp.data:type_name -> DBLibrary + 4, // 1: LibraryGetRewardResp.data:type_name -> DBLibrary + 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_library_library_msg_proto_init() } +func file_library_library_msg_proto_init() { + if File_library_library_msg_proto != nil { + return + } + file_library_library_db_proto_init() + if !protoimpl.UnsafeEnabled { + file_library_library_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LibraryGetListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_library_library_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LibraryGetListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_library_library_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LibraryGetRewardReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_library_library_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LibraryGetRewardResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_library_library_msg_proto_rawDesc, + NumEnums: 0, + NumMessages: 4, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_library_library_msg_proto_goTypes, + DependencyIndexes: file_library_library_msg_proto_depIdxs, + MessageInfos: file_library_library_msg_proto_msgTypes, + }.Build() + File_library_library_msg_proto = out.File + file_library_library_msg_proto_rawDesc = nil + file_library_library_msg_proto_goTypes = nil + file_library_library_msg_proto_depIdxs = nil +} From 9fdc8d9264e5647aeec4803dfb91e2555ae57a0e Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Thu, 8 Sep 2022 11:53:10 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E5=8D=8F=E8=AE=AE=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pb/battle_db.pb.go | 290 ++++++++++++++++++++++++++++++++++----------- 1 file changed, 219 insertions(+), 71 deletions(-) diff --git a/pb/battle_db.pb.go b/pb/battle_db.pb.go index 48b940e8a..5ba4ffdbf 100644 --- a/pb/battle_db.pb.go +++ b/pb/battle_db.pb.go @@ -219,20 +219,131 @@ func (DBBattleComp) EnumDescriptor() ([]byte, []int) { return file_battle_battle_db_proto_rawDescGZIP(), []int{3} } +type BattleRole struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Tid int32 `protobuf:"varint,1,opt,name=tid,proto3" json:"tid"` // 临时id + Oid string `protobuf:"bytes,2,opt,name=oid,proto3" json:"oid"` // 玩家英雄数据库id + Pos int32 `protobuf:"varint,3,opt,name=pos,proto3" json:"pos"` // 站位坐标 + HeroID string `protobuf:"bytes,4,opt,name=heroID,proto3" json:"heroID"` // 英雄的配置表ID + Star int32 `protobuf:"varint,5,opt,name=star,proto3" json:"star"` // 英雄星级 + Lv int32 `protobuf:"varint,6,opt,name=lv,proto3" json:"lv"` // 英雄等级 + CaptainSkill int32 `protobuf:"varint,7,opt,name=captainSkill,proto3" json:"captainSkill" bson:"captainSkill"` //队长技能 + NormalSkill []*SkillData `protobuf:"bytes,8,rep,name=normalSkill,proto3" json:"normalSkill" bson:"normalSkill"` //普通技能 + Property map[string]int32 `protobuf:"bytes,9,rep,name=property,proto3" json:"property" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 属性相关 +} + +func (x *BattleRole) Reset() { + *x = BattleRole{} + if protoimpl.UnsafeEnabled { + mi := &file_battle_battle_db_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BattleRole) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BattleRole) ProtoMessage() {} + +func (x *BattleRole) ProtoReflect() protoreflect.Message { + mi := &file_battle_battle_db_proto_msgTypes[0] + 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 BattleRole.ProtoReflect.Descriptor instead. +func (*BattleRole) Descriptor() ([]byte, []int) { + return file_battle_battle_db_proto_rawDescGZIP(), []int{0} +} + +func (x *BattleRole) GetTid() int32 { + if x != nil { + return x.Tid + } + return 0 +} + +func (x *BattleRole) GetOid() string { + if x != nil { + return x.Oid + } + return "" +} + +func (x *BattleRole) GetPos() int32 { + if x != nil { + return x.Pos + } + return 0 +} + +func (x *BattleRole) GetHeroID() string { + if x != nil { + return x.HeroID + } + return "" +} + +func (x *BattleRole) GetStar() int32 { + if x != nil { + return x.Star + } + return 0 +} + +func (x *BattleRole) GetLv() int32 { + if x != nil { + return x.Lv + } + return 0 +} + +func (x *BattleRole) GetCaptainSkill() int32 { + if x != nil { + return x.CaptainSkill + } + return 0 +} + +func (x *BattleRole) GetNormalSkill() []*SkillData { + if x != nil { + return x.NormalSkill + } + return nil +} + +func (x *BattleRole) GetProperty() map[string]int32 { + if x != nil { + return x.Property + } + return nil +} + //战斗阵型信息 type DBBattleFormt struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Leadpos int32 `protobuf:"varint,1,opt,name=leadpos,proto3" json:"leadpos"` //队长位置 - Team []*DBHero `protobuf:"bytes,2,rep,name=team,proto3" json:"team"` + Leadpos int32 `protobuf:"varint,1,opt,name=leadpos,proto3" json:"leadpos"` //队长位置 + Team []*BattleRole `protobuf:"bytes,2,rep,name=team,proto3" json:"team"` } func (x *DBBattleFormt) Reset() { *x = DBBattleFormt{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_db_proto_msgTypes[0] + mi := &file_battle_battle_db_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -245,7 +356,7 @@ func (x *DBBattleFormt) String() string { func (*DBBattleFormt) ProtoMessage() {} func (x *DBBattleFormt) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_db_proto_msgTypes[0] + mi := &file_battle_battle_db_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -258,7 +369,7 @@ func (x *DBBattleFormt) ProtoReflect() protoreflect.Message { // Deprecated: Use DBBattleFormt.ProtoReflect.Descriptor instead. func (*DBBattleFormt) Descriptor() ([]byte, []int) { - return file_battle_battle_db_proto_rawDescGZIP(), []int{0} + return file_battle_battle_db_proto_rawDescGZIP(), []int{1} } func (x *DBBattleFormt) GetLeadpos() int32 { @@ -268,7 +379,7 @@ func (x *DBBattleFormt) GetLeadpos() int32 { return 0 } -func (x *DBBattleFormt) GetTeam() []*DBHero { +func (x *DBBattleFormt) GetTeam() []*BattleRole { if x != nil { return x.Team } @@ -297,7 +408,7 @@ type DBBattleRecord struct { func (x *DBBattleRecord) Reset() { *x = DBBattleRecord{} if protoimpl.UnsafeEnabled { - mi := &file_battle_battle_db_proto_msgTypes[1] + mi := &file_battle_battle_db_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -310,7 +421,7 @@ func (x *DBBattleRecord) String() string { func (*DBBattleRecord) ProtoMessage() {} func (x *DBBattleRecord) ProtoReflect() protoreflect.Message { - mi := &file_battle_battle_db_proto_msgTypes[1] + mi := &file_battle_battle_db_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -323,7 +434,7 @@ func (x *DBBattleRecord) ProtoReflect() protoreflect.Message { // Deprecated: Use DBBattleRecord.ProtoReflect.Descriptor instead. func (*DBBattleRecord) Descriptor() ([]byte, []int) { - return file_battle_battle_db_proto_rawDescGZIP(), []int{1} + return file_battle_battle_db_proto_rawDescGZIP(), []int{2} } func (x *DBBattleRecord) GetId() string { @@ -408,49 +519,70 @@ var File_battle_battle_db_proto protoreflect.FileDescriptor var file_battle_battle_db_proto_rawDesc = []byte{ 0x0a, 0x16, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x12, 0x68, 0x65, 0x72, 0x6f, 0x2f, 0x68, - 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x46, 0x0a, 0x0d, - 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x12, 0x18, 0x0a, - 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1b, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x04, - 0x74, 0x65, 0x61, 0x6d, 0x22, 0x91, 0x03, 0x0a, 0x0e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, - 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, - 0x79, 0x70, 0x65, 0x52, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6c, 0x65, - 0x76, 0x65, 0x6c, 0x12, 0x23, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x43, - 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x64, - 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x66, 0x6c, 0x69, - 0x73, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, - 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x08, 0x72, 0x65, 0x64, 0x66, 0x6c, 0x69, - 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, - 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, - 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x46, 0x6f, 0x72, 0x6d, 0x74, 0x52, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, - 0x12, 0x2f, 0x0a, 0x0b, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x0a, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x43, 0x6f, 0x6d, 0x70, 0x52, 0x0b, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, - 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2a, 0x30, 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x74, - 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x6e, 0x69, 0x6c, 0x10, 0x00, 0x12, - 0x07, 0x0a, 0x03, 0x70, 0x76, 0x65, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x70, 0x10, - 0x02, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x62, 0x10, 0x03, 0x2a, 0x35, 0x0a, 0x08, 0x50, 0x6c, - 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x6d, 0x61, 0x69, 0x6e, 0x6c, 0x69, - 0x6e, 0x65, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x10, 0x01, - 0x12, 0x0f, 0x0a, 0x0b, 0x6d, 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x10, - 0x02, 0x2a, 0x1f, 0x0a, 0x0c, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x12, 0x06, 0x0a, 0x02, 0x69, 0x6e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x65, 0x6e, 0x64, - 0x10, 0x02, 0x2a, 0x2b, 0x0a, 0x0c, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, - 0x6d, 0x70, 0x12, 0x08, 0x0a, 0x04, 0x64, 0x72, 0x61, 0x77, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, - 0x72, 0x65, 0x64, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x62, 0x75, 0x6c, 0x65, 0x10, 0x02, 0x42, - 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x72, 0x6f, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc4, 0x02, 0x0a, + 0x0a, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x74, 0x69, 0x64, 0x12, 0x10, 0x0a, + 0x03, 0x6f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6f, 0x69, 0x64, 0x12, + 0x10, 0x0a, 0x03, 0x70, 0x6f, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x70, 0x6f, + 0x73, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x74, 0x61, + 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x73, 0x74, 0x61, 0x72, 0x12, 0x0e, 0x0a, + 0x02, 0x6c, 0x76, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x6c, 0x76, 0x12, 0x22, 0x0a, + 0x0c, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x61, 0x70, 0x74, 0x61, 0x69, 0x6e, 0x53, 0x6b, 0x69, 0x6c, + 0x6c, 0x12, 0x2c, 0x0a, 0x0b, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x53, 0x6b, 0x69, 0x6c, 0x6c, + 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x0b, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x53, 0x6b, 0x69, 0x6c, 0x6c, 0x12, + 0x35, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x09, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x19, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x2e, 0x50, + 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x70, 0x72, + 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, + 0x74, 0x79, 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, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0x4a, 0x0a, 0x0d, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, + 0x6f, 0x72, 0x6d, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x6c, 0x65, 0x61, 0x64, 0x70, 0x6f, 0x73, 0x12, 0x1f, + 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, + 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x22, + 0x91, 0x03, 0x0a, 0x0e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x63, 0x6f, + 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x21, 0x0a, 0x05, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x05, + 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, + 0x05, 0x70, 0x74, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6c, 0x65, 0x76, 0x65, 0x6c, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x23, + 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, + 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, + 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x49, + 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x07, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, + 0x72, 0x6d, 0x74, 0x52, 0x08, 0x72, 0x65, 0x64, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x0a, + 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x62, 0x6c, 0x75, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x49, 0x64, 0x12, 0x2c, 0x0a, + 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x74, + 0x52, 0x09, 0x62, 0x75, 0x6c, 0x65, 0x66, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x0b, 0x72, + 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0e, + 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x52, + 0x0b, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x25, 0x0a, 0x06, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0d, 0x2e, 0x44, + 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x52, 0x06, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x2a, 0x30, 0x0a, 0x0a, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x07, 0x0a, 0x03, 0x6e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, + 0x65, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x70, 0x76, 0x70, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, + 0x70, 0x76, 0x62, 0x10, 0x03, 0x2a, 0x35, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x6d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x10, 0x00, 0x12, + 0x0a, 0x0a, 0x06, 0x70, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x6d, + 0x6f, 0x6f, 0x6e, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x10, 0x02, 0x2a, 0x1f, 0x0a, 0x0c, + 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x06, 0x0a, 0x02, + 0x69, 0x6e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x10, 0x02, 0x2a, 0x2b, 0x0a, + 0x0c, 0x44, 0x42, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x12, 0x08, 0x0a, + 0x04, 0x64, 0x72, 0x61, 0x77, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x72, 0x65, 0x64, 0x10, 0x01, + 0x12, 0x08, 0x0a, 0x04, 0x62, 0x75, 0x6c, 0x65, 0x10, 0x02, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, + 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -466,30 +598,34 @@ func file_battle_battle_db_proto_rawDescGZIP() []byte { } var file_battle_battle_db_proto_enumTypes = make([]protoimpl.EnumInfo, 4) -var file_battle_battle_db_proto_msgTypes = make([]protoimpl.MessageInfo, 2) +var file_battle_battle_db_proto_msgTypes = make([]protoimpl.MessageInfo, 4) var file_battle_battle_db_proto_goTypes = []interface{}{ (BattleType)(0), // 0: BattleType (PlayType)(0), // 1: PlayType (BBattleState)(0), // 2: BBattleState (DBBattleComp)(0), // 3: DBBattleComp - (*DBBattleFormt)(nil), // 4: DBBattleFormt - (*DBBattleRecord)(nil), // 5: DBBattleRecord - (*DBHero)(nil), // 6: DBHero + (*BattleRole)(nil), // 4: BattleRole + (*DBBattleFormt)(nil), // 5: DBBattleFormt + (*DBBattleRecord)(nil), // 6: DBBattleRecord + nil, // 7: BattleRole.PropertyEntry + (*SkillData)(nil), // 8: SkillData } var file_battle_battle_db_proto_depIdxs = []int32{ - 6, // 0: DBBattleFormt.team:type_name -> DBHero - 0, // 1: DBBattleRecord.btype:type_name -> BattleType - 1, // 2: DBBattleRecord.ptype:type_name -> PlayType - 2, // 3: DBBattleRecord.state:type_name -> BBattleState - 4, // 4: DBBattleRecord.redflist:type_name -> DBBattleFormt - 4, // 5: DBBattleRecord.buleflist:type_name -> DBBattleFormt - 3, // 6: DBBattleRecord.roundresult:type_name -> DBBattleComp - 3, // 7: DBBattleRecord.result:type_name -> DBBattleComp - 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 + 8, // 0: BattleRole.normalSkill:type_name -> SkillData + 7, // 1: BattleRole.property:type_name -> BattleRole.PropertyEntry + 4, // 2: DBBattleFormt.team:type_name -> BattleRole + 0, // 3: DBBattleRecord.btype:type_name -> BattleType + 1, // 4: DBBattleRecord.ptype:type_name -> PlayType + 2, // 5: DBBattleRecord.state:type_name -> BBattleState + 5, // 6: DBBattleRecord.redflist:type_name -> DBBattleFormt + 5, // 7: DBBattleRecord.buleflist:type_name -> DBBattleFormt + 3, // 8: DBBattleRecord.roundresult:type_name -> DBBattleComp + 3, // 9: DBBattleRecord.result:type_name -> DBBattleComp + 10, // [10:10] is the sub-list for method output_type + 10, // [10:10] is the sub-list for method input_type + 10, // [10:10] is the sub-list for extension type_name + 10, // [10:10] is the sub-list for extension extendee + 0, // [0:10] is the sub-list for field type_name } func init() { file_battle_battle_db_proto_init() } @@ -500,7 +636,7 @@ func file_battle_battle_db_proto_init() { file_hero_hero_db_proto_init() if !protoimpl.UnsafeEnabled { file_battle_battle_db_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DBBattleFormt); i { + switch v := v.(*BattleRole); i { case 0: return &v.state case 1: @@ -512,6 +648,18 @@ func file_battle_battle_db_proto_init() { } } file_battle_battle_db_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DBBattleFormt); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_battle_battle_db_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DBBattleRecord); i { case 0: return &v.state @@ -530,7 +678,7 @@ func file_battle_battle_db_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_battle_battle_db_proto_rawDesc, NumEnums: 4, - NumMessages: 2, + NumMessages: 4, NumExtensions: 0, NumServices: 0, }, From 9209f23b14249fe988f050fef8b5a7c0c5e33dc7 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Thu, 8 Sep 2022 13:56:58 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E6=8C=91=E6=88=98=E6=AC=A1=E6=95=B0?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/hunting/api_challenge.go | 2 +- modules/viking/api_challenge.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/hunting/api_challenge.go b/modules/hunting/api_challenge.go index 41def23c1..fd3e31254 100644 --- a/modules/hunting/api_challenge.go +++ b/modules/hunting/api_challenge.go @@ -36,7 +36,7 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.HuntingChallen code = pb.ErrorCode_PagodaNotFound return } - if hunting.ChallengeCount+hunting.BuyCount > this.module.configure.GetGlobalConf().HuntingNum { + if hunting.ChallengeCount > this.module.configure.GetGlobalConf().HuntingNum+hunting.BuyCount { code = pb.ErrorCode_HuntingMaxChallengeCount return } diff --git a/modules/viking/api_challenge.go b/modules/viking/api_challenge.go index 535aa689a..108912f57 100644 --- a/modules/viking/api_challenge.go +++ b/modules/viking/api_challenge.go @@ -37,7 +37,7 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.VikingChalleng return } - if viking.ChallengeCount+viking.BuyCount > this.module.configure.GetGlobalConf().VikingNum { + if viking.ChallengeCount > this.module.configure.GetGlobalConf().VikingNum+viking.BuyCount { code = pb.ErrorCode_VikingMaxChallengeCount return } From 3c5b1ea290df95d2807de792f9998ae080887a69 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Thu, 8 Sep 2022 15:48:26 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E6=8E=92=E8=A1=8C=E6=A6=9C=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=A4=9A=E7=B1=BB=E5=9E=8B=E6=94=BE=E5=90=8C=E4=B8=80?= =?UTF-8?q?=E5=BC=A0=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- comm/const.go | 4 +- modules/hero/model_record.go | 11 ----- modules/hunting/api_challenge.go | 11 +---- modules/hunting/model_rank.go | 78 ++++++++++++++++++++++---------- modules/pagoda/model_rank.go | 10 ---- modules/timer/huntingrank.go | 7 +-- modules/viking/model_rank.go | 25 +++++----- 7 files changed, 73 insertions(+), 73 deletions(-) diff --git a/comm/const.go b/comm/const.go index b8d9a4989..31836d65c 100644 --- a/comm/const.go +++ b/comm/const.go @@ -130,8 +130,8 @@ const ( // TableHunting = "hunting" // 维京远征排行榜 - TableHuntingRank = "huntingrank" - + TableHuntingRank = "huntingrank" + TableHuntingRankList = "huntingrankList" // 支线剧情任务 TableLinestory = "linestory" diff --git a/modules/hero/model_record.go b/modules/hero/model_record.go index 14f6904ae..5f386fc8e 100644 --- a/modules/hero/model_record.go +++ b/modules/hero/model_record.go @@ -3,7 +3,6 @@ package hero import ( "go_dreamfactory/comm" "go_dreamfactory/lego/core" - "go_dreamfactory/lego/sys/log" "go_dreamfactory/lego/sys/redis" "go_dreamfactory/modules" "go_dreamfactory/pb" @@ -21,16 +20,6 @@ func (this *ModelRecord) Init(service core.IService, module core.IModule, comp c return } -//获取用户 -func (this *ModelRecord) getUserSession(uid string) (cuser *pb.CacheUser) { - cuser = &pb.CacheUser{} - if err := this.Get(uid, cuser); err != nil { - log.Errorf("GetUserSession err:%v", err) - return - } - return -} - //获取用户通过扩展表 func (this *ModelRecord) GetHeroRecord(uid string) (result *pb.DBHeroRecord, err error) { result = &pb.DBHeroRecord{} diff --git a/modules/hunting/api_challenge.go b/modules/hunting/api_challenge.go index fd3e31254..e651f31e4 100644 --- a/modules/hunting/api_challenge.go +++ b/modules/hunting/api_challenge.go @@ -65,7 +65,7 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.HuntingChallen mapData["boss"] = hunting.Boss //hunting.BossTime[] = 0 // todo 耗时 mapData["challengeTime"] = hunting.BossTime - + this.module.modulerank.updatehuntingRankList(session, req.Difficulty, req.BossType) } // 耗时校验 当前战斗胜利时间消耗小于之前刷新数据 hunting.ChallengeCount++ @@ -77,15 +77,6 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.HuntingChallen return } - mapRankData := make(map[string]interface{}, 0) - mapRankData["difficulty"] = req.Difficulty - mapRankData["bosstype"] = req.BossType - mapRankData["uid"] = session.GetUserId() - userinfo := this.module.ModuleUser.GetUser(session.GetUserId()) - mapRankData["nickname"] = userinfo.Name - mapRankData["lv"] = userinfo.Lv - mapRankData["costTime"] = 120 - this.module.modulerank.ChangeUserRank(session.GetUserId(), mapRankData) for k := range hunting.Boss { hunting.Boss[k] += 1 } diff --git a/modules/hunting/model_rank.go b/modules/hunting/model_rank.go index 9a27f5946..7a3968639 100644 --- a/modules/hunting/model_rank.go +++ b/modules/hunting/model_rank.go @@ -3,30 +3,21 @@ package hunting import ( "go_dreamfactory/comm" "go_dreamfactory/lego/core" - "go_dreamfactory/lego/sys/redis" "go_dreamfactory/modules" "go_dreamfactory/pb" + + "go.mongodb.org/mongo-driver/bson/primitive" ) type ModelRank struct { modules.MCompModel - moduleUser *Hunting + moduleHunting *Hunting } func (this *ModelRank) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { this.TableName = comm.TableHuntingRank err = this.MCompModel.Init(service, module, comp, options) - this.moduleUser = module.(*Hunting) - return -} - -//获取用户 -func (this *ModelRank) getUserSession(uid string) (cuser *pb.CacheUser) { - cuser = &pb.CacheUser{} - if err := this.Get(uid, cuser); err != nil { - this.moduleUser.Errorf("GetUserSession err:%v", err) - return - } + this.moduleHunting = module.(*Hunting) return } @@ -37,27 +28,66 @@ func (this *ModelRank) AddRank(uId string, data *pb.DBHuntingRank) (err error) { return nil } -func (this *ModelRank) GetUserRandData(uid string) (result *pb.DBHuntingRank, err error) { - result = &pb.DBHuntingRank{} - if err = this.Get(uid, result); err != nil && redis.RedisNil != err { - return - } - err = nil - return result, err -} +// func (this *ModelRank) GetUserRandData(uid string) (result *pb.DBHuntingRank, err error) { +// result = &pb.DBHuntingRank{} +// if err = this.Get(uid, result); err != nil && redis.RedisNil != err { +// return +// } +// err = nil +// return result, err +// } // 更新排行榜数据 -func (this *ModelRank) ChangeUserRank(uid string, value map[string]interface{}) (err error) { +func (this *ModelRank) ChangeUserRank(uid string, objId string, value map[string]interface{}) (err error) { if len(value) == 0 { return nil } - return this.Change(uid, value) + return this.ChangeList(uid, objId, value) } // 获取排行榜数据 func (this *ModelRank) GetRankData() (data []*pb.DBHuntingRank, err error) { data = make([]*pb.DBHuntingRank, 0) - err = this.Redis.LRange(comm.TableHuntingRank, 0, -1, &data) // 0 表示列表的第一个元素 -1 表示列表的最后一个元素 + err = this.Redis.LRange(comm.TableHuntingRankList, 0, -1, &data) // 0 表示列表的第一个元素 -1 表示列表的最后一个元素 return } + +func (this *ModelRank) getHuntingRankList(uid string) []*pb.DBHuntingRank { + ranks := make([]*pb.DBHuntingRank, 0) + err := this.GetList(uid, &ranks) + if err != nil { + return nil + } + return ranks +} +func (this *ModelRank) updatehuntingRankList(session comm.IUserSession, difficulty int32, boosType int32) { + // 查询是不是更新数据 + ranks := this.getHuntingRankList(session.GetUserId()) + bfind := false + for _, v := range ranks { + if v.Bosstype == boosType { + mapRankData := make(map[string]interface{}, 0) + mapRankData["difficulty"] = difficulty + mapRankData["bosstype"] = boosType + this.ChangeUserRank(session.GetUserId(), v.Id, mapRankData) + bfind = true + break + } + } + if !bfind { + userinfo := this.moduleHunting.ModuleUser.GetUser(session.GetUserId()) + new := &pb.DBHuntingRank{ + Id: primitive.NewObjectID().Hex(), + Uid: session.GetUserId(), + Difficulty: difficulty, + Bosstype: boosType, + Nickname: userinfo.Name, + Icon: "", + Lv: userinfo.Lv, + CostTime: 111, + } + this.AddList(session.GetUserId(), new.Id, new) + } + return +} diff --git a/modules/pagoda/model_rank.go b/modules/pagoda/model_rank.go index dd29112a2..6b601d389 100644 --- a/modules/pagoda/model_rank.go +++ b/modules/pagoda/model_rank.go @@ -20,16 +20,6 @@ func (this *ModelRank) Init(service core.IService, module core.IModule, comp cor return } -//获取用户 -func (this *ModelRank) getUserSession(uid string) (cuser *pb.CacheUser) { - cuser = &pb.CacheUser{} - if err := this.Get(uid, cuser); err != nil { - this.moduleUser.Errorf("GetUserSession err:%v", err) - return - } - return -} - func (this *ModelRank) AddRank(uId string, data *pb.DBPagodaRank) (err error) { if err = this.Add(uId, data); err != nil { //this.Errorf("err:%v", err) diff --git a/modules/timer/huntingrank.go b/modules/timer/huntingrank.go index 4badf1fde..2e62350d2 100644 --- a/modules/timer/huntingrank.go +++ b/modules/timer/huntingrank.go @@ -17,12 +17,13 @@ import ( type HuntingRank struct { modules.MCompModel service core.IService + DbName string } //组件初始化接口 func (this *HuntingRank) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { - - this.TableName = comm.TableHuntingRank + this.DbName = comm.TableHuntingRank + this.TableName = comm.TableHuntingRankList this.MCompModel.Init(service, module, comp, options) this.service = service return @@ -38,7 +39,7 @@ func (this *HuntingRank) Start() (err error) { func (this *HuntingRank) Timer() { data := make([]interface{}, 0) // options.Find().SetLimit(comm.MaxRankList) for i := 1; i <= 4; i++ { // boss 类型 1 2 3 4 后面封装 // 时间参数战斗调完后再加进来 - if _data, err := this.DB.Find(core.SqlTable(this.TableName), bson.M{"bosstype": i}, options.Find().SetSort(bson.M{"difficulty": -1}).SetLimit(comm.MaxRankList)); err == nil { + if _data, err := this.DB.Find(core.SqlTable(this.DbName), bson.M{"bosstype": i}, options.Find().SetSort(bson.M{"difficulty": -1}).SetLimit(comm.MaxRankList)); err == nil { for _data.Next(context.TODO()) { temp := &pb.DBHuntingRank{} if err = _data.Decode(temp); err == nil { diff --git a/modules/viking/model_rank.go b/modules/viking/model_rank.go index 566db37c0..285cda738 100644 --- a/modules/viking/model_rank.go +++ b/modules/viking/model_rank.go @@ -10,26 +10,15 @@ import ( type ModelRank struct { modules.MCompModel - moduleUser *Viking + moduleViking *Viking } func (this *ModelRank) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { this.TableName = comm.TableVikingRank err = this.MCompModel.Init(service, module, comp, options) - this.moduleUser = module.(*Viking) + this.moduleViking = module.(*Viking) return } - -//获取用户 -func (this *ModelRank) getUserSession(uid string) (cuser *pb.CacheUser) { - cuser = &pb.CacheUser{} - if err := this.Get(uid, cuser); err != nil { - this.moduleUser.Errorf("GetUserSession err:%v", err) - return - } - return -} - func (this *ModelRank) AddRank(uId string, data *pb.DBVikingRank) (err error) { if err = this.Add(uId, data); err != nil { return @@ -65,3 +54,13 @@ func (this *ModelRank) GetRankData(bossType int32) (data []*pb.DBVikingRank, err } return } + +// 获取排行榜数据 +func (this *ModelRank) GetUserRankData(bossType int32, uid string) (data *pb.DBVikingRank) { + data = &pb.DBVikingRank{} + if err := this.Get(uid, data); err != nil { + this.moduleViking.Debugf("get dbVikingRank data err:%v", err) + return + } + return +} From 5e2eba49d4d8027c6652747bea22b44246b1cd7b Mon Sep 17 00:00:00 2001 From: wh_zcy Date: Thu, 8 Sep 2022 14:57:59 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E5=8D=8F=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .golangci.yml | 8 ++ cmd/robot/login.go | 2 +- cmd/robot/robot.go | 6 - cmd/v2/service/connService.go | 6 +- cmd/v2/ui/basewindow.go | 2 +- cmd/v2/ui/main_menu.go | 30 ++--- cmd/v2/ui/mainwindow.go | 10 +- cmd/v2/ui/protocol.go | 19 ++++ cmd/v2/ui/tool_pb.go | 1 - cmd/v2/ui/tool_welcome.go | 2 +- cmd/v2/ui/toy_userinfo.go | 8 +- cmd/v2/ui/views/common.go | 22 ---- cmd/v2/ui/views/sys_funclist.go | 28 +++++ comm/const.go | 1 + lego/core/cbase/servicebase.go | 1 - modules/sys/api.go | 28 +++++ modules/sys/api_func.go | 37 ++++++ modules/sys/config.go | 47 ++++++++ modules/sys/module.go | 27 +++++ pb/sys_msg.pb.go | 194 ++++++++++++++++++++++++++++++++ services/worker/main.go | 2 + 21 files changed, 419 insertions(+), 62 deletions(-) create mode 100644 cmd/v2/ui/views/sys_funclist.go create mode 100644 modules/sys/api.go create mode 100644 modules/sys/api_func.go create mode 100644 modules/sys/config.go create mode 100644 modules/sys/module.go create mode 100644 pb/sys_msg.pb.go diff --git a/.golangci.yml b/.golangci.yml index 174df0657..ca4a65ea4 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -11,13 +11,21 @@ linters: disable-all: true enable: - nilerr + # 检查没有判断err的场景,这些没有检查的场景可能导致致命bug在某些场景 - errcheck + # 简化代码 - gosimple + # 检查源代码、报告可疑的结构体,如果Printf函数调用,参数没有对齐字符串格式 - govet + # 检查没有使用参数 - ineffassign + # 专业做静态检查的工具,其它的工具只是一个简单的github仓库 - staticcheck + # 类似编译的前端,解析和检查type - typecheck + # 检查没有使用的go代码,包含没有使用的常量、变量、函数、和类型 - unused + # more linters https://golangci-lint.run/usage/linters/ linters-settings: diff --git a/cmd/robot/login.go b/cmd/robot/login.go index e19eb821f..c109e3eef 100644 --- a/cmd/robot/login.go +++ b/cmd/robot/login.go @@ -36,7 +36,7 @@ func (r *Robot) BuildSecStr() string { //处理登录请求 func (r *Robot) AccountLogin() { - log.Printf("区服:[%d] 账号:[%s] login...", r.opts.ServerId, r.opts.Account) + log.Printf("区服:[%s] 账号:[%s] login...", r.opts.ServerId, r.opts.Account) builders := []*TestCase{ { id: "login", diff --git a/cmd/robot/robot.go b/cmd/robot/robot.go index 2f784078b..e50e610fc 100644 --- a/cmd/robot/robot.go +++ b/cmd/robot/robot.go @@ -143,12 +143,6 @@ func (r *Robot) addBuilders(builders []*TestCase) { } } -func (r *Robot) printBuilders() { - for k, v := range r.builderMap { - zlog.Debugf("%v %s.%s", k, v.mainType, v.subType) - } -} - //处理用例,发送请求 func (r *Robot) handleReq() { for len(r.builderMap) > 0 { diff --git a/cmd/v2/service/connService.go b/cmd/v2/service/connService.go index 6128a85ee..71e305d7d 100644 --- a/cmd/v2/service/connService.go +++ b/cmd/v2/service/connService.go @@ -54,11 +54,11 @@ func (c *ConnServiceImpl) WsConnect(wsUrl string) error { } c.ws = ws - ticker := time.NewTicker(2 * time.Second) - defer ticker.Stop() go func() { + timer := time.NewTimer(2 * time.Second) for { - _ = <-ticker.C + timer.Reset(2 * time.Second) + <-timer.C if err := c.ws.WriteMessage(websocket.PingMessage, []byte{}); err != nil { c.obs.Notify(observer.EVENT_PING, err) break diff --git a/cmd/v2/ui/basewindow.go b/cmd/v2/ui/basewindow.go index 11c89b9a2..abec80752 100644 --- a/cmd/v2/ui/basewindow.go +++ b/cmd/v2/ui/basewindow.go @@ -6,5 +6,5 @@ type WindowDefaultOptions struct { windowAction common.WindowAction windowMode common.WindowMode windowAspect common.WindowAspect - windowVisible bool + // windowVisible bool } diff --git a/cmd/v2/ui/main_menu.go b/cmd/v2/ui/main_menu.go index 74f1d9f43..96316d982 100644 --- a/cmd/v2/ui/main_menu.go +++ b/cmd/v2/ui/main_menu.go @@ -12,20 +12,20 @@ type mainMenu struct { // aboutSelf *fyne.MenuItem } -func newMainMenu() *mainMenu { - var mm mainMenu +// func newMainMenu() *mainMenu { +// var mm mainMenu - // help - mm.sysLog = fyne.NewMenuItem("Show Log", func() { - newLogViewer().Win.Show() - }) - mm.helpMenu = fyne.NewMenu("Help", - mm.sysLog, - // mm.aboutSelf, - ) +// // help +// mm.sysLog = fyne.NewMenuItem("Show Log", func() { +// newLogViewer().Win.Show() +// }) +// mm.helpMenu = fyne.NewMenu("Help", +// mm.sysLog, +// // mm.aboutSelf, +// ) - mm.MainMenu = fyne.NewMainMenu( - mm.helpMenu, - ) - return &mm -} +// mm.MainMenu = fyne.NewMainMenu( +// mm.helpMenu, +// ) +// return &mm +// } diff --git a/cmd/v2/ui/mainwindow.go b/cmd/v2/ui/mainwindow.go index 6c7b0d2ed..e675662c4 100644 --- a/cmd/v2/ui/mainwindow.go +++ b/cmd/v2/ui/mainwindow.go @@ -37,7 +37,6 @@ type MainWindowImpl struct { UIImpl WindowDefaultOptions w fyne.Window - mm *mainMenu tb *toolBar //工具条 toys *toys // side sb *statusBar //状态栏 @@ -55,6 +54,7 @@ func NewMainWindow(ui *UIImpl) MainWindow { ui.obs.AddListener(observer.EVENT_PING, observer.Listener{ OnNotify: func(data interface{}, args ...interface{}) { + logrus.Debug("即将于服务器断开链接") conf := dialog.NewConfirm("链接中断", data.(error).Error(), func( b bool) { if b { @@ -121,9 +121,9 @@ func (ui *MainWindowImpl) quiteHandle() { } // CreateWindow .... -func (ui *MainWindowImpl) CreateWindow(title string, width, height float32, _ bool) { +func (ui *MainWindowImpl) CreateWindow(_ string, width, height float32, _ bool) { // init window - title = fmt.Sprintf(common.APP_WIN_TITLE, "登录", ui.app.Metadata().Version, ui.app.Metadata().Build, common.APP_NAME) + title := fmt.Sprintf(common.APP_WIN_TITLE, "登录", ui.app.Metadata().Version, ui.app.Metadata().Build, common.APP_NAME) w := ui.app.NewWindow(title) ui.AddWindow("main", w) ui.w = w @@ -134,10 +134,6 @@ func (ui *MainWindowImpl) CreateWindow(title string, width, height float32, _ bo w.Resize(fyne.NewSize(width, height)) } - // create main window menu - // ui.mm = newMainMenu() - // w.SetMainMenu(ui.mm.MainMenu) - w.SetMaster() w.CenterOnScreen() _ = ui.createChooseServerPopUp(w) diff --git a/cmd/v2/ui/protocol.go b/cmd/v2/ui/protocol.go index fb9ed8ab4..0b25f5f3d 100644 --- a/cmd/v2/ui/protocol.go +++ b/cmd/v2/ui/protocol.go @@ -13,6 +13,7 @@ import ( "go_dreamfactory/modules/linestory" "go_dreamfactory/modules/mainline" "go_dreamfactory/modules/rtask" + "go_dreamfactory/modules/sys" "go_dreamfactory/modules/task" "go_dreamfactory/modules/user" "go_dreamfactory/pb" @@ -34,6 +35,8 @@ var ( viewRegister = map[string]MyCaseView{ // gm ff(comm.ModuleGM, "cmd"): &formview.BingoView{}, + //sys + ff(comm.ModuleSys, "funclist"): &formview.SysFuncListView{}, //user ff(comm.ModuleUser, user.UserSubTypeModifyName): &formview.UserModifynameView{}, ff(comm.ModuleUser, user.UserSubTypeModifySign): &formview.UserSignView{}, @@ -95,6 +98,7 @@ var ( CaseIndex = map[string][]string{ "": { string(comm.ModuleGM), + string(comm.ModuleSys), string(comm.ModuleUser), string(comm.ModuleHero), string(comm.ModuleTask), @@ -109,6 +113,9 @@ var ( string(comm.ModuleLinestory), }, "gm": {ff(comm.ModuleGM, "cmd")}, + "sys": { + ff(comm.ModuleSys, "funclist"), + }, "user": { ff(comm.ModuleUser, user.UserSubTypeModifyName), ff(comm.ModuleUser, user.UserSubTypeModifySign), @@ -194,6 +201,18 @@ var ( Rsp: &pb.GMCmdResp{}, Enabled: true, }, + "sys": { + NavLabel: "系统", + MainType: string(comm.ModuleSys), + Enabled: true, + }, + ff(comm.ModuleSys, "funclist"): { + NavLabel: "功能列表", + Desc: "返回未开启的功能列表", + MainType: string(comm.ModuleSys), + SubType: sys.SysSubTypeFunc, + Enabled: true, + }, // user "user": { NavLabel: "用户", diff --git a/cmd/v2/ui/tool_pb.go b/cmd/v2/ui/tool_pb.go index 095aa4086..50319a0df 100644 --- a/cmd/v2/ui/tool_pb.go +++ b/cmd/v2/ui/tool_pb.go @@ -25,7 +25,6 @@ import ( type appPbGen struct { appAdapter - obs observer.Observer folderList *folderList folderChk *widget.List } diff --git a/cmd/v2/ui/tool_welcome.go b/cmd/v2/ui/tool_welcome.go index ddceeb71f..570a8dd1f 100644 --- a/cmd/v2/ui/tool_welcome.go +++ b/cmd/v2/ui/tool_welcome.go @@ -56,7 +56,7 @@ func (a *appWelcome) OpenDefault() bool { } func (a *appWelcome) ShortCut() fyne.Shortcut { - return &desktop.CustomShortcut{KeyName: fyne.Key1, Modifier: desktop.AltModifier} + return &desktop.CustomShortcut{KeyName: fyne.Key1, Modifier: fyne.KeyModifierAlt} } func (a *appWelcome) Icon() fyne.Resource { diff --git a/cmd/v2/ui/toy_userinfo.go b/cmd/v2/ui/toy_userinfo.go index 28017a828..be5d414e7 100644 --- a/cmd/v2/ui/toy_userinfo.go +++ b/cmd/v2/ui/toy_userinfo.go @@ -168,10 +168,10 @@ func (this *toyUserInfo) dataListener() { this.setProp(5, common.USERINFO_GOLD, rsp.Gold) } // listener exp - if data.Msg.MainType == string(comm.ModuleUser) && - data.Msg.SubType == "" { - //TODO change exp - } + // if data.Msg.MainType == string(comm.ModuleUser) && + // data.Msg.SubType == "" { + //TODO change exp + // } }, }) diff --git a/cmd/v2/ui/views/common.go b/cmd/v2/ui/views/common.go index 47327ac79..7baf0bb73 100644 --- a/cmd/v2/ui/views/common.go +++ b/cmd/v2/ui/views/common.go @@ -29,25 +29,3 @@ func getTaskTagSelect() *widget.Select { return tagSelect } -// 获取道具类型 -func getItemTypeSelect() *widget.Select { - var tagSelect *widget.Select - tagSelect = widget.NewSelect([]string{ - common.AAP_TESTCASE_FORM_TASK_DAY, - common.APP_TESTCASE_FORM_TASK_WEEK, - common.APP_TESTCASE_FORM_TASK_ACHIEVE}, func(s string) { - switch s { - case common.AAP_TESTCASE_FORM_TASK_DAY: - tagSelect.Selected = "1" - case common.APP_TESTCASE_FORM_TASK_WEEK: - tagSelect.Selected = "2" - case common.APP_TESTCASE_FORM_TASK_ACHIEVE: - tagSelect.Selected = "3" - default: - tagSelect.Selected = "0" - } - - }) - tagSelect.SetSelectedIndex(0) - return tagSelect -} diff --git a/cmd/v2/ui/views/sys_funclist.go b/cmd/v2/ui/views/sys_funclist.go new file mode 100644 index 000000000..a147fa628 --- /dev/null +++ b/cmd/v2/ui/views/sys_funclist.go @@ -0,0 +1,28 @@ +package formview + +import ( + "go_dreamfactory/cmd/v2/model" + "go_dreamfactory/cmd/v2/service" + "go_dreamfactory/pb" + + "fyne.io/fyne/v2" + "github.com/sirupsen/logrus" +) + +type SysFuncListView struct { + BaseformView +} + +func (this *SysFuncListView) CreateView(t *model.TestCase) fyne.CanvasObject { + this.form.OnSubmit = func() { + if err := service.GetPttService().SendToClient( + t.MainType, + t.SubType, + &pb.SysFuncListReq{}, + ); err != nil { + logrus.Error(err) + return + } + } + return this.form +} diff --git a/comm/const.go b/comm/const.go index 31836d65c..e9e36c8c8 100644 --- a/comm/const.go +++ b/comm/const.go @@ -32,6 +32,7 @@ const ( //模块名定义处 const ( + ModuleSys core.M_Modules = "sys" //系统 ModuleGate core.M_Modules = "gateway" //gate模块 网关服务模块 ModuleWeb core.M_Modules = "web" //后台模块 ModuleUser core.M_Modules = "user" //用户模块 diff --git a/lego/core/cbase/servicebase.go b/lego/core/cbase/servicebase.go index 47b27eae1..67ac0dbdc 100644 --- a/lego/core/cbase/servicebase.go +++ b/lego/core/cbase/servicebase.go @@ -136,7 +136,6 @@ func (this *ServiceBase) Run(mod ...core.IModule) { //添加进程结束信号 signal.Notify(c, os.Interrupt, //退出信号 ctrl+c退出 - os.Kill, //kill 信号 syscall.SIGHUP, //终端控制进程结束(终端连接断开) syscall.SIGINT, //用户发送INTR字符(Ctrl+C)触发 syscall.SIGTERM, //结束程序(可以被捕获、阻塞或忽略) diff --git a/modules/sys/api.go b/modules/sys/api.go new file mode 100644 index 000000000..97a296b61 --- /dev/null +++ b/modules/sys/api.go @@ -0,0 +1,28 @@ +package sys + +import ( + "go_dreamfactory/lego/core" + "go_dreamfactory/modules" +) + +const ( + SysSubTypeFunc = "funclist" +) + +type apiComp struct { + modules.MCompGate + service core.IService + moduleSys *ModuleSys +} + +func (this *apiComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { + this.MCompGate.Init(service, module, comp, options) + this.moduleSys = module.(*ModuleSys) + this.service = service + return +} + +func (this *apiComp) Start() (err error) { + err = this.MCompGate.Start() + return +} diff --git a/modules/sys/api_func.go b/modules/sys/api_func.go new file mode 100644 index 000000000..23b547283 --- /dev/null +++ b/modules/sys/api_func.go @@ -0,0 +1,37 @@ +package sys + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/pb" + + "google.golang.org/protobuf/proto" +) + +func (this *apiComp) FunclistCheck(session comm.IUserSession, req *pb.SysFuncListReq) (code pb.ErrorCode) { + return +} + +func (this *apiComp) Funclist(session comm.IUserSession, req *pb.SysFuncListReq) (code pb.ErrorCode, data proto.Message) { + rsp := &pb.SysFuncListResp{} + + iuser := this.moduleSys.ModuleUser + user := iuser.GetUser(session.GetUserId()) + if user == nil { + code = pb.ErrorCode_UserSessionNobeing + return + } + + var funcList []string + confList := this.moduleSys.configure.getOpencondList() + for _, v := range confList { + // 返回未开启的功能列表 + if user.Lv < v.Main { + funcList = append(funcList, v.Id) + } + } + rsp.FuncIds = funcList + if err := session.SendMsg(string(this.moduleSys.GetType()), SysSubTypeFunc, rsp); err != nil { + code = pb.ErrorCode_SystemError + } + return +} diff --git a/modules/sys/config.go b/modules/sys/config.go new file mode 100644 index 000000000..3547f4bdb --- /dev/null +++ b/modules/sys/config.go @@ -0,0 +1,47 @@ +package sys + +import ( + "fmt" + "go_dreamfactory/lego/core" + "go_dreamfactory/modules" + cfg "go_dreamfactory/sys/configure/structs" +) + +const ( + gameOpencond = "game_opencond.json" +) + +type configureComp struct { + modules.MCompConfigure +} + +func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { + err = this.MCompConfigure.Init(service, module, comp, options) + this.LoadConfigure(gameOpencond, cfg.NewGameOpencond) + return +} + +func (this *configureComp) getOpencondCfg() (data *cfg.GameOpencond, err error) { + var ( + v interface{} + ok bool + ) + if v, err = this.GetConfigure(gameOpencond); err != nil { + return + } else { + if data, ok = v.(*cfg.GameOpencond); !ok { + err = fmt.Errorf("%T no is *cfg.GameOpencond", v) + return + } + } + return +} + +func (this *configureComp) getOpencondList() (list []*cfg.GameOpencondData) { + if cfg, err := this.getOpencondCfg(); err != nil { + return nil + } else { + list = cfg.GetDataList() + } + return +} diff --git a/modules/sys/module.go b/modules/sys/module.go new file mode 100644 index 000000000..e1b5cc7b9 --- /dev/null +++ b/modules/sys/module.go @@ -0,0 +1,27 @@ +package sys + +import ( + "go_dreamfactory/comm" + "go_dreamfactory/lego/core" + "go_dreamfactory/modules" +) + +type ModuleSys struct { + modules.ModuleBase + api *apiComp + configure *configureComp +} + +func NewModule() core.IModule { + return &ModuleSys{} +} + +func (this *ModuleSys) OnInstallComp() { + this.ModuleBase.OnInstallComp() + this.api = this.RegisterComp(new(apiComp)).(*apiComp) + this.configure = this.RegisterComp(new(configureComp)).(*configureComp) +} + +func (this *ModuleSys) GetType() core.M_Modules { + return comm.ModuleSys +} diff --git a/pb/sys_msg.pb.go b/pb/sys_msg.pb.go new file mode 100644 index 000000000..b7fbe2267 --- /dev/null +++ b/pb/sys_msg.pb.go @@ -0,0 +1,194 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.0 +// protoc v3.20.0 +// source: sys/sys_msg.proto + +package pb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type SysFuncListReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *SysFuncListReq) Reset() { + *x = SysFuncListReq{} + if protoimpl.UnsafeEnabled { + mi := &file_sys_sys_msg_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SysFuncListReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SysFuncListReq) ProtoMessage() {} + +func (x *SysFuncListReq) ProtoReflect() protoreflect.Message { + mi := &file_sys_sys_msg_proto_msgTypes[0] + 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 SysFuncListReq.ProtoReflect.Descriptor instead. +func (*SysFuncListReq) Descriptor() ([]byte, []int) { + return file_sys_sys_msg_proto_rawDescGZIP(), []int{0} +} + +type SysFuncListResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FuncIds []string `protobuf:"bytes,1,rep,name=funcIds,proto3" json:"funcIds"` //功能ID +} + +func (x *SysFuncListResp) Reset() { + *x = SysFuncListResp{} + if protoimpl.UnsafeEnabled { + mi := &file_sys_sys_msg_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SysFuncListResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SysFuncListResp) ProtoMessage() {} + +func (x *SysFuncListResp) ProtoReflect() protoreflect.Message { + mi := &file_sys_sys_msg_proto_msgTypes[1] + 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 SysFuncListResp.ProtoReflect.Descriptor instead. +func (*SysFuncListResp) Descriptor() ([]byte, []int) { + return file_sys_sys_msg_proto_rawDescGZIP(), []int{1} +} + +func (x *SysFuncListResp) GetFuncIds() []string { + if x != nil { + return x.FuncIds + } + return nil +} + +var File_sys_sys_msg_proto protoreflect.FileDescriptor + +var file_sys_sys_msg_proto_rawDesc = []byte{ + 0x0a, 0x11, 0x73, 0x79, 0x73, 0x2f, 0x73, 0x79, 0x73, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x22, 0x10, 0x0a, 0x0e, 0x53, 0x79, 0x73, 0x46, 0x75, 0x6e, 0x63, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x2b, 0x0a, 0x0f, 0x53, 0x79, 0x73, 0x46, 0x75, 0x6e, 0x63, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x75, 0x6e, 0x63, + 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x66, 0x75, 0x6e, 0x63, 0x49, + 0x64, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, +} + +var ( + file_sys_sys_msg_proto_rawDescOnce sync.Once + file_sys_sys_msg_proto_rawDescData = file_sys_sys_msg_proto_rawDesc +) + +func file_sys_sys_msg_proto_rawDescGZIP() []byte { + file_sys_sys_msg_proto_rawDescOnce.Do(func() { + file_sys_sys_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_sys_sys_msg_proto_rawDescData) + }) + return file_sys_sys_msg_proto_rawDescData +} + +var file_sys_sys_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 2) +var file_sys_sys_msg_proto_goTypes = []interface{}{ + (*SysFuncListReq)(nil), // 0: SysFuncListReq + (*SysFuncListResp)(nil), // 1: SysFuncListResp +} +var file_sys_sys_msg_proto_depIdxs = []int32{ + 0, // [0:0] is the sub-list for method output_type + 0, // [0:0] is the sub-list for method input_type + 0, // [0:0] is the sub-list for extension type_name + 0, // [0:0] is the sub-list for extension extendee + 0, // [0:0] is the sub-list for field type_name +} + +func init() { file_sys_sys_msg_proto_init() } +func file_sys_sys_msg_proto_init() { + if File_sys_sys_msg_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_sys_sys_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SysFuncListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_sys_sys_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SysFuncListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_sys_sys_msg_proto_rawDesc, + NumEnums: 0, + NumMessages: 2, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_sys_sys_msg_proto_goTypes, + DependencyIndexes: file_sys_sys_msg_proto_depIdxs, + MessageInfos: file_sys_sys_msg_proto_msgTypes, + }.Build() + File_sys_sys_msg_proto = out.File + file_sys_sys_msg_proto_rawDesc = nil + file_sys_sys_msg_proto_goTypes = nil + file_sys_sys_msg_proto_depIdxs = nil +} diff --git a/services/worker/main.go b/services/worker/main.go index 87545fb60..64a632a1a 100644 --- a/services/worker/main.go +++ b/services/worker/main.go @@ -23,6 +23,7 @@ import ( "go_dreamfactory/modules/rtask" "go_dreamfactory/modules/shop" "go_dreamfactory/modules/smithy" + "go_dreamfactory/modules/sys" "go_dreamfactory/modules/task" "go_dreamfactory/modules/user" "go_dreamfactory/modules/viking" @@ -56,6 +57,7 @@ func main() { services.NewGateRouteComp(), //此服务需要接受用户的消息 需要装备网关组件 ) lego.Run(s, //运行模块 + sys.NewModule(), user.NewModule(), items.NewModule(), mail.NewModule(), From 6584cb33e9c861297e0f82ac165748b35f59b129 Mon Sep 17 00:00:00 2001 From: wh_zcy Date: Thu, 8 Sep 2022 15:48:45 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E5=BC=80=E6=94=BE=E5=A5=BD=E5=8F=8B?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- comm/imodule.go | 2 ++ modules/friend/module.go | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/comm/imodule.go b/comm/imodule.go index 742190dbb..d8cc37d53 100644 --- a/comm/imodule.go +++ b/comm/imodule.go @@ -126,6 +126,8 @@ type ( ResetFriend(uid string) // 获取好友数量 GetFriendCount(uid string) int32 + // 获取好友列表 + GetFriendList(uid string) []string } //聊天系统 diff --git a/modules/friend/module.go b/modules/friend/module.go index e4f199bb4..454435a69 100644 --- a/modules/friend/module.go +++ b/modules/friend/module.go @@ -67,3 +67,10 @@ func (this *Friend) GetFriendCount(uid string) (count int32) { } return } + +func (this *Friend) GetFriendList(uid string) (uids []string) { + if friend := this.modelFriend.GetFriend(uid); friend != nil { + uids = friend.FriendIds + } + return +} From 29a9f788e10c729b8c8d9c0f2dbd8febdf30ba74 Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Thu, 8 Sep 2022 17:14:12 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E7=8B=A9=E7=8C=8E=E5=8A=A0=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E5=A5=BD=E5=8F=8B=E6=8E=92=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- comm/const.go | 3 +- modules/hunting/api.go | 8 +++- modules/hunting/api_ranklist.go | 24 +++++++++--- modules/hunting/model_rank.go | 36 +++++++++++------ modules/timer/vikingrank.go | 7 ++-- modules/viking/api.go | 8 +++- modules/viking/api_challenge.go | 11 +----- modules/viking/api_ranklist.go | 24 +++++++++--- modules/viking/model_rank.go | 69 ++++++++++++++++++++++++++++----- pb/hunting_msg.pb.go | 34 ++++++++++++---- pb/mainline_db.pb.go | 2 +- 11 files changed, 170 insertions(+), 56 deletions(-) diff --git a/comm/const.go b/comm/const.go index e9e36c8c8..860f8e5a4 100644 --- a/comm/const.go +++ b/comm/const.go @@ -123,7 +123,8 @@ const ( // TableViking = "viking" // 维京远征排行榜 - TableVikingRank = "vikingrank" + TableVikingRank = "vikingrank" + TableVikingRankList = "vikingranklist" //月之秘境 TableMoonfantasy = "moonfantasy" diff --git a/modules/hunting/api.go b/modules/hunting/api.go index 838208ce0..3911b648e 100644 --- a/modules/hunting/api.go +++ b/modules/hunting/api.go @@ -1,6 +1,7 @@ package hunting import ( + "go_dreamfactory/comm" "go_dreamfactory/lego/core" "go_dreamfactory/modules" ) @@ -19,6 +20,7 @@ type apiComp struct { service core.IService configure *configureComp module *Hunting + friend comm.IFriend } //组件初始化接口 @@ -32,6 +34,10 @@ func (this *apiComp) Init(service core.IService, module core.IModule, comp core. func (this *apiComp) Start() (err error) { err = this.MCompGate.Start() - + var module core.IModule + if module, err = this.service.GetModule(comm.ModuleFriend); err != nil { + return + } + this.friend = module.(comm.IFriend) return } diff --git a/modules/hunting/api_ranklist.go b/modules/hunting/api_ranklist.go index 3c98c529c..ac331a5db 100644 --- a/modules/hunting/api_ranklist.go +++ b/modules/hunting/api_ranklist.go @@ -14,15 +14,29 @@ func (this *apiComp) RankListCheck(session comm.IUserSession, req *pb.HuntingRan } func (this *apiComp) RankList(session comm.IUserSession, req *pb.HuntingRankListReq) (code pb.ErrorCode, data proto.Message) { - + var ( + ranks []*pb.DBHuntingRank + err error + ) code = this.RankListCheck(session, req) if code != pb.ErrorCode_Success { return // 参数校验失败直接返回 } - szRank, err := this.module.modulerank.GetRankData() - if err != nil { - code = pb.ErrorCode_DBError + if !req.Friend { + ranks, err = this.module.modulerank.GetRankData(req.BoosType) + if err != nil { + code = pb.ErrorCode_DBError + } + } else { + uids := this.friend.GetFriendList(session.GetUserId()) + for _, id := range uids { + rankData := this.module.modulerank.getHuntingRankListByBossType(id, req.BoosType) + if rankData != nil { + ranks = append(ranks, rankData) + } + } } - session.SendMsg(string(this.module.GetType()), HuntingRankListResp, &pb.HuntingRankListResp{Ranks: szRank}) + + session.SendMsg(string(this.module.GetType()), HuntingRankListResp, &pb.HuntingRankListResp{Ranks: ranks}) return } diff --git a/modules/hunting/model_rank.go b/modules/hunting/model_rank.go index 7a3968639..53a607535 100644 --- a/modules/hunting/model_rank.go +++ b/modules/hunting/model_rank.go @@ -28,15 +28,6 @@ func (this *ModelRank) AddRank(uId string, data *pb.DBHuntingRank) (err error) { return nil } -// func (this *ModelRank) GetUserRandData(uid string) (result *pb.DBHuntingRank, err error) { -// result = &pb.DBHuntingRank{} -// if err = this.Get(uid, result); err != nil && redis.RedisNil != err { -// return -// } -// err = nil -// return result, err -// } - // 更新排行榜数据 func (this *ModelRank) ChangeUserRank(uid string, objId string, value map[string]interface{}) (err error) { if len(value) == 0 { @@ -46,10 +37,17 @@ func (this *ModelRank) ChangeUserRank(uid string, objId string, value map[string } // 获取排行榜数据 -func (this *ModelRank) GetRankData() (data []*pb.DBHuntingRank, err error) { +func (this *ModelRank) GetRankData(bossType int32) (data []*pb.DBHuntingRank, err error) { + tmpdata := make([]*pb.DBHuntingRank, 0) data = make([]*pb.DBHuntingRank, 0) - err = this.Redis.LRange(comm.TableHuntingRankList, 0, -1, &data) // 0 表示列表的第一个元素 -1 表示列表的最后一个元素 - + err = this.Redis.LRange(comm.TableVikingRank, 0, -1, &tmpdata) + if err == nil { + for _, v := range tmpdata { + if v.Bosstype == bossType { + data = append(data, v) + } + } + } return } @@ -61,6 +59,7 @@ func (this *ModelRank) getHuntingRankList(uid string) []*pb.DBHuntingRank { } return ranks } + func (this *ModelRank) updatehuntingRankList(session comm.IUserSession, difficulty int32, boosType int32) { // 查询是不是更新数据 ranks := this.getHuntingRankList(session.GetUserId()) @@ -91,3 +90,16 @@ func (this *ModelRank) updatehuntingRankList(session comm.IUserSession, difficul } return } +func (this *ModelRank) getHuntingRankListByBossType(uid string, bossType int32) *pb.DBHuntingRank { + ranks := make([]*pb.DBHuntingRank, 0) + err := this.GetList(uid, &ranks) + if err != nil { + return nil + } + for _, v := range ranks { + if v.Bosstype == bossType { + return v + } + } + return nil +} diff --git a/modules/timer/vikingrank.go b/modules/timer/vikingrank.go index 0e7f6f825..518d2682a 100644 --- a/modules/timer/vikingrank.go +++ b/modules/timer/vikingrank.go @@ -17,12 +17,13 @@ import ( type VikingRank struct { modules.MCompModel service core.IService + dbName string } //组件初始化接口 func (this *VikingRank) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { - - this.TableName = comm.TableVikingRank + this.dbName = comm.TableVikingRank + this.TableName = comm.TableVikingRankList this.MCompModel.Init(service, module, comp, options) this.service = service return @@ -38,7 +39,7 @@ func (this *VikingRank) Start() (err error) { func (this *VikingRank) Timer() { data := make([]interface{}, 0) // options.Find().SetLimit(comm.MaxRankList) for i := 1; i <= 3; i++ { // boss 类型 1 2 3 后面封装 // 时间参数战斗调完后再加进来 - if _data, err := this.DB.Find(core.SqlTable(this.TableName), bson.M{"bosstype": i}, options.Find().SetSort(bson.M{"difficulty": -1}).SetLimit(comm.MaxRankList)); err == nil { + if _data, err := this.DB.Find(core.SqlTable(this.dbName), bson.M{"bosstype": i}, options.Find().SetSort(bson.M{"difficulty": -1}).SetLimit(comm.MaxRankList)); err == nil { for _data.Next(context.TODO()) { temp := &pb.DBVikingRank{} if err = _data.Decode(temp); err == nil { diff --git a/modules/viking/api.go b/modules/viking/api.go index 6588a655e..cbb00f37c 100644 --- a/modules/viking/api.go +++ b/modules/viking/api.go @@ -1,6 +1,7 @@ package viking import ( + "go_dreamfactory/comm" "go_dreamfactory/lego/core" "go_dreamfactory/modules" ) @@ -19,6 +20,7 @@ type apiComp struct { service core.IService configure *configureComp module *Viking + friend comm.IFriend } //组件初始化接口 @@ -32,6 +34,10 @@ func (this *apiComp) Init(service core.IService, module core.IModule, comp core. func (this *apiComp) Start() (err error) { err = this.MCompGate.Start() - + var module core.IModule + if module, err = this.service.GetModule(comm.ModuleFriend); err != nil { + return + } + this.friend = module.(comm.IFriend) return } diff --git a/modules/viking/api_challenge.go b/modules/viking/api_challenge.go index 108912f57..997bff660 100644 --- a/modules/viking/api_challenge.go +++ b/modules/viking/api_challenge.go @@ -66,7 +66,7 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.VikingChalleng mapData["Boss"] = viking.Boss // viking.ChallengeTime[req.BossType<<16+req.Difficulty] = 0 // todo 耗时 // mapData["challengeTime"] = viking.ChallengeTime - + this.module.modulerank.updateVikingRankList(session, req.Difficulty, req.BossType, 100) } // 耗时校验 当前战斗胜利时间消耗小于之前刷新数据 @@ -79,15 +79,6 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.VikingChalleng return } - mapRankData := make(map[string]interface{}, 0) - mapRankData["difficulty"] = req.Difficulty - mapRankData["bosstype"] = req.BossType - mapRankData["uid"] = session.GetUserId() - userinfo := this.module.ModuleUser.GetUser(session.GetUserId()) - mapRankData["nickname"] = userinfo.Name - mapRankData["lv"] = userinfo.Lv - mapRankData["costTime"] = 120 - this.module.modulerank.ChangeUserRank(session.GetUserId(), mapRankData) session.SendMsg(string(this.module.GetType()), VikingChallengeResp, &pb.VikingChallengeResp{Data: viking}) return } diff --git a/modules/viking/api_ranklist.go b/modules/viking/api_ranklist.go index 732796610..7a323dd96 100644 --- a/modules/viking/api_ranklist.go +++ b/modules/viking/api_ranklist.go @@ -16,15 +16,29 @@ func (this *apiComp) RankListCheck(session comm.IUserSession, req *pb.VikingRank } func (this *apiComp) RankList(session comm.IUserSession, req *pb.VikingRankListReq) (code pb.ErrorCode, data proto.Message) { - + var ( + ranks []*pb.DBVikingRank + err error + ) code = this.RankListCheck(session, req) if code != pb.ErrorCode_Success { return // 参数校验失败直接返回 } - szRank, err := this.module.modulerank.GetRankData(req.BoosType) - if err != nil { - code = pb.ErrorCode_DBError + if !req.Friend { + ranks, err = this.module.modulerank.GetRankData(req.BoosType) + if err != nil { + code = pb.ErrorCode_DBError + } + } else { + uids := this.friend.GetFriendList(session.GetUserId()) + for _, id := range uids { + rankData := this.module.modulerank.getVikingRankListByBossType(id, req.BoosType) + if rankData != nil { + ranks = append(ranks, rankData) + } + } } - session.SendMsg(string(this.module.GetType()), VikingRankListResp, &pb.VikingRankListResp{Ranks: szRank}) + + session.SendMsg(string(this.module.GetType()), VikingRankListResp, &pb.VikingRankListResp{Ranks: ranks}) return } diff --git a/modules/viking/model_rank.go b/modules/viking/model_rank.go index 285cda738..1058f0164 100644 --- a/modules/viking/model_rank.go +++ b/modules/viking/model_rank.go @@ -6,6 +6,8 @@ import ( "go_dreamfactory/lego/sys/redis" "go_dreamfactory/modules" "go_dreamfactory/pb" + + "go.mongodb.org/mongo-driver/bson/primitive" ) type ModelRank struct { @@ -36,31 +38,78 @@ func (this *ModelRank) GetUserRandData(uid string) (result *pb.DBVikingRank, err } // 更新排行榜数据 -func (this *ModelRank) ChangeUserRank(uid string, value map[string]interface{}) (err error) { +func (this *ModelRank) ChangeUserRank(uid string, objId string, value map[string]interface{}) (err error) { if len(value) == 0 { return nil } - return this.Change(uid, value) + return this.ChangeList(uid, objId, value) } func (this *ModelRank) GetRankData(bossType int32) (data []*pb.DBVikingRank, err error) { tmpdata := make([]*pb.DBVikingRank, 0) data = make([]*pb.DBVikingRank, 0) err = this.Redis.LRange(comm.TableVikingRank, 0, -1, &tmpdata) - for _, v := range tmpdata { - if v.Bosstype == bossType { - data = append(data, v) + if err == nil { + for _, v := range tmpdata { + if v.Bosstype == bossType { + data = append(data, v) + } } } + return } // 获取排行榜数据 -func (this *ModelRank) GetUserRankData(bossType int32, uid string) (data *pb.DBVikingRank) { - data = &pb.DBVikingRank{} - if err := this.Get(uid, data); err != nil { - this.moduleViking.Debugf("get dbVikingRank data err:%v", err) - return +func (this *ModelRank) getVikingRankList(uid string) []*pb.DBVikingRank { + ranks := make([]*pb.DBVikingRank, 0) + err := this.GetList(uid, &ranks) + if err != nil { + return nil + } + return ranks +} + +func (this *ModelRank) updateVikingRankList(session comm.IUserSession, difficulty int32, boosType int32, costTime int32) { + // 查询是不是更新数据 + ranks := this.getVikingRankList(session.GetUserId()) + bfind := false + for _, v := range ranks { + if v.Bosstype == boosType { + mapRankData := make(map[string]interface{}, 0) + mapRankData["difficulty"] = difficulty + mapRankData["bosstype"] = boosType + this.ChangeUserRank(session.GetUserId(), v.Id, mapRankData) + bfind = true + break + } + } + if !bfind { + userinfo := this.moduleViking.ModuleUser.GetUser(session.GetUserId()) + new := &pb.DBVikingRank{ + Id: primitive.NewObjectID().Hex(), + Uid: session.GetUserId(), + Difficulty: difficulty, + Bosstype: boosType, + Nickname: userinfo.Name, + Icon: "", + Lv: userinfo.Lv, + CostTime: costTime, // + } + this.AddList(session.GetUserId(), new.Id, new) } return } +func (this *ModelRank) getVikingRankListByBossType(uid string, bossType int32) *pb.DBVikingRank { + ranks := make([]*pb.DBVikingRank, 0) + err := this.GetList(uid, &ranks) + if err != nil { + return nil + } + for _, v := range ranks { + if v.Bosstype == bossType { + return v + } + } + return nil +} diff --git a/pb/hunting_msg.pb.go b/pb/hunting_msg.pb.go index f254fd629..55b592ca0 100644 --- a/pb/hunting_msg.pb.go +++ b/pb/hunting_msg.pb.go @@ -308,6 +308,9 @@ type HuntingRankListReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + BoosType int32 `protobuf:"varint,1,opt,name=boosType,proto3" json:"boosType"` // boss 类型 + Friend bool `protobuf:"varint,2,opt,name=friend,proto3" json:"friend"` // 是否是好友榜 } func (x *HuntingRankListReq) Reset() { @@ -342,6 +345,20 @@ func (*HuntingRankListReq) Descriptor() ([]byte, []int) { return file_hunting_hunting_msg_proto_rawDescGZIP(), []int{6} } +func (x *HuntingRankListReq) GetBoosType() int32 { + if x != nil { + return x.BoosType + } + return 0 +} + +func (x *HuntingRankListReq) GetFriend() bool { + if x != nil { + return x.Friend + } + return false +} + type HuntingRankListResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -414,13 +431,16 @@ var file_hunting_hunting_msg_proto_rawDesc = []byte{ 0x6e, 0x74, 0x22, 0x30, 0x0a, 0x0e, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x42, 0x75, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x22, 0x14, 0x0a, 0x12, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, - 0x61, 0x6e, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x3b, 0x0a, 0x13, 0x48, 0x75, - 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, - 0x52, 0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, - 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x64, 0x61, 0x74, 0x61, 0x22, 0x48, 0x0a, 0x12, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, + 0x61, 0x6e, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x6f, + 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x6f, + 0x6f, 0x73, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x22, 0x3b, + 0x0a, 0x13, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x6e, 0x6b, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x44, 0x42, 0x48, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, + 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, + 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/pb/mainline_db.pb.go b/pb/mainline_db.pb.go index 7f6aae1c0..99b364285 100644 --- a/pb/mainline_db.pb.go +++ b/pb/mainline_db.pb.go @@ -30,7 +30,7 @@ type DBMainline struct { ChapterId int32 `protobuf:"varint,3,opt,name=chapterId,proto3" json:"chapterId" bson:"chapterId"` //章节ID MainlineId int32 `protobuf:"varint,4,opt,name=mainlineId,proto3" json:"mainlineId" bson:"mainlineId"` //主线关卡ID AwaredID int32 `protobuf:"varint,5,opt,name=awaredID,proto3" json:"awaredID" bson:"awaredID"` //是否领奖(设置int是考虑后续扩展有多个宝箱情况) - BranchID []int32 `protobuf:"varint,6,rep,packed,name=branchID,proto3" json:"branchID" bson:"branchID"` // 记录分支通关的情况 + BranchID []int32 `protobuf:"varint,6,rep,packed,name=branchID,proto3" json:"branchID" bson:"branchID"` // Intensity int32 `protobuf:"varint,7,opt,name=intensity,proto3" json:"intensity"` // 难度 }