This commit is contained in:
liwei 2023-07-18 15:31:14 +08:00
parent 687446986d
commit 4b22acb0d2
14 changed files with 1430 additions and 95 deletions

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,9 @@
{
"id": 20001,
"type": 1,
"repeat_num": 5,
"type2": 101,
"day": 1,
"repeat_num": 1,
"refreshtime": 1,
"packagetype": "",
"buy_num": 1,
@ -28,13 +30,15 @@
{
"id": 20002,
"type": 1,
"repeat_num": 2,
"refreshtime": 30,
"type2": 101,
"day": 2,
"repeat_num": 1,
"refreshtime": 1,
"packagetype": "",
"buy_num": 2,
"buy_num": 1,
"packagename": {
"key": "paypackage_paypackage_packagename_20002",
"text": "兑换礼包"
"text": "每日好礼"
},
"costitem": [
{
@ -54,12 +58,96 @@
{
"id": 20003,
"type": 1,
"type2": 101,
"day": 3,
"repeat_num": 1,
"refreshtime": 1,
"packagetype": "",
"buy_num": 1,
"packagename": {
"key": "paypackage_paypackage_packagename_20003",
"text": "每日好礼"
},
"costitem": [],
"item": [
{
"a": "item",
"t": "10000001",
"n": 10
}
]
},
{
"id": 20004,
"type": 1,
"type2": 101,
"day": 4,
"repeat_num": 1,
"refreshtime": 1,
"packagetype": "",
"buy_num": 1,
"packagename": {
"key": "paypackage_paypackage_packagename_20004",
"text": "每日好礼"
},
"costitem": [],
"item": []
},
{
"id": 20005,
"type": 1,
"type2": 101,
"day": 5,
"repeat_num": 1,
"refreshtime": 1,
"packagetype": "",
"buy_num": 1,
"packagename": {
"key": "paypackage_paypackage_packagename_20005",
"text": "每日好礼"
},
"costitem": [],
"item": []
},
{
"id": 20006,
"type": 1,
"type2": 102,
"day": 0,
"repeat_num": 2,
"refreshtime": 30,
"packagetype": "",
"buy_num": 2,
"packagename": {
"key": "paypackage_paypackage_packagename_20006",
"text": "兑换礼包"
},
"costitem": [
{
"a": "attr",
"t": "diamond",
"n": 1888
}
],
"item": [
{
"a": "item",
"t": "10000001",
"n": 10
}
]
},
{
"id": 20007,
"type": 1,
"type2": 103,
"day": 0,
"repeat_num": 3,
"refreshtime": 30,
"packagetype": "drawcard_pack1",
"buy_num": 3,
"packagename": {
"key": "paypackage_paypackage_packagename_20003",
"key": "paypackage_paypackage_packagename_20007",
"text": "招募礼包1"
},
"costitem": [],

View File

@ -54,6 +54,16 @@ func (this *apiComp) ActivityBuy(session comm.IUserSession, req *pb.PayActivityB
}
return
}
if conf.Day > 0 && info.Activitys[conf.Type].Days < conf.Day {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
Message: err.Error(),
}
return
}
buynum = info.Activitys[conf.Type].Items[conf.Id].Buyunm
totalbuy = info.Activitys[conf.Type].Items[conf.Id].Totalbuynum
if conf.RepeatNum >= totalbuy || conf.BuyNum >= 0 && buynum >= conf.BuyNum {

View File

@ -6,6 +6,7 @@ import (
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
cfg "go_dreamfactory/sys/configure/structs"
"go_dreamfactory/utils"
"time"
)
@ -70,16 +71,16 @@ func (this *apiComp) GetActivity(session comm.IUserSession, req *pb.PayGetActivi
v.Lastrefresh = configure.Now().Unix()
}
}
if err = this.module.modelActivity.updateActivitys(session.GetUserId(), activitys); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
}
info.Days = int32(utils.DiffDays(configure.Now().Unix(), info.Opentime)) + 1
if err = this.module.modelActivity.updateActivitys(session.GetUserId(), activitys); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
session.SendMsg(string(this.module.GetType()), "getactivity", &pb.PayGetActivityResp{Info: info})
return
}

View File

@ -4,6 +4,7 @@ import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/lego/sys/log"
"go_dreamfactory/lego/sys/mgo"
"go_dreamfactory/modules"
"go.mongodb.org/mongo-driver/bson"
@ -24,7 +25,7 @@ func (this *modelGlobal) Init(service core.IService, module core.IModule, comp c
// 查询全局配置
func (this *modelGlobal) GetGlobalData(key string, v interface{}) (err error) {
if err = this.DBModel.DB.FindOne(core.SqlTable(this.TableName), bson.M{"_id": key}).Decode(v); err != nil {
if err = this.DBModel.DB.FindOne(core.SqlTable(this.TableName), bson.M{"_id": key}).Decode(v); err != nil && err != mgo.MongodbNil {
this.module.Error("GetGlobalData err", log.Field{Key: "key", Value: key}, log.Field{Key: "err", Value: err.Error()})
}
return

View File

@ -3,21 +3,62 @@ package uniongve
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
)
// 参数校验
func (this *apiComp) ChallengeCheck(session comm.IUserSession, req *pb.UniongveChallengeReq) (errdata *pb.ErrorData) {
if req.Unionid == "" || req.Boosid == 0 {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
Message: req.String(),
}
}
return
}
// 获取工会boos战信息
func (this *apiComp) Challenge(session comm.IUserSession, req *pb.UniongveChallengeReq) (errdata *pb.ErrorData) {
var (
record *pb.DBBattleRecord
conf *cfg.GameGuildBossData
err error
)
if errdata = this.ChallengeCheck(session, req); errdata != nil {
return
}
session.SendMsg(string(this.module.GetType()), "challenge", &pb.UniongveRankResp{})
if conf, err = this.module.configure.getguildbossByid(req.Boosid); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ConfigNoFound,
Title: pb.ErrorCode_ConfigNoFound.ToString(),
Message: err.Error(),
}
return
}
if errdata, record = this.module.battle.CreatePveBattle(session, &pb.BattlePVEReq{
Ptype: pb.PlayType_moonfantasy,
Format: req.Battle,
Mformat: conf.Boss,
}); err != nil {
return
}
session.SendMsg(string(this.module.GetType()), "challenge", &pb.UniongveChallengeResp{
Unionid: req.Unionid,
Boosid: req.Boosid,
Info: &pb.BattleInfo{
Id: record.Id,
Rulesid: conf.BattleReadyID,
Btype: record.Btype,
Ptype: record.Ptype,
RedCompId: record.RedCompId,
Redflist: record.Redflist,
BlueCompId: record.BlueCompId,
Buleflist: record.Buleflist,
},
})
return
}

View File

@ -17,6 +17,9 @@ func (this *apiComp) ChallengeFinish(session comm.IUserSession, req *pb.Uniongve
if errdata = this.ChallengeFinishCheck(session, req); errdata != nil {
return
}
if errdata, _ = this.module.battle.CheckBattleReport(session, req.Report); errdata != nil {
return
}
session.SendMsg(string(this.module.GetType()), "challengefinish", &pb.UniongveChallengeFinishResp{})
return

View File

@ -2,6 +2,7 @@ package uniongve
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/sys/log"
"go_dreamfactory/pb"
)
@ -15,11 +16,26 @@ func (this *apiComp) InfoCheck(session comm.IUserSession, req *pb.UniongveInfoRe
func (this *apiComp) Info(session comm.IUserSession, req *pb.UniongveInfoReq) (errdata *pb.ErrorData) {
var (
info *pb.DBUnionGve
err error
)
if errdata = this.InfoCheck(session, req); errdata != nil {
return
}
this.module.modelUniongve.getUnionGve(req.Unionid)
lock, _ := this.module.modelUniongve.userlock(req.Unionid)
err = lock.Lock()
if err != nil {
this.module.Error("公会战分布式锁 err!", log.Field{Key: "Unionid", Value: req.Unionid}, log.Field{Key: "err", Value: err.Error()})
return
}
defer lock.Unlock()
if info, err = this.module.modelUniongve.getUnionGve(req.Unionid); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
session.SendMsg(string(this.module.GetType()), "info", &pb.UniongveInfoResp{Info: info})
return
}

View File

@ -2,6 +2,7 @@ package uniongve
import (
"fmt"
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
cfg "go_dreamfactory/sys/configure/structs"
@ -17,11 +18,13 @@ const (
// /配置管理基础组件
type MCompConfigure struct {
modules.MCompConfigure
module *UnionGve
}
// 组件初始化接口
func (this *MCompConfigure) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
err = this.ModuleCompBase.Init(service, module, comp, options)
this.module = module.(*UnionGve)
err = this.LoadMultiConfigure(map[string]interface{}{
game_guildboss: cfg.NewGameGuildBoss,
game_guildbossrank: cfg.NewGameGuildBossRank,
@ -55,3 +58,22 @@ func (this *MCompConfigure) getguildboss() (results []*cfg.GameGuildBossData, er
return
}
}
// 获取所有难度一的boos
func (this *MCompConfigure) getguildbossByid(id int32) (results *cfg.GameGuildBossData, err error) {
var (
v interface{}
ok bool
)
if v, err = this.GetConfigure(game_guildboss); err != nil {
return
} else {
if results, ok = v.(*cfg.GameGuildBoss).GetDataMap()[id]; !ok {
err = comm.NewNotFoundConfErr(string(this.module.GetType()), game_guildboss, id)
this.module.Errorf("err:%v", err)
return
}
}
return
}

View File

@ -4,11 +4,14 @@ import (
"fmt"
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/lego/sys/event"
"go_dreamfactory/lego/sys/mgo"
"go_dreamfactory/lego/sys/redis"
"go_dreamfactory/modules"
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
cfg "go_dreamfactory/sys/configure/structs"
"go_dreamfactory/utils"
"sync"
)
@ -28,24 +31,46 @@ func (this *ModelUniongve) Init(service core.IService, module core.IModule, comp
func (this *ModelUniongve) Start() (err error) {
err = this.MCompModel.Start()
err = this.loadGlobalBoos()
event.RegisterGO(core.Event_ServiceStartEnd, func() {
err = this.loadGlobalBoos()
})
return
}
// 获取用户全部的埋点数据
func (this *ModelUniongve) getUnionGve(unionid string) (results *pb.DBUnionGve, err error) {
var (
confs *pb.DBUnionGveBossConf
conf *cfg.GameGuildBossData
)
results = &pb.DBUnionGve{}
if err = this.Get(unionid, results); err != nil && err != mgo.MongodbNil {
this.module.Errorln(err)
return
}
if err == mgo.MongodbNil {
err = nil
if confs, err = this.getGlobalBoos(); err != nil {
return
}
results = &pb.DBUnionGve{
Unionid: unionid,
Currstage: 0,
Rtime: confs.Rtime,
Boos: make([]*pb.DBUnionGveBoss, 0),
}
for _, v := range confs.Boos {
if conf, err = this.module.configure.getguildbossByid(v); err != nil {
return
}
results.Boos = append(results.Boos, &pb.DBUnionGveBoss{
Boosid: v,
Hp: conf.Hp,
Record: make([]*pb.DBGveRecord, 0),
})
}
err = this.Add(unionid, results)
}
return
@ -62,7 +87,7 @@ func (this *ModelUniongve) loadGlobalBoos() (err error) {
}
if err == mgo.MongodbNil {
err = this.refreshGlobalBoos()
_, err = this.refreshGlobalBoos()
return
}
this.conflock.Lock()
@ -72,18 +97,25 @@ func (this *ModelUniongve) loadGlobalBoos() (err error) {
}
func (this *ModelUniongve) getGlobalBoos() (conf *pb.DBUnionGveBossConf, err error) {
var (
bossconf *pb.DBUnionGveBossConf
)
this.conflock.RLock()
bossconf = this.bossconf
this.conflock.Unlock()
if bossconf == nil || !utils.IsSameWeek(bossconf.Rtime) {
if bossconf, err = this.refreshGlobalBoos(); err != nil {
return
}
}
return
}
// 刷新全局配置
func (this *ModelUniongve) refreshGlobalBoos() (err error) {
func (this *ModelUniongve) refreshGlobalBoos() (conf *pb.DBUnionGveBossConf, err error) {
var (
bossconf *pb.DBUnionGveBossConf
booss []*cfg.GameGuildBossData
rands []int
booss []*cfg.GameGuildBossData
rands []int
)
if booss, err = this.module.configure.getguildboss(); err != nil {
return
@ -93,17 +125,22 @@ func (this *ModelUniongve) refreshGlobalBoos() (err error) {
return
}
rands = comm.RandShuffle(len(booss))
bossconf = &pb.DBUnionGveBossConf{
conf = &pb.DBUnionGveBossConf{
Key: UnionGveBoosCoonfKey,
Rtime: configure.Now().Unix(),
Boos: make([]int32, 5),
}
for i := 0; i < 5; i++ {
bossconf.Boos[i] = booss[rands[i]].BossId
conf.Boos[i] = booss[rands[i]].BossId
}
this.conflock.Lock()
this.bossconf = bossconf
this.bossconf = conf
this.conflock.Unlock()
this.module.ModuleTools.UpdateGlobalData(UnionGveBoosCoonfKey, bossconf)
this.module.ModuleTools.UpdateGlobalData(UnionGveBoosCoonfKey, conf)
return
}
// 分布式锁
func (this *ModelUniongve) userlock(id string) (result *redis.RedisMutex, err error) {
return this.DBModel.Redis.NewRedisMutex(fmt.Sprintf("uniongve:%s", id))
}

View File

@ -13,6 +13,8 @@ func NewModule() core.IModule {
type UnionGve struct {
modules.ModuleBase
service core.IService
battle comm.IBattle
api *apiComp
modelUniongve *ModelUniongve
configure *MCompConfigure
@ -26,12 +28,16 @@ func (this *UnionGve) GetType() core.M_Modules {
// 模块初始化接口 注册用户创建角色事件
func (this *UnionGve) Init(service core.IService, module core.IModule, options core.IModuleOptions) (err error) {
err = this.ModuleBase.Init(service, module, options)
this.service = service
return
}
// 模块初始化接口 注册用户创建角色事件
func (this *UnionGve) Start() (err error) {
err = this.ModuleBase.Start()
var module core.IModule
if module, err = this.service.GetModule(comm.ModuleBattle); err != nil {
return
}
this.battle = module.(comm.IBattle)
return
}

View File

@ -339,7 +339,8 @@ type ActivityGiftbagItem struct {
unknownFields protoimpl.UnknownFields
Opentime int64 `protobuf:"varint,1,opt,name=opentime,proto3" json:"opentime"`
Items map[int32]*PayActivityGiftbagItem `protobuf:"bytes,2,rep,name=items,proto3" json:"items" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` //商品购买次数
Days int32 `protobuf:"varint,2,opt,name=days,proto3" json:"days"` //开启天数
Items map[int32]*PayActivityGiftbagItem `protobuf:"bytes,3,rep,name=items,proto3" json:"items" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` //商品购买次数
}
func (x *ActivityGiftbagItem) Reset() {
@ -381,6 +382,13 @@ func (x *ActivityGiftbagItem) GetOpentime() int64 {
return 0
}
func (x *ActivityGiftbagItem) GetDays() int32 {
if x != nil {
return x.Days
}
return 0
}
func (x *ActivityGiftbagItem) GetItems() map[int32]*PayActivityGiftbagItem {
if x != nil {
return x.Items
@ -507,28 +515,30 @@ var file_pay_pay_db_proto_rawDesc = []byte{
0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x41, 0x63, 0x74, 0x69,
0x76, 0x69, 0x74, 0x79, 0x47, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x52,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xbb, 0x01, 0x0a, 0x13, 0x41,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xcf, 0x01, 0x0a, 0x13, 0x41,
0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x47, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x49, 0x74,
0x65, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x35,
0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e,
0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x47, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x49,
0x74, 0x65, 0x6d, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05,
0x69, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0x51, 0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e,
0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2d, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x50, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69,
0x74, 0x79, 0x47, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x84, 0x01, 0x0a, 0x16, 0x50, 0x61, 0x79,
0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x47, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x49,
0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x79, 0x75, 0x6e, 0x6d, 0x18, 0x02, 0x20,
0x01, 0x28, 0x05, 0x52, 0x06, 0x62, 0x75, 0x79, 0x75, 0x6e, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x74,
0x6f, 0x74, 0x61, 0x6c, 0x62, 0x75, 0x79, 0x6e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x62, 0x75, 0x79, 0x6e, 0x75, 0x6d, 0x12, 0x20, 0x0a,
0x0b, 0x6c, 0x61, 0x73, 0x74, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x18, 0x04, 0x20, 0x01,
0x28, 0x03, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x42,
0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x12,
0x0a, 0x04, 0x64, 0x61, 0x79, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61,
0x79, 0x73, 0x12, 0x35, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x1f, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x47, 0x69, 0x66, 0x74,
0x62, 0x61, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74,
0x72, 0x79, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0x51, 0x0a, 0x0a, 0x49, 0x74, 0x65,
0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2d, 0x0a, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x50, 0x61, 0x79, 0x41, 0x63,
0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x47, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x49, 0x74, 0x65,
0x6d, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x84, 0x01, 0x0a,
0x16, 0x50, 0x61, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x47, 0x69, 0x66, 0x74,
0x62, 0x61, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x79, 0x75, 0x6e,
0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x62, 0x75, 0x79, 0x75, 0x6e, 0x6d, 0x12,
0x20, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x62, 0x75, 0x79, 0x6e, 0x75, 0x6d, 0x18, 0x03,
0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x62, 0x75, 0x79, 0x6e, 0x75,
0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68,
0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x72, 0x65, 0x66, 0x72,
0x65, 0x73, 0x68, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x33,
}
var (

View File

@ -599,8 +599,9 @@ type UniongveChallengeFinishRep struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
BattleConfId int32 `protobuf:"varint,1,opt,name=battleConfId,proto3" json:"battleConfId"` //战斗配表ID
Info *BattleInfo `protobuf:"bytes,2,opt,name=info,proto3" json:"info"` //战斗信息
Unionid string `protobuf:"bytes,1,opt,name=unionid,proto3" json:"unionid"`
Boosid int32 `protobuf:"varint,2,opt,name=boosid,proto3" json:"boosid"`
Report *BattleReport `protobuf:"bytes,3,opt,name=report,proto3" json:"report"` //战报
}
func (x *UniongveChallengeFinishRep) Reset() {
@ -635,16 +636,23 @@ func (*UniongveChallengeFinishRep) Descriptor() ([]byte, []int) {
return file_uniongve_uniongve_msg_proto_rawDescGZIP(), []int{11}
}
func (x *UniongveChallengeFinishRep) GetBattleConfId() int32 {
func (x *UniongveChallengeFinishRep) GetUnionid() string {
if x != nil {
return x.BattleConfId
return x.Unionid
}
return ""
}
func (x *UniongveChallengeFinishRep) GetBoosid() int32 {
if x != nil {
return x.Boosid
}
return 0
}
func (x *UniongveChallengeFinishRep) GetInfo() *BattleInfo {
func (x *UniongveChallengeFinishRep) GetReport() *BattleReport {
if x != nil {
return x.Info
return x.Report
}
return nil
}
@ -655,8 +663,9 @@ type UniongveChallengeFinishResp struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
BattleConfId int32 `protobuf:"varint,1,opt,name=battleConfId,proto3" json:"battleConfId"` //战斗配表ID
Report *BattleReport `protobuf:"bytes,2,opt,name=report,proto3" json:"report"` //战报
Unionid string `protobuf:"bytes,1,opt,name=unionid,proto3" json:"unionid"`
Boosid int32 `protobuf:"varint,2,opt,name=boosid,proto3" json:"boosid"`
Award []*UserAssets `protobuf:"bytes,3,rep,name=award,proto3" json:"award"` //奖励
}
func (x *UniongveChallengeFinishResp) Reset() {
@ -691,16 +700,23 @@ func (*UniongveChallengeFinishResp) Descriptor() ([]byte, []int) {
return file_uniongve_uniongve_msg_proto_rawDescGZIP(), []int{12}
}
func (x *UniongveChallengeFinishResp) GetBattleConfId() int32 {
func (x *UniongveChallengeFinishResp) GetUnionid() string {
if x != nil {
return x.BattleConfId
return x.Unionid
}
return ""
}
func (x *UniongveChallengeFinishResp) GetBoosid() int32 {
if x != nil {
return x.Boosid
}
return 0
}
func (x *UniongveChallengeFinishResp) GetReport() *BattleReport {
func (x *UniongveChallengeFinishResp) GetAward() []*UserAssets {
if x != nil {
return x.Report
return x.Award
}
return nil
}
@ -941,34 +957,36 @@ var file_uniongve_uniongve_msg_proto_rawDesc = []byte{
0x06, 0x62, 0x6f, 0x6f, 0x73, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x62,
0x6f, 0x6f, 0x73, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f,
0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x61, 0x0a, 0x1a, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x67,
0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x75, 0x0a, 0x1a, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x67,
0x76, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73,
0x68, 0x52, 0x65, 0x70, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f,
0x6e, 0x66, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x61, 0x74, 0x74,
0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x49, 0x64, 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, 0x68, 0x0a, 0x1b, 0x55, 0x6e, 0x69,
0x6f, 0x6e, 0x67, 0x76, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x46, 0x69,
0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x61, 0x74, 0x74,
0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c,
0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x06,
0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x02, 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, 0x39, 0x0a, 0x16, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x67, 0x76, 0x65, 0x49,
0x6e, 0x66, 0x6f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1f, 0x0a,
0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x44, 0x42,
0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x47, 0x76, 0x65, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x3a,
0x0a, 0x17, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x67, 0x76, 0x65, 0x53, 0x74, 0x61, 0x67, 0x65, 0x43,
0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66,
0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x44, 0x42, 0x55, 0x6e, 0x69, 0x6f,
0x6e, 0x47, 0x76, 0x65, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x39, 0x0a, 0x16, 0x55, 0x6e,
0x69, 0x6f, 0x6e, 0x67, 0x76, 0x65, 0x42, 0x6f, 0x6f, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x50, 0x75, 0x73, 0x68, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x44, 0x42, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x47, 0x76, 0x65, 0x52,
0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x1c, 0x0a, 0x1a, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x67, 0x76,
0x65, 0x52, 0x6f, 0x75, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50,
0x75, 0x73, 0x68, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x33,
0x68, 0x52, 0x65, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x6e, 0x69, 0x6f, 0x6e, 0x69, 0x64, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x75, 0x6e, 0x69, 0x6f, 0x6e, 0x69, 0x64, 0x12, 0x16,
0x0a, 0x06, 0x62, 0x6f, 0x6f, 0x73, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06,
0x62, 0x6f, 0x6f, 0x73, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74,
0x18, 0x03, 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, 0x72, 0x0a,
0x1b, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x67, 0x76, 0x65, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e,
0x67, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07,
0x75, 0x6e, 0x69, 0x6f, 0x6e, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x75,
0x6e, 0x69, 0x6f, 0x6e, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x6f, 0x6f, 0x73, 0x69, 0x64,
0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x62, 0x6f, 0x6f, 0x73, 0x69, 0x64, 0x12, 0x21,
0x0a, 0x05, 0x61, 0x77, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
0x55, 0x73, 0x65, 0x72, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x05, 0x61, 0x77, 0x61, 0x72,
0x64, 0x22, 0x39, 0x0a, 0x16, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x67, 0x76, 0x65, 0x49, 0x6e, 0x66,
0x6f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1f, 0x0a, 0x04, 0x69,
0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x44, 0x42, 0x55, 0x6e,
0x69, 0x6f, 0x6e, 0x47, 0x76, 0x65, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x3a, 0x0a, 0x17,
0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x67, 0x76, 0x65, 0x53, 0x74, 0x61, 0x67, 0x65, 0x43, 0x68, 0x61,
0x6e, 0x67, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x44, 0x42, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x47,
0x76, 0x65, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x39, 0x0a, 0x16, 0x55, 0x6e, 0x69, 0x6f,
0x6e, 0x67, 0x76, 0x65, 0x42, 0x6f, 0x6f, 0x73, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x75,
0x73, 0x68, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x0b, 0x2e, 0x44, 0x42, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x47, 0x76, 0x65, 0x52, 0x04, 0x69,
0x6e, 0x66, 0x6f, 0x22, 0x1c, 0x0a, 0x1a, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x67, 0x76, 0x65, 0x52,
0x6f, 0x75, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x75, 0x73,
0x68, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x33,
}
var (
@ -1014,8 +1032,8 @@ var file_uniongve_uniongve_msg_proto_depIdxs = []int32{
18, // 2: UniongveRouletteResp.award:type_name -> UserAssets
19, // 3: UniongveChallengeReq.battle:type_name -> BattleFormation
20, // 4: UniongveChallengeResp.info:type_name -> BattleInfo
20, // 5: UniongveChallengeFinishRep.info:type_name -> BattleInfo
21, // 6: UniongveChallengeFinishResp.report:type_name -> BattleReport
21, // 5: UniongveChallengeFinishRep.report:type_name -> BattleReport
18, // 6: UniongveChallengeFinishResp.award:type_name -> UserAssets
17, // 7: UniongveInfoChangePush.info:type_name -> DBUnionGve
17, // 8: UniongveStageChangePush.info:type_name -> DBUnionGve
17, // 9: UniongveBoosChangePush.info:type_name -> DBUnionGve

View File

@ -13,6 +13,8 @@ import "errors"
type GamePayGiftpackData struct {
Id int32
Type int32
Type2 int32
Day int32
RepeatNum int32
Refreshtime int32
Packagetype string
@ -31,6 +33,8 @@ func (*GamePayGiftpackData) GetTypeId() int32 {
func (_v *GamePayGiftpackData)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["type"].(float64); !_ok_ { err = errors.New("type error"); return }; _v.Type = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["type2"].(float64); !_ok_ { err = errors.New("type2 error"); return }; _v.Type2 = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["day"].(float64); !_ok_ { err = errors.New("day error"); return }; _v.Day = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["repeat_num"].(float64); !_ok_ { err = errors.New("repeat_num error"); return }; _v.RepeatNum = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["refreshtime"].(float64); !_ok_ { err = errors.New("refreshtime error"); return }; _v.Refreshtime = int32(_tempNum_) }
{ var _ok_ bool; if _v.Packagetype, _ok_ = _buf["packagetype"].(string); !_ok_ { err = errors.New("packagetype error"); return } }