From dd41812f61a1b5e7887f019a9d2a49f2bbf3338c Mon Sep 17 00:00:00 2001 From: liwei1dao Date: Tue, 11 Apr 2023 10:19:48 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E4=B8=8A=E4=BC=A0pvp=E4=B8=BB=E5=8A=A8?= =?UTF-8?q?=E5=8F=96=E6=B6=88=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/pvp/api_activecancel.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/pvp/api_activecancel.go b/modules/pvp/api_activecancel.go index 6eb5060fa..92f9e7d0b 100644 --- a/modules/pvp/api_activecancel.go +++ b/modules/pvp/api_activecancel.go @@ -9,18 +9,18 @@ import ( ) //参数校验 -func (this *apiComp) CancelCheck(session comm.IUserSession, req *pb.PvpActiveCancelReq) (code pb.ErrorCode) { +func (this *apiComp) ActiveCancelCheck(session comm.IUserSession, req *pb.PvpActiveCancelReq) (code pb.ErrorCode) { return } ///设置战斗阵型 -func (this *apiComp) Cancel(session comm.IUserSession, req *pb.PvpActiveCancelReq) (code pb.ErrorCode, data proto.Message) { +func (this *apiComp) ActiveCancel(session comm.IUserSession, req *pb.PvpActiveCancelReq) (code pb.ErrorCode, data proto.Message) { var ( battle *BattleItem ok bool winside int32 ) - if code = this.CancelCheck(session, req); code != pb.ErrorCode_Success { + if code = this.ActiveCancelCheck(session, req); code != pb.ErrorCode_Success { return } this.module.lock.RLock() @@ -47,6 +47,6 @@ func (this *apiComp) Cancel(session comm.IUserSession, req *pb.PvpActiveCancelRe return } - session.SendMsg(string(this.module.GetType()), "cancel", &pb.PvpActiveCancelResp{Issucc: true}) + session.SendMsg(string(this.module.GetType()), "activecancel", &pb.PvpActiveCancelResp{Issucc: true}) return } From 5a44eaffdb8dadf7ed5728899381ca383e1c9833 Mon Sep 17 00:00:00 2001 From: liwei1dao Date: Tue, 11 Apr 2023 10:50:19 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E6=88=98=E6=96=97=E4=B8=AD=E4=B8=BB?= =?UTF-8?q?=E5=8A=A8=E9=80=80=E5=87=BA=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/pvp/api_activecancel.go | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/modules/pvp/api_activecancel.go b/modules/pvp/api_activecancel.go index 92f9e7d0b..d356cf18f 100644 --- a/modules/pvp/api_activecancel.go +++ b/modules/pvp/api_activecancel.go @@ -18,6 +18,7 @@ func (this *apiComp) ActiveCancel(session comm.IUserSession, req *pb.PvpActiveCa var ( battle *BattleItem ok bool + faiside int32 winside int32 ) if code = this.ActiveCancelCheck(session, req); code != pb.ErrorCode_Success { @@ -28,19 +29,28 @@ func (this *apiComp) ActiveCancel(session comm.IUserSession, req *pb.PvpActiveCa this.module.lock.RUnlock() if ok { if battle.Red.Uid == session.GetUserId() { + faiside = 1 winside = 2 } else { + faiside = 2 winside = 1 } - this.module.PvpFinishPush(&pb.BattleFinishPush{ - Battleid: req.Battleid, - WinSide: winside, - }) - if err := this.module.SendMsgToSession(string(comm.ModulePvp), "cancel", &pb.PvpCancelPush{ - ServicePath: fmt.Sprintf("%s/%s", this.service.GetType(), this.service.GetId()), - Battleid: battle.Id, - }, battle.RedSession, battle.BlueSession); err != nil { - this.module.Errorln(err) + if battle.State == pb.PvpState_battle { + this.module.battle.ConcedeBattle(&pb.BattleConcedeReq{ + Battleid: req.Battleid, + Side: faiside, + }) + } else { + this.module.PvpFinishPush(&pb.BattleFinishPush{ + Battleid: req.Battleid, + WinSide: winside, + }) + if err := this.module.SendMsgToSession(string(comm.ModulePvp), "cancel", &pb.PvpCancelPush{ + ServicePath: fmt.Sprintf("%s/%s", this.service.GetType(), this.service.GetId()), + Battleid: battle.Id, + }, battle.RedSession, battle.BlueSession); err != nil { + this.module.Errorln(err) + } } } else { code = pb.ErrorCode_BattleInCmdFailed From feb0564e27a54d1764d342ad6cdb51582d149121 Mon Sep 17 00:00:00 2001 From: liwei1dao Date: Tue, 11 Apr 2023 10:56:25 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=AD=A6=E9=A6=86?= =?UTF-8?q?=E6=8F=90=E5=87=BA=E5=A5=BD=E5=8F=8B=E6=8E=A8=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/practice/api_expulsion.go | 2 +- pb/practice_msg.pb.go | 228 ++++++++++++++++-------------- 2 files changed, 120 insertions(+), 110 deletions(-) diff --git a/modules/practice/api_expulsion.go b/modules/practice/api_expulsion.go index e2c3297eb..bde5f7b6a 100644 --- a/modules/practice/api_expulsion.go +++ b/modules/practice/api_expulsion.go @@ -222,7 +222,7 @@ func (this *apiComp) Expulsion(session comm.IUserSession, req *pb.PracticeExpuls "knapsack": froom.Knapsack, }) if ok { //在线直接推送消息 - _session.SendMsg(string(this.module.GetType()), "beexpulsion", &pb.PracticeBeExpulsionPush{Pillar: pillar, Knapsack: froom.Knapsack}) + _session.SendMsg(string(this.module.GetType()), "beexpulsion", &pb.PracticeBeExpulsionPush{Fuid: session.GetUserId(), Pillar: pillar, Knapsack: froom.Knapsack}) if err = _session.Push(); err != nil { this.module.Errorln(err) diff --git a/pb/practice_msg.pb.go b/pb/practice_msg.pb.go index cef614102..08a80b472 100644 --- a/pb/practice_msg.pb.go +++ b/pb/practice_msg.pb.go @@ -795,8 +795,9 @@ type PracticeBeExpulsionPush struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Pillar *DBPracticePillar `protobuf:"bytes,1,opt,name=pillar,proto3" json:"pillar"` - Knapsack map[string]int32 `protobuf:"bytes,2,rep,name=knapsack,proto3" json:"knapsack" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //资源 + Fuid string `protobuf:"bytes,1,opt,name=fuid,proto3" json:"fuid"` + Pillar *DBPracticePillar `protobuf:"bytes,2,opt,name=pillar,proto3" json:"pillar"` + Knapsack map[string]int32 `protobuf:"bytes,3,rep,name=knapsack,proto3" json:"knapsack" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //资源 } func (x *PracticeBeExpulsionPush) Reset() { @@ -831,6 +832,13 @@ func (*PracticeBeExpulsionPush) Descriptor() ([]byte, []int) { return file_practice_practice_msg_proto_rawDescGZIP(), []int{15} } +func (x *PracticeBeExpulsionPush) GetFuid() string { + if x != nil { + return x.Fuid + } + return "" +} + func (x *PracticeBeExpulsionPush) GetPillar() *DBPracticePillar { if x != nil { return x.Pillar @@ -2212,118 +2220,120 @@ var file_practice_practice_msg_proto_rawDesc = []byte{ 0x3b, 0x0a, 0x0d, 0x4b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 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, 0xc5, 0x01, 0x0a, + 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd9, 0x01, 0x0a, 0x17, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x42, 0x65, 0x45, 0x78, 0x70, 0x75, 0x6c, - 0x73, 0x69, 0x6f, 0x6e, 0x50, 0x75, 0x73, 0x68, 0x12, 0x29, 0x0a, 0x06, 0x70, 0x69, 0x6c, 0x6c, - 0x61, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x44, 0x42, 0x50, 0x72, 0x61, - 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x52, 0x06, 0x70, 0x69, 0x6c, - 0x6c, 0x61, 0x72, 0x12, 0x42, 0x0a, 0x08, 0x6b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, - 0x42, 0x65, 0x45, 0x78, 0x70, 0x75, 0x6c, 0x73, 0x69, 0x6f, 0x6e, 0x50, 0x75, 0x73, 0x68, 0x2e, - 0x4b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6b, - 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 0x1a, 0x3b, 0x0a, 0x0d, 0x4b, 0x6e, 0x61, 0x70, 0x73, - 0x61, 0x63, 0x6b, 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, 0x42, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, - 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, - 0x12, 0x16, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x22, 0xbd, 0x01, 0x0a, 0x13, 0x50, 0x72, 0x61, - 0x63, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x29, 0x0a, 0x06, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x11, 0x2e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, - 0x6c, 0x61, 0x72, 0x52, 0x06, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x12, 0x3e, 0x0a, 0x08, 0x6b, - 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, - 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x2e, 0x4b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x50, 0x75, 0x73, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x75, 0x69, 0x64, 0x12, 0x29, 0x0a, 0x06, + 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x44, + 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x52, + 0x06, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x12, 0x42, 0x0a, 0x08, 0x6b, 0x6e, 0x61, 0x70, 0x73, + 0x61, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x50, 0x72, 0x61, 0x63, + 0x74, 0x69, 0x63, 0x65, 0x42, 0x65, 0x45, 0x78, 0x70, 0x75, 0x6c, 0x73, 0x69, 0x6f, 0x6e, 0x50, + 0x75, 0x73, 0x68, 0x2e, 0x4b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 0x1a, 0x3b, 0x0a, 0x0d, 0x4b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 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, 0x3f, 0x0a, 0x13, 0x50, 0x72, 0x61, 0x63, - 0x74, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x71, 0x12, - 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, 0x40, 0x0a, 0x14, 0x50, 0x72, 0x61, - 0x63, 0x74, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, 0x24, 0x0a, 0x12, 0x50, - 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4a, 0x58, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x75, 0x73, - 0x68, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x02, 0x69, - 0x64, 0x22, 0x14, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x47, 0x79, 0x6d, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x22, 0x55, 0x0a, 0x13, 0x50, 0x72, 0x61, 0x63, 0x74, - 0x69, 0x63, 0x65, 0x47, 0x79, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, - 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, - 0x0a, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x6e, 0x75, 0x6d, 0x22, 0x17, - 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x47, 0x79, 0x6d, 0x52, 0x65, 0x66, - 0x72, 0x65, 0x73, 0x68, 0x52, 0x65, 0x71, 0x22, 0x58, 0x0a, 0x16, 0x50, 0x72, 0x61, 0x63, 0x74, - 0x69, 0x63, 0x65, 0x47, 0x79, 0x6d, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x6e, 0x75, 0x6d, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x6e, 0x75, - 0x6d, 0x22, 0x31, 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x47, 0x65, 0x74, - 0x47, 0x79, 0x6d, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, - 0x73, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x6f, 0x73, - 0x74, 0x75, 0x72, 0x65, 0x22, 0x30, 0x0a, 0x16, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, - 0x47, 0x65, 0x74, 0x47, 0x79, 0x6d, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, - 0x0a, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, - 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x22, 0x2f, 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, - 0x63, 0x65, 0x47, 0x79, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x12, - 0x16, 0x0a, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x22, 0x30, 0x0a, 0x16, 0x50, 0x72, 0x61, 0x63, 0x74, - 0x69, 0x63, 0x65, 0x47, 0x79, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x22, 0x25, 0x0a, 0x11, 0x50, 0x72, 0x61, - 0x63, 0x74, 0x69, 0x63, 0x65, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x10, - 0x0a, 0x03, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x66, 0x69, 0x64, - 0x22, 0x26, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x51, 0x69, 0x65, 0x63, - 0x75, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x66, 0x69, 0x64, 0x22, 0x25, 0x0a, 0x11, 0x50, 0x72, 0x61, 0x63, - 0x74, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, - 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x22, - 0x2c, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x65, 0x70, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x22, 0x25, 0x0a, - 0x11, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x66, 0x75, 0x73, 0x65, 0x52, - 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x75, 0x69, 0x64, 0x22, 0x2c, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, - 0x52, 0x65, 0x66, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, - 0x53, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x53, 0x75, - 0x63, 0x63, 0x22, 0x60, 0x0a, 0x18, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x51, 0x69, - 0x65, 0x63, 0x75, 0x6f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x50, 0x75, 0x73, 0x68, 0x12, 0x10, - 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x54, 0x79, - 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, - 0x54, 0x79, 0x70, 0x65, 0x22, 0x47, 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, - 0x4e, 0x50, 0x43, 0x42, 0x61, 0x74, 0x74, 0x6b, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x12, 0x2e, 0x0a, - 0x09, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x09, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x59, 0x0a, - 0x16, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4e, 0x50, 0x43, 0x42, 0x61, 0x74, 0x74, - 0x6b, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0a, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, - 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x44, 0x0a, 0x1b, 0x50, 0x72, 0x61, 0x63, - 0x74, 0x69, 0x63, 0x65, 0x4e, 0x50, 0x43, 0x42, 0x61, 0x74, 0x74, 0x6b, 0x6c, 0x65, 0x46, 0x69, - 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, - 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x36, - 0x0a, 0x1c, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4e, 0x50, 0x43, 0x42, 0x61, 0x74, - 0x74, 0x6b, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, - 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, - 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x22, 0x16, 0x0a, 0x14, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, - 0x63, 0x65, 0x4e, 0x50, 0x43, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x22, 0x2f, - 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4e, 0x50, 0x43, 0x44, 0x69, 0x61, - 0x6c, 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, - 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x42, - 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x42, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, + 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, + 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, + 0x6e, 0x64, 0x65, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x22, 0xbd, 0x01, 0x0a, + 0x13, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x29, 0x0a, 0x06, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x44, 0x42, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, + 0x65, 0x50, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x52, 0x06, 0x70, 0x69, 0x6c, 0x6c, 0x61, 0x72, 0x12, + 0x3e, 0x0a, 0x08, 0x6b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x22, 0x2e, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x63, 0x65, + 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 0x1a, + 0x3b, 0x0a, 0x0d, 0x4b, 0x6e, 0x61, 0x70, 0x73, 0x61, 0x63, 0x6b, 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, 0x3f, 0x0a, 0x13, + 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x64, + 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x72, + 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, 0x40, 0x0a, + 0x14, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x72, 0x6f, 0x6c, 0x6c, 0x65, + 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x68, + 0x65, 0x72, 0x6f, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22, + 0x24, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4a, 0x58, 0x49, 0x74, 0x65, + 0x6d, 0x50, 0x75, 0x73, 0x68, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x14, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, + 0x65, 0x47, 0x79, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x22, 0x55, 0x0a, 0x13, 0x50, + 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x47, 0x79, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x6e, 0x75, 0x6d, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x6e, + 0x75, 0x6d, 0x22, 0x17, 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x47, 0x79, + 0x6d, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x52, 0x65, 0x71, 0x22, 0x58, 0x0a, 0x16, 0x50, + 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x47, 0x79, 0x6d, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x6e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x72, 0x65, + 0x73, 0x68, 0x6e, 0x75, 0x6d, 0x22, 0x31, 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, + 0x65, 0x47, 0x65, 0x74, 0x47, 0x79, 0x6d, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, 0x71, 0x12, 0x18, + 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x07, 0x70, 0x6f, 0x73, 0x74, 0x75, 0x72, 0x65, 0x22, 0x30, 0x0a, 0x16, 0x50, 0x72, 0x61, 0x63, + 0x74, 0x69, 0x63, 0x65, 0x47, 0x65, 0x74, 0x47, 0x79, 0x6d, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x22, 0x2f, 0x0a, 0x15, 0x50, 0x72, + 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x47, 0x79, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x22, 0x30, 0x0a, 0x16, 0x50, + 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x47, 0x79, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x62, 0x75, 0x66, 0x66, 0x69, 0x64, 0x22, 0x25, 0x0a, + 0x11, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x52, + 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x66, 0x69, 0x64, 0x22, 0x26, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, + 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x66, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x66, 0x69, 0x64, 0x22, 0x25, 0x0a, 0x11, + 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x75, 0x69, 0x64, 0x22, 0x2c, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x41, + 0x63, 0x63, 0x65, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x53, + 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x53, 0x75, 0x63, + 0x63, 0x22, 0x25, 0x0a, 0x11, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x66, + 0x75, 0x73, 0x65, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x22, 0x2c, 0x0a, 0x12, 0x50, 0x72, 0x61, 0x63, + 0x74, 0x69, 0x63, 0x65, 0x52, 0x65, 0x66, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, + 0x0a, 0x06, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, + 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x22, 0x60, 0x0a, 0x18, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, + 0x63, 0x65, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x50, 0x75, + 0x73, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x6f, 0x74, 0x69, + 0x66, 0x79, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6e, 0x6f, + 0x74, 0x69, 0x66, 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, 0x47, 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, + 0x74, 0x69, 0x63, 0x65, 0x4e, 0x50, 0x43, 0x42, 0x61, 0x74, 0x74, 0x6b, 0x6c, 0x65, 0x52, 0x65, + 0x71, 0x12, 0x2e, 0x0a, 0x09, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f, 0x72, + 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x59, 0x0a, 0x16, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4e, 0x50, 0x43, + 0x42, 0x61, 0x74, 0x74, 0x6b, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04, 0x63, + 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0a, 0x2e, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x04, 0x69, + 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, + 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x44, 0x0a, 0x1b, + 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4e, 0x50, 0x43, 0x42, 0x61, 0x74, 0x74, 0x6b, + 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x25, 0x0a, 0x06, 0x72, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, + 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x06, 0x72, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x22, 0x36, 0x0a, 0x1c, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4e, 0x50, + 0x43, 0x42, 0x61, 0x74, 0x74, 0x6b, 0x6c, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x22, 0x16, 0x0a, 0x14, 0x50, 0x72, + 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4e, 0x50, 0x43, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x52, + 0x65, 0x71, 0x22, 0x2f, 0x0a, 0x15, 0x50, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x4e, 0x50, + 0x43, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, + 0x73, 0x73, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x73, + 0x75, 0x63, 0x63, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, } var ( From d706a41d13f9a70ba19c4f9f2d0824c02d8a2c3c Mon Sep 17 00:00:00 2001 From: meixiongfeng <766881921@qq.com> Date: Tue, 11 Apr 2023 10:58:00 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E6=8E=89=E8=90=BD=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E8=A7=A3=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bin/json/game_bubblegroup.json | 12 + bin/json/game_lottery.json | 722 ++++++++++++++++++ bin/json/game_skillafteratk.json | 77 +- bin/json/game_skillatk.json | 34 +- bin/json/game_skillpassive.json | 8 +- bin/json/game_smithycustomer.json | 2 +- bin/json/game_smithyproficiency.json | 126 +-- bin/json/game_worldtask.json | 64 +- sys/configure/structs/Game.Lottery.go | 42 + sys/configure/structs/Game.LotteryData.go | 69 ++ .../structs/Game.MonsterFormatData.go | 2 + sys/configure/structs/Tables.go | 7 + 12 files changed, 981 insertions(+), 184 deletions(-) create mode 100644 bin/json/game_lottery.json create mode 100644 sys/configure/structs/Game.Lottery.go create mode 100644 sys/configure/structs/Game.LotteryData.go diff --git a/bin/json/game_bubblegroup.json b/bin/json/game_bubblegroup.json index 42525c3c4..c8e0084ef 100644 --- a/bin/json/game_bubblegroup.json +++ b/bin/json/game_bubblegroup.json @@ -274,5 +274,17 @@ "key": "bubblegroup_23", "text": "还以为一届好汉,原来只是鼠辈而已" } + }, + { + "KeyId": 24, + "GroupID": 15003, + "Type": 1, + "TaskIDMin": 0, + "TaskIDMax": 0, + "weight": 10, + "Text_Bubble": { + "key": "bubblegroup_24", + "text": "踢馆" + } } ] \ No newline at end of file diff --git a/bin/json/game_lottery.json b/bin/json/game_lottery.json new file mode 100644 index 000000000..d5bad4b39 --- /dev/null +++ b/bin/json/game_lottery.json @@ -0,0 +1,722 @@ +[ + { + "id": 1, + "lotteryid": 50010001, + "description": "体力药剂", + "type": 1, + "groupwt": 1000, + "groupid": 1001, + "subtype": 1, + "groupnum": 1, + "itemid": { + "a": "item", + "t": "132000", + "n": 1 + }, + "itemdes": "体力", + "itemwt": 10000, + "min": 50, + "max": 50, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 240, + "notice": 0 + }, + { + "id": 2, + "lotteryid": 50010002, + "description": "精力药剂", + "type": 1, + "groupwt": 1000, + "groupid": 1001, + "subtype": 1, + "groupnum": 1, + "itemid": { + "a": "item", + "t": "132001", + "n": 1 + }, + "itemdes": "精力", + "itemwt": 10000, + "min": 10, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 240, + "notice": 0 + }, + { + "id": 3, + "lotteryid": 40001001, + "description": "随机蓝色英雄", + "type": 1, + "groupwt": 1000, + "groupid": 1001, + "subtype": 1, + "groupnum": 1, + "itemid": { + "a": "item", + "t": "132002", + "n": 1 + }, + "itemdes": "凤文君", + "itemwt": 1, + "min": 1, + "max": 1, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 240, + "notice": 0 + }, + { + "id": 4, + "lotteryid": 40001001, + "description": "随机蓝色英雄", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "132003", + "n": 1 + }, + "itemdes": "月清", + "itemwt": 1, + "min": 1, + "max": 1, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 240, + "notice": 0 + }, + { + "id": 5, + "lotteryid": 40001001, + "description": "随机蓝色英雄", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "132004", + "n": 1 + }, + "itemdes": "曹漫野", + "itemwt": 1, + "min": 1, + "max": 1, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 240, + "notice": 0 + }, + { + "id": 6, + "lotteryid": 40001001, + "description": "随机蓝色英雄", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "132005", + "n": 1 + }, + "itemdes": "璐璐", + "itemwt": 1, + "min": 1, + "max": 1, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 240, + "notice": 0 + }, + { + "id": 7, + "lotteryid": 40001001, + "description": "随机蓝色英雄", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "132006", + "n": 1 + }, + "itemdes": "柳名传", + "itemwt": 1, + "min": 1, + "max": 1, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 240, + "notice": 0 + }, + { + "id": 8, + "lotteryid": 40001001, + "description": "随机蓝色英雄", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "132007", + "n": 1 + }, + "itemdes": "薛浅浅", + "itemwt": 1, + "min": 1, + "max": 1, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 240, + "notice": 0 + }, + { + "id": 9, + "lotteryid": 40001001, + "description": "随机蓝色英雄", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "132008", + "n": 1 + }, + "itemdes": "白素素", + "itemwt": 1, + "min": 1, + "max": 1, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 240, + "notice": 0 + }, + { + "id": 10, + "lotteryid": 40001001, + "description": "随机蓝色英雄", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "132009", + "n": 1 + }, + "itemdes": "晴紫", + "itemwt": 1, + "min": 1, + "max": 1, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 240, + "notice": 0 + }, + { + "id": 11, + "lotteryid": 50001001, + "description": "随机掉落组测试1", + "type": 1, + "groupwt": 500, + "groupid": 1001, + "subtype": 1, + "groupnum": 2, + "itemid": { + "a": "item", + "t": "131001", + "n": 1 + }, + "itemdes": "测试道具1", + "itemwt": 50, + "min": 5, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 20, + "playerlvmax": 100, + "notice": 0 + }, + { + "id": 12, + "lotteryid": 50001001, + "description": "随机掉落组测试1", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "131002", + "n": 1 + }, + "itemdes": "测试道具2", + "itemwt": 10, + "min": 10, + "max": 10, + "VIPmin": 2, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 13, + "lotteryid": 50001001, + "description": "随机掉落组测试1", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "131003", + "n": 1 + }, + "itemdes": "测试道具3", + "itemwt": 10, + "min": 10, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 14, + "lotteryid": 50001001, + "description": "随机掉落组测试1", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "131004", + "n": 1 + }, + "itemdes": "测试道具4", + "itemwt": 20, + "min": 10, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 15, + "lotteryid": 50001001, + "description": "随机掉落组测试1", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "131005", + "n": 1 + }, + "itemdes": "测试道具5", + "itemwt": 10, + "min": 10, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 16, + "lotteryid": 50001001, + "description": "随机掉落组测试1", + "type": 0, + "groupwt": 500, + "groupid": 1002, + "subtype": 1, + "groupnum": 1, + "itemid": { + "a": "item", + "t": "50001", + "n": 1 + }, + "itemdes": "测试道具6", + "itemwt": 50, + "min": 5, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 17, + "lotteryid": 50001001, + "description": "随机掉落组测试1", + "type": 0, + "groupwt": 0, + "groupid": 1002, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "50002", + "n": 1 + }, + "itemdes": "测试道具7", + "itemwt": 30, + "min": 10, + "max": 20, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 18, + "lotteryid": 50001001, + "description": "随机掉落组测试1", + "type": 0, + "groupwt": 0, + "groupid": 1002, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "50003", + "n": 1 + }, + "itemdes": "测试道具8", + "itemwt": 10, + "min": 20, + "max": 40, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 19, + "lotteryid": 50001001, + "description": "随机掉落组测试1", + "type": 0, + "groupwt": 0, + "groupid": 1002, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "50004", + "n": 1 + }, + "itemdes": "测试道具9", + "itemwt": 20, + "min": 40, + "max": 40, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 20, + "lotteryid": 50001001, + "description": "随机掉落组测试1", + "type": 0, + "groupwt": 0, + "groupid": 1002, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "50005", + "n": 1 + }, + "itemdes": "测试道具10", + "itemwt": 30, + "min": 40, + "max": 40, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 21, + "lotteryid": 50001002, + "description": "随机掉落组测试2", + "type": 2, + "groupwt": 1000, + "groupid": 1001, + "subtype": 1, + "groupnum": 1, + "itemid": { + "a": "item", + "t": "50006", + "n": 1 + }, + "itemdes": "测试道具11", + "itemwt": 50, + "min": 5, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 20, + "playerlvmax": 100, + "notice": 0 + }, + { + "id": 22, + "lotteryid": 50001002, + "description": "随机掉落组测试2", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "50007", + "n": 1 + }, + "itemdes": "测试道具12", + "itemwt": 10, + "min": 10, + "max": 10, + "VIPmin": 2, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 23, + "lotteryid": 50001002, + "description": "随机掉落组测试2", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "50008", + "n": 1 + }, + "itemdes": "测试道具13", + "itemwt": 10, + "min": 10, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 24, + "lotteryid": 50001002, + "description": "随机掉落组测试2", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "50009", + "n": 1 + }, + "itemdes": "测试道具14", + "itemwt": 20, + "min": 10, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 25, + "lotteryid": 50001002, + "description": "随机掉落组测试2", + "type": 0, + "groupwt": 0, + "groupid": 1001, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "50010", + "n": 1 + }, + "itemdes": "测试道具15", + "itemwt": 10, + "min": 10, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 26, + "lotteryid": 50001002, + "description": "随机掉落组测试2", + "type": 0, + "groupwt": 500, + "groupid": 1002, + "subtype": 2, + "groupnum": 5, + "itemid": { + "a": "item", + "t": "50011", + "n": 1 + }, + "itemdes": "测试道具16", + "itemwt": 50, + "min": 5, + "max": 10, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 27, + "lotteryid": 50001002, + "description": "随机掉落组测试2", + "type": 0, + "groupwt": 0, + "groupid": 1002, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "50012", + "n": 1 + }, + "itemdes": "测试道具17", + "itemwt": 30, + "min": 10, + "max": 20, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 28, + "lotteryid": 50001002, + "description": "随机掉落组测试2", + "type": 0, + "groupwt": 0, + "groupid": 1002, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "131003", + "n": 1 + }, + "itemdes": "测试道具18", + "itemwt": 10, + "min": 20, + "max": 40, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 29, + "lotteryid": 50001002, + "description": "随机掉落组测试2", + "type": 0, + "groupwt": 0, + "groupid": 1002, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "131004", + "n": 1 + }, + "itemdes": "测试道具19", + "itemwt": 20, + "min": 40, + "max": 40, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + }, + { + "id": 30, + "lotteryid": 50001002, + "description": "随机掉落组测试2", + "type": 0, + "groupwt": 0, + "groupid": 1002, + "subtype": 0, + "groupnum": 0, + "itemid": { + "a": "item", + "t": "131005", + "n": 1 + }, + "itemdes": "测试道具20", + "itemwt": 30, + "min": 40, + "max": 40, + "VIPmin": 0, + "VIPmax": 15, + "playerlvmin": 0, + "playerlvmax": 0, + "notice": 0 + } +] \ No newline at end of file diff --git a/bin/json/game_skillafteratk.json b/bin/json/game_skillafteratk.json index 5ad9d4cad..c1e1b4c07 100644 --- a/bin/json/game_skillafteratk.json +++ b/bin/json/game_skillafteratk.json @@ -8068,7 +8068,9 @@ 350 ], "FollowSK": [], - "SucFollowSK": [], + "SucFollowSK": [ + 215005316 + ], "FailFollowSK": [], "MustHit": false, "DpsRevisiType": 0, @@ -8126,6 +8128,31 @@ "RevisiCondition": "", "RevisiParams": [] }, + { + "Id": 215005316, + "EmitPR": 1000, + "From": 9, + "Where": [], + "Order": "", + "Limit": 1, + "ExecuteCnt": 1, + "Type": 28, + "Argu": [ + 390001112, + 1000, + 1, + 2, + 1200 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, { "Id": 215005322, "EmitPR": 1000, @@ -8195,54 +8222,6 @@ "RevisiCondition": "", "RevisiParams": [] }, - { - "Id": 915005213, - "EmitPR": 1000, - "From": 1, - "Where": [], - "Order": "", - "Limit": 1, - "ExecuteCnt": 1, - "Type": 2, - "Argu": [ - 415005212, - 1, - 1 - ], - "FollowSK": [], - "SucFollowSK": [], - "FailFollowSK": [], - "MustHit": false, - "DpsRevisiType": 0, - "DpsCondition": "", - "RevisiCondition": "", - "RevisiParams": [] - }, - { - "Id": 915005214, - "EmitPR": 1000, - "From": 9, - "Where": [], - "Order": "", - "Limit": 1, - "ExecuteCnt": 1, - "Type": 28, - "Argu": [ - 390001112, - 1000, - 1, - 2, - 1200 - ], - "FollowSK": [], - "SucFollowSK": [], - "FailFollowSK": [], - "MustHit": false, - "DpsRevisiType": 0, - "DpsCondition": "", - "RevisiCondition": "", - "RevisiParams": [] - }, { "Id": 215004011, "EmitPR": 1000, diff --git a/bin/json/game_skillatk.json b/bin/json/game_skillatk.json index b782935bf..38816b473 100644 --- a/bin/json/game_skillatk.json +++ b/bin/json/game_skillatk.json @@ -2610,9 +2610,7 @@ "Target": 2, "ChildSkill": { "Id": [ - 225001341, - 225001312, - 225001313 + 66 ] }, "Desc": { @@ -5468,36 +5466,6 @@ "buffid": [], "map": "" }, - { - "id": 115005411, - "level": 1, - "MaxLV": 1, - "UnavailablePlayTypes": [], - "Name": { - "key": "skillname_115005411", - "text": "净化烟火" - }, - "ico": "jn_icon_023", - "CorrectPos": 0, - "IsMelee": 0, - "act": "Skill_2", - "Type": 1, - "CD": 5, - "Target": 0, - "ChildSkill": { - "Id": [ - 215005211, - 915005213, - 915005214 - ] - }, - "Desc": { - "key": "skill_1150054111", - "text": "治疗时净化目标1个减益。治疗量溢出时附加2回合【护盾】,护盾量为溢出治疗量的120%。" - }, - "buffid": [], - "map": "" - }, { "id": 115004011, "level": 1, diff --git a/bin/json/game_skillpassive.json b/bin/json/game_skillpassive.json index 677861a6d..65a575e6f 100644 --- a/bin/json/game_skillpassive.json +++ b/bin/json/game_skillpassive.json @@ -483,9 +483,9 @@ }, { "Id": 415005212, - "When": 7, - "FromCheck": "Target=3,HpproGreater=1000", - "TargetCheck": "", + "When": 17, + "FromCheck": "Target=3", + "TargetCheck": "HpproGreater=1000", "MainSkillCheck": "", "AfterSkillCheck": "", "BuffCheck": "", @@ -494,7 +494,7 @@ "Type": "CallSkillPas", "MaxEmitTimes": 1, "Callback": [ - 915005214 + 215005316 ] }, { diff --git a/bin/json/game_smithycustomer.json b/bin/json/game_smithycustomer.json index 9c5af0b4d..3ba8a3e5b 100644 --- a/bin/json/game_smithycustomer.json +++ b/bin/json/game_smithycustomer.json @@ -11,7 +11,7 @@ { "a": "attr", "t": "gold", - "n": 10 + "n": 0 } ], "weight": 4500 diff --git a/bin/json/game_smithyproficiency.json b/bin/json/game_smithyproficiency.json index 244fab393..dcfe763d4 100644 --- a/bin/json/game_smithyproficiency.json +++ b/bin/json/game_smithyproficiency.json @@ -65,7 +65,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 5, @@ -150,7 +150,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 10, @@ -235,7 +235,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 15, @@ -320,7 +320,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 20, @@ -490,7 +490,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 30, @@ -575,7 +575,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 35, @@ -660,7 +660,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 40, @@ -745,7 +745,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 45, @@ -915,7 +915,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 55, @@ -1000,7 +1000,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 60, @@ -1085,7 +1085,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 65, @@ -1170,7 +1170,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 70, @@ -1340,7 +1340,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 80, @@ -1425,7 +1425,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 85, @@ -1510,7 +1510,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 90, @@ -1595,7 +1595,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 95, @@ -1765,7 +1765,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 105, @@ -1850,7 +1850,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 110, @@ -1935,7 +1935,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 115, @@ -2020,7 +2020,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 120, @@ -2105,7 +2105,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 125, @@ -2190,7 +2190,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 130, @@ -2275,7 +2275,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 135, @@ -2360,7 +2360,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 140, @@ -2445,7 +2445,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 145, @@ -2615,7 +2615,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 155, @@ -2700,7 +2700,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 160, @@ -2785,7 +2785,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 165, @@ -2870,7 +2870,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 170, @@ -3040,7 +3040,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 180, @@ -3125,7 +3125,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 185, @@ -3210,7 +3210,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 190, @@ -3295,7 +3295,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 195, @@ -3465,7 +3465,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 205, @@ -3550,7 +3550,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 210, @@ -3635,7 +3635,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 215, @@ -3720,7 +3720,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 220, @@ -3890,7 +3890,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 230, @@ -3975,7 +3975,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 235, @@ -4060,7 +4060,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 240, @@ -4145,7 +4145,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 245, @@ -4230,7 +4230,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 250, @@ -4315,7 +4315,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 255, @@ -4400,7 +4400,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 260, @@ -4485,7 +4485,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 265, @@ -4570,7 +4570,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 270, @@ -4740,7 +4740,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 280, @@ -4825,7 +4825,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 285, @@ -4910,7 +4910,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 290, @@ -4995,7 +4995,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 295, @@ -5165,7 +5165,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 305, @@ -5250,7 +5250,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 310, @@ -5335,7 +5335,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 315, @@ -5420,7 +5420,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 320, @@ -5590,7 +5590,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 330, @@ -5675,7 +5675,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 335, @@ -5760,7 +5760,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 340, @@ -5845,7 +5845,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 345, @@ -6015,7 +6015,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 355, @@ -6100,7 +6100,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 360, @@ -6185,7 +6185,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 365, @@ -6270,7 +6270,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 370, @@ -6355,7 +6355,7 @@ }, "type": 2, "value1": 120001, - "value2": 0 + "value2": -1 }, { "id": 375, diff --git a/bin/json/game_worldtask.json b/bin/json/game_worldtask.json index b9d9d847e..f2c6682c5 100644 --- a/bin/json/game_worldtask.json +++ b/bin/json/game_worldtask.json @@ -33,9 +33,7 @@ "n": 100 } ], - "module": [ - "practice" - ] + "module": [] }, { "key": 20020, @@ -71,9 +69,7 @@ "n": 101 } ], - "module": [ - "practice" - ] + "module": [] }, { "key": 20030, @@ -697,7 +693,7 @@ "des": 1, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Daily_tasks1", "text": "1" }, "task_name": { @@ -705,7 +701,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Daily_tasks1", "text": "1" }, "npc": 10010, @@ -733,7 +729,7 @@ "des": 1, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Daily_tasks2", "text": "1" }, "task_name": { @@ -741,7 +737,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Daily_tasks2", "text": "1" }, "npc": 10010, @@ -769,7 +765,7 @@ "des": 1, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Daily_tasks3", "text": "1" }, "task_name": { @@ -777,7 +773,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Daily_tasks3", "text": "1" }, "npc": 10010, @@ -805,7 +801,7 @@ "des": 1, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Daily_tasks4", "text": "1" }, "task_name": { @@ -813,7 +809,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Daily_tasks4", "text": "1" }, "npc": 10010, @@ -841,7 +837,7 @@ "des": 1, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Daily_tasks5", "text": "1" }, "task_name": { @@ -849,7 +845,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Daily_tasks5", "text": "1" }, "npc": 10010, @@ -877,7 +873,7 @@ "des": 1, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Daily_tasks6", "text": "1" }, "task_name": { @@ -885,7 +881,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Daily_tasks6", "text": "1" }, "npc": 10010, @@ -913,7 +909,7 @@ "des": 1, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Daily_tasks7", "text": "1" }, "task_name": { @@ -921,7 +917,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Daily_tasks7", "text": "1" }, "npc": 10010, @@ -949,7 +945,7 @@ "des": 4, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Weekly_Tasks1", "text": "1" }, "task_name": { @@ -957,7 +953,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Weekly_Tasks1", "text": "1" }, "npc": 10040, @@ -985,7 +981,7 @@ "des": 4, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Weekly_Tasks2", "text": "1" }, "task_name": { @@ -993,7 +989,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Weekly_Tasks2", "text": "1" }, "npc": 10040, @@ -1021,7 +1017,7 @@ "des": 4, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Weekly_Tasks3", "text": "1" }, "task_name": { @@ -1029,7 +1025,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Weekly_Tasks3", "text": "1" }, "npc": 10040, @@ -1057,7 +1053,7 @@ "des": 4, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Weekly_Tasks4", "text": "1" }, "task_name": { @@ -1065,7 +1061,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Weekly_Tasks4", "text": "1" }, "npc": 10040, @@ -1093,7 +1089,7 @@ "des": 4, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Weekly_Tasks5", "text": "1" }, "task_name": { @@ -1101,7 +1097,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Weekly_Tasks5", "text": "1" }, "npc": 10040, @@ -1129,7 +1125,7 @@ "des": 4, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Weekly_Tasks6", "text": "1" }, "task_name": { @@ -1137,7 +1133,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Weekly_Tasks6", "text": "1" }, "npc": 10040, @@ -1165,7 +1161,7 @@ "des": 4, "icon": "", "task_Tname": { - "key": "story_80", + "key": "Weekly_Tasks7", "text": "1" }, "task_name": { @@ -1173,7 +1169,7 @@ "text": "1" }, "task_display": { - "key": "story_80", + "key": "Weekly_Tasks7", "text": "1" }, "npc": 10040, diff --git a/sys/configure/structs/Game.Lottery.go b/sys/configure/structs/Game.Lottery.go new file mode 100644 index 000000000..0056d48f9 --- /dev/null +++ b/sys/configure/structs/Game.Lottery.go @@ -0,0 +1,42 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +package cfg + +type GameLottery struct { + _dataMap map[int32]*GameLotteryData + _dataList []*GameLotteryData +} + +func NewGameLottery(_buf []map[string]interface{}) (*GameLottery, error) { + _dataList := make([]*GameLotteryData, 0, len(_buf)) + dataMap := make(map[int32]*GameLotteryData) + for _, _ele_ := range _buf { + if _v, err2 := DeserializeGameLotteryData(_ele_); err2 != nil { + return nil, err2 + } else { + _dataList = append(_dataList, _v) + dataMap[_v.Id] = _v + } + } + return &GameLottery{_dataList:_dataList, _dataMap:dataMap}, nil +} + +func (table *GameLottery) GetDataMap() map[int32]*GameLotteryData { + return table._dataMap +} + +func (table *GameLottery) GetDataList() []*GameLotteryData { + return table._dataList +} + +func (table *GameLottery) Get(key int32) *GameLotteryData { + return table._dataMap[key] +} + + diff --git a/sys/configure/structs/Game.LotteryData.go b/sys/configure/structs/Game.LotteryData.go new file mode 100644 index 000000000..6b47b55cb --- /dev/null +++ b/sys/configure/structs/Game.LotteryData.go @@ -0,0 +1,69 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +package cfg + +import "errors" + +type GameLotteryData struct { + Id int32 + Lotteryid int32 + Description string + Type int32 + Groupwt int32 + Groupid int32 + Subtype int32 + Groupnum int32 + Itemid *Gameatn + Itemdes string + Itemwt int32 + Min int32 + Max int32 + VIPmin int32 + VIPmax int32 + Playerlvmin int32 + Playerlvmax int32 + Notice int32 +} + +const TypeId_GameLotteryData = 1267925655 + +func (*GameLotteryData) GetTypeId() int32 { + return 1267925655 +} + +func (_v *GameLotteryData)Deserialize(_buf map[string]interface{}) (err error) { + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["lotteryid"].(float64); !_ok_ { err = errors.New("lotteryid error"); return }; _v.Lotteryid = int32(_tempNum_) } + { var _ok_ bool; if _v.Description, _ok_ = _buf["description"].(string); !_ok_ { err = errors.New("description error"); return } } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["type"].(float64); !_ok_ { err = errors.New("type error"); return }; _v.Type = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["groupwt"].(float64); !_ok_ { err = errors.New("groupwt error"); return }; _v.Groupwt = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["groupid"].(float64); !_ok_ { err = errors.New("groupid error"); return }; _v.Groupid = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["subtype"].(float64); !_ok_ { err = errors.New("subtype error"); return }; _v.Subtype = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["groupnum"].(float64); !_ok_ { err = errors.New("groupnum error"); return }; _v.Groupnum = int32(_tempNum_) } + { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["itemid"].(map[string]interface{}); !_ok_ { err = errors.New("itemid error"); return }; if _v.Itemid, err = DeserializeGameatn(_x_); err != nil { return } } + { var _ok_ bool; if _v.Itemdes, _ok_ = _buf["itemdes"].(string); !_ok_ { err = errors.New("itemdes error"); return } } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["itemwt"].(float64); !_ok_ { err = errors.New("itemwt error"); return }; _v.Itemwt = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["min"].(float64); !_ok_ { err = errors.New("min error"); return }; _v.Min = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["max"].(float64); !_ok_ { err = errors.New("max error"); return }; _v.Max = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["VIPmin"].(float64); !_ok_ { err = errors.New("VIPmin error"); return }; _v.VIPmin = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["VIPmax"].(float64); !_ok_ { err = errors.New("VIPmax error"); return }; _v.VIPmax = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["playerlvmin"].(float64); !_ok_ { err = errors.New("playerlvmin error"); return }; _v.Playerlvmin = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["playerlvmax"].(float64); !_ok_ { err = errors.New("playerlvmax error"); return }; _v.Playerlvmax = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["notice"].(float64); !_ok_ { err = errors.New("notice error"); return }; _v.Notice = int32(_tempNum_) } + return +} + +func DeserializeGameLotteryData(_buf map[string]interface{}) (*GameLotteryData, error) { + v := &GameLotteryData{} + if err := v.Deserialize(_buf); err == nil { + return v, nil + } else { + return nil, err + } +} diff --git a/sys/configure/structs/Game.MonsterFormatData.go b/sys/configure/structs/Game.MonsterFormatData.go index de1981a7f..73d3e6790 100644 --- a/sys/configure/structs/Game.MonsterFormatData.go +++ b/sys/configure/structs/Game.MonsterFormatData.go @@ -15,6 +15,7 @@ type GameMonsterFormatData struct { Pos int32 CaptainId int32 IsBoss int32 + BossHpCnt int32 Monster int32 Lv int32 Hppro float32 @@ -34,6 +35,7 @@ func (_v *GameMonsterFormatData)Deserialize(_buf map[string]interface{}) (err er { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["pos"].(float64); !_ok_ { err = errors.New("pos error"); return }; _v.Pos = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["captainId"].(float64); !_ok_ { err = errors.New("captainId error"); return }; _v.CaptainId = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["IsBoss"].(float64); !_ok_ { err = errors.New("IsBoss error"); return }; _v.IsBoss = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["bossHpCnt"].(float64); !_ok_ { err = errors.New("bossHpCnt error"); return }; _v.BossHpCnt = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["monster"].(float64); !_ok_ { err = errors.New("monster error"); return }; _v.Monster = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["lv"].(float64); !_ok_ { err = errors.New("lv error"); return }; _v.Lv = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hppro"].(float64); !_ok_ { err = errors.New("hppro error"); return }; _v.Hppro = float32(_tempNum_) } diff --git a/sys/configure/structs/Tables.go b/sys/configure/structs/Tables.go index 580d4b6cf..f01baa1eb 100644 --- a/sys/configure/structs/Tables.go +++ b/sys/configure/structs/Tables.go @@ -180,6 +180,7 @@ type Tables struct { BreakingbadTag *GameBreakingbadTag Potions *GamePotions SellCoefficient *GameSellCoefficient + Lottery *GameLottery } func NewTables(loader JsonLoader) (*Tables, error) { @@ -1201,5 +1202,11 @@ func NewTables(loader JsonLoader) (*Tables, error) { if tables.SellCoefficient, err = NewGameSellCoefficient(buf) ; err != nil { return nil, err } + if buf, err = loader("game_lottery") ; err != nil { + return nil, err + } + if tables.Lottery, err = NewGameLottery(buf) ; err != nil { + return nil, err + } return tables, nil } From d285bad3a92b0f82e19a9ee0b516c3e7b034eda3 Mon Sep 17 00:00:00 2001 From: liwei1dao Date: Tue, 11 Apr 2023 13:54:50 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=AD=A6=E9=A6=86?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/practice/api_loot.go | 11 +++++++++++ modules/practice/api_receive.go | 11 +++++++++++ 2 files changed, 22 insertions(+) diff --git a/modules/practice/api_loot.go b/modules/practice/api_loot.go index 8b021ba19..2b1eb86fe 100644 --- a/modules/practice/api_loot.go +++ b/modules/practice/api_loot.go @@ -88,6 +88,17 @@ func (this *apiComp) Loot(session comm.IUserSession, req *pb.PracticeLootReq) (c this.module.modelPandata.Change(session.GetUserId(), map[string]interface{}{ "knapsack": room.Knapsack, }) + + if _session, ok := this.module.GetUserSession(req.Friend); ok { + _session.SendMsg(string(this.module.GetType()), "rommchange", &pb.PracticeRommChangePush{Info: froom}) + if err = _session.Push(); err != nil { + this.module.Errorln(err) + } + this.module.PutUserSession(_session) + } else { + this.module.PutUserSession(_session) + } + session.SendMsg(string(this.module.GetType()), "loot", &pb.PracticeLootResp{Friend: req.Friend, Pillar: froom.Pillarf}) return } diff --git a/modules/practice/api_receive.go b/modules/practice/api_receive.go index d4ebe2e3f..16f85b941 100644 --- a/modules/practice/api_receive.go +++ b/modules/practice/api_receive.go @@ -236,6 +236,17 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.PracticeReceiveR this.module.modelPandata.Change(req.Friend, map[string]interface{}{ filed: pillar, }) + + if _session, ok := this.module.GetUserSession(req.Friend); ok { + _session.SendMsg(string(this.module.GetType()), "rommchange", &pb.PracticeRommChangePush{Info: froom}) + + if err = _session.Push(); err != nil { + this.module.Errorln(err) + } + this.module.PutUserSession(_session) + } else { + this.module.PutUserSession(_session) + } } go this.module.ModuleRtask.TriggerTask(session.GetUserId(), comm.GettaskParam(comm.Rtype135, minutes)) session.SendMsg(string(this.module.GetType()), "receive", &pb.PracticeReceiveResp{Pillar: pillar, Knapsack: room.Knapsack})