循环塔

This commit is contained in:
meixiongfeng 2024-01-15 18:34:33 +08:00
parent 2cbc0bd28c
commit 0cac3e17d6
12 changed files with 1713 additions and 123 deletions

View File

@ -315,9 +315,10 @@ const (
TableGuidance = "guidance"
//传功房
TablePasson = "passon"
// 阵营塔 循环塔
// 阵营塔
TableRacePagoda = "racepagoda"
//循环塔
TableCyclePagoda = "cyclepagoda"
//战令
TableWarorder = "warorder"

View File

@ -0,0 +1,116 @@
package pagoda
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
)
// 参数校验
func (this *apiComp) ChallengeCycleCheck(session comm.IUserSession, req *pb.PagodaChallengeCycleReq) (errdata *pb.ErrorData) {
if req.Floor <= 0 {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
}
return
}
return
}
// /六合塔开始挑战
func (this *apiComp) ChallengeCycle(session comm.IUserSession, req *pb.PagodaChallengeCycleReq) (errdata *pb.ErrorData) {
var (
pagoda *pb.DBPagodaCycle
err error
timeCheckOk bool
pType pb.PlayType
)
if errdata = this.ChallengeCycleCheck(session, req); errdata != nil {
return // 参数校验失败直接返回
}
pagoda, err = this.module.modelCyclePagoda.getPagodaCycleList(session.GetUserId())
if err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_PagodaNotFound,
Title: pb.ErrorCode_PagodaNotFound.ToString(),
}
return
}
conf, err := this.module.configure.GetPagodaCirculateConf(pagoda.Itype, req.Floor)
if err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_PagodaNotFound,
Title: pb.ErrorCode_PagodaNotFound.ToString(),
Message: err.Error(),
}
return
}
//判断开启时间
curWeekDay := int32(configure.Now().Weekday())
if curWeekDay == 0 {
curWeekDay = 7
}
if len(conf.Openingtime) == 0 {
timeCheckOk = true
} else {
for _, v := range conf.Openingtime {
if v == curWeekDay {
timeCheckOk = true
break
}
}
}
if !timeCheckOk {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_PagodaTimeError,
Title: pb.ErrorCode_PagodaTimeError.ToString(),
}
return
}
if _, ok := pagoda.Data[conf.Floors]; !ok {
if pagoda.Maxfloor+1 != conf.Floors {
errdata = &pb.ErrorData{ // 挑战关卡数据不匹配
Code: pb.ErrorCode_PagodaLevlErr,
Title: pb.ErrorCode_PagodaLevlErr.ToString(),
}
return
}
}
if pagoda.Battlecount > 9999 { // 暂时不做限制
errdata = &pb.ErrorData{ // 今日挑战达到上限
Code: pb.ErrorCode_PagodaMaxCount,
Title: pb.ErrorCode_PagodaMaxCount.ToString(),
}
return
}
errdata, record := this.module.battle.CreatePveBattle(session, &pb.BattlePVEReq{
Rulesid: conf.BattlereadyID,
Ptype: pType,
Title: "",
Format: req.Battle,
Mformat: conf.Monsterlineup,
})
if errdata != nil {
return
}
session.SendMsg(string(this.module.GetType()), "challengecycle", &pb.PagodaChallengeCycleResp{
Info: &pb.BattleInfo{
Id: record.Id,
Title: record.Title,
Rulesid: conf.BattlereadyID,
Btype: record.Btype,
Ptype: record.Ptype,
RedCompId: record.RedCompId,
Redflist: record.Redflist,
BlueCompId: record.BlueCompId,
Buleflist: record.Buleflist,
Tasks: record.Tasks,
},
Floor: req.Floor,
})
return
}

View File

@ -0,0 +1,158 @@
package pagoda
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
)
// 参数校验
func (this *apiComp) ChallengeCycleOverCheck(session comm.IUserSession, req *pb.PagodaChallengeCycleOverReq) (errdata *pb.ErrorData) {
if req.Floor <= 0 {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
}
return
}
return
}
// 六合塔挑战
func (this *apiComp) ChallengeCycleOver(session comm.IUserSession, req *pb.PagodaChallengeCycleOverReq) (errdata *pb.ErrorData) {
var (
mapData map[string]interface{}
list *pb.DBPagodaCycle
isWin bool
err error
atno []*pb.UserAtno // 通关奖励
award []*cfg.Gameatn
res []*cfg.Gameatn
changExp map[string]int32
costTime int32 // 耗时
new bool // 是否首次挑战
fresh bool // 刷新记录
)
changExp = make(map[string]int32, 0)
mapData = make(map[string]interface{}, 0)
if errdata = this.ChallengeCycleOverCheck(session, req); errdata != nil {
return // 参数校验失败直接返回
}
list, err = this.module.modelCyclePagoda.getPagodaCycleList(session.GetUserId())
if err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_PagodaNotFound,
Title: pb.ErrorCode_PagodaNotFound.ToString(),
}
return
}
conf, err := this.module.configure.GetPagodaCirculateConf(list.Itype, req.Floor)
if err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_PagodaNotFound,
Title: pb.ErrorCode_PagodaNotFound.ToString(),
Message: err.Error(),
}
return
}
// 校验通过
errdata, isWin = this.module.battle.CheckBattleReport(session, req.Report)
if errdata != nil {
return
}
if !isWin { // 战斗失败直接返回
errdata = &pb.ErrorData{
Code: pb.ErrorCode_BattleNoWin,
Title: pb.ErrorCode_BattleNoWin.ToString(),
}
return
}
costTime = req.Report.Costtime
if list.Data[conf.Floors].Consttime == 0 {
list.Data[conf.Floors].Consttime = costTime
fresh = true
list.Maxfloor = req.Floor
mapData["maxfloor"] = list.Maxfloor
}
list.Battlecount += 1
mapData["data"] = list.Data
mapData["battlecount"] = list.Battlecount
if err = this.module.modelCyclePagoda.ModifyPagodaCycleData(session.GetUserId(), mapData); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
}
if list.Data[conf.Floors].Consttime > costTime {
list.Data[conf.Floors].Consttime = costTime
fresh = true
}
var score int32
score = 10000*list.Maxfloor + (10000 - costTime)
szLine := make([]*pb.LineUp, 0)
var Leadpos int32
if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 {
Leadpos = req.Report.Info.Redflist[0].Leadpos
for _, v := range req.Report.Info.Redflist[0].Team {
if v != nil {
szLine = append(szLine, &pb.LineUp{
Cid: v.HeroID,
Star: v.Star,
Lv: v.Lv,
})
}
}
}
list.Data[conf.Floors].Line = &pb.LineData{
Leadpos: Leadpos,
Line: szLine,
}
if new {
if conf.Floors == 1 { // 写数据
this.module.modelCyclePagoda.addCrossPagodaCycle(session.GetUserId(), list)
}
res = append(res, conf.KeyReward...) // 首通奖励
}
// 校验是否刷新记录
if fresh || new {
this.module.modelCyclePagoda.SetCyclePagodaRankList(score, session.GetUserId())
mapData["data"] = list.Data
user, err := this.module.ModuleUser.GetUser(session.GetUserId())
if err == nil {
mapData["uinfo"] = comm.GetUserBaseInfo(user)
}
this.module.modelCyclePagoda.ModifyCrossPagodaCycleData(session.GetUserId(), mapData)
}
if conf.Exp > 0 {
var heroObjs []string
if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 {
for _, v := range req.Report.Info.Redflist[0].Team {
if v.Oid != "" && !v.Ishelp { // 助战英雄不加经验
heroObjs = append(heroObjs, v.Oid)
}
}
}
if changExp, award, errdata = this.module.ModuleHero.AddHerosExp(session, heroObjs, conf.Exp); errdata != nil {
return
}
res = append(res, award...)
}
res = append(res, conf.Reward...)
// 通关奖励
if errdata, atno = this.module.DispenseAtno(session, res, true); errdata != nil {
return
}
session.SendMsg(string(this.module.GetType()), "challengecycleover", &pb.PagodaChallengeCycleOverResp{
Data: list,
Reward: atno,
Heroexp: changExp,
})
return
}

View File

@ -0,0 +1,55 @@
package pagoda
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
)
//参数校验
func (this *apiComp) CrossCycleRankListCheck(session comm.IUserSession, req *pb.PagodaCrossCycleRankListReq) (errdata *pb.ErrorData) {
return
}
// 循环塔榜
func (this *apiComp) CrossCycleRankList(session comm.IUserSession, req *pb.PagodaCrossCycleRankListReq) (errdata *pb.ErrorData) {
var (
uids []string
err error
result []*pb.DBCyclePagodaRecord
ranks []*pb.DBCycleRank
)
if errdata = this.CrossCycleRankListCheck(session, req); errdata != nil {
return
}
if uids, err = this.module.modelCyclePagoda.queryRankUser(); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if result, err = this.module.modelCyclePagoda.queryPlayers(uids); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
for _, v := range result {
ranks = append(ranks, &pb.DBCycleRank{
Uinfo: v.Uinfo,
Line: v.Data[v.Maxfloor].Line,
Floor: v.Maxfloor,
Costtime: v.Data[v.Maxfloor].Consttime,
})
}
session.SendMsg(string(this.module.GetType()), "crosscycleranklist", &pb.PagodaCrossCycleRankListResp{
Ranks: ranks,
})
return
}

View File

@ -0,0 +1,54 @@
package pagoda
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
"go_dreamfactory/utils"
)
//参数校验
func (this *apiComp) GetCycleCheck(session comm.IUserSession, req *pb.PagodaGetCycleReq) (errdata *pb.ErrorData) {
return
}
///获取阵营爬塔信息
func (this *apiComp) GetCycle(session comm.IUserSession, req *pb.PagodaGetCycleReq) (errdata *pb.ErrorData) {
var (
list *pb.DBPagodaCycle
err error
update map[string]interface{}
)
list, err = this.module.modelCyclePagoda.getPagodaCycleList(session.GetUserId())
if err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if !utils.IsToday(list.Rtime) {
update = make(map[string]interface{}, 0)
list.Rtime = configure.Now().Unix()
list.Battlecount = 0
update["battlecount"] = list.Battlecount
update["rtime"] = list.Rtime
if err = this.module.modelCyclePagoda.ModifyPagodaCycleData(session.GetUserId(), update); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
}
}
session.SendMsg(string(this.module.GetType()), "getcycle", &pb.PagodaGetCycleResp{
Data: list,
})
return
}

View File

@ -28,7 +28,7 @@ type configureComp struct {
hlock sync.RWMutex
_mapPagoda map[int32]*cfg.GamePagodaData
_mapFloor map[int32]int32 // key 页签 value 层数
_mapRace map[int32]*cfg.GameCirculateData // 阵营塔
_mapCycle map[int32]*cfg.GameCirculateData // 阵营塔
circulate []int32
_mapSixReward map[int32][]*cfg.GameSixDirectionsRewardData // 六合塔奖励
@ -171,9 +171,9 @@ func (this *configureComp) LoadCirculate() {
if configure, ok := v.(*cfg.GameCirculate); ok {
this.hlock.Lock()
defer this.hlock.Unlock()
this._mapRace = make(map[int32]*cfg.GameCirculateData)
this._mapCycle = make(map[int32]*cfg.GameCirculateData)
for _, value := range configure.GetDataList() {
this._mapRace[value.Itype<<16+value.Floors] = value
this._mapCycle[value.Itype<<16+value.Floors] = value
if _, ok := _m[value.Itype]; !ok {
_m[value.Itype] = struct{}{}
@ -191,7 +191,7 @@ func (this *configureComp) LoadCirculate() {
func (this *configureComp) GetPagodaCirculateConf(restriction int32, floor int32) (data *cfg.GameCirculateData, err error) {
var ok bool
this.hlock.RLock()
data, ok = this._mapRace[restriction<<16+floor]
data, ok = this._mapCycle[restriction<<16+floor]
this.hlock.RUnlock()
if !ok {
err = comm.NewNotFoundConfErr("pagoda", game_circulate, fmt.Errorf("tab %d ,ly %d not found", restriction, floor))
@ -276,3 +276,47 @@ func (this *configureComp) GetSixDirectionsConf(boxid int32) (conf []*cfg.GameSi
this.hlock.RUnlock()
return
}
//# File: .github/workflows/repo-sync.yml
name: sync-sazs34-scripts
on:
schedule:
- cron: '5 0,7,15 * * *'
workflow_dispatch:
watch:
types: started
repository_dispatch:
types: sync-sazs34-scripts
jobs:
repo-sync:
env:
PAT: ${{ secrets.PAT || github.event.client_payload.PAT }} #此处PAT需要申请,教程详见:https://www.jianshu.com/p/bb82b3ad1d11
runs-on: ubuntu-latest
if: github.event.repository.owner.id == github.event.sender.id
steps:
- uses: actions/checkout@v2
with:
persist-credentials: false
- name: sync sazs34-scripts
uses: repo-sync/github-sync@v2
if: env.PAT
with:
source_repo: "https://github.com/sazs34/MyActions.git"
source_branch: "master"
destination_branch: "main"
github_token: ${{ secrets.PAT || github.event.client_payload.PAT }}
UPSTREAM_REPO=https://github.com/mx730129/auto-workflow-JD.com-jdcoin.git
BRANCHES=master:main
Resetting origin to: ***github.com/mxf007/tesjdcoin
Adding tmp_upstream https://github.com/mx730129/auto-workflow-JD.com-jdcoin.git
Fetching tmp_upstream
origin ***github.com/mxf007/tesjdcoin (fetch)
origin ***github.com/mxf007/tesjdcoin (push)
tmp_upstream https://github.com/mx730129/auto-workflow-JD.com-jdcoin.git (fetch)
tmp_upstream https://github.com/mx730129/auto-workflow-JD.com-jdcoin.git (push)
Pushing changings from tmp_upstream to origin
error: src refspec refs/remotes/tmp_upstream/master does not match any
error: failed to push some refs to '***github.com/mxf007/tesjdcoin'

View File

@ -0,0 +1,181 @@
package pagoda
import (
"context"
"fmt"
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/lego/sys/mgo"
"go_dreamfactory/lego/sys/redis/pipe"
"go_dreamfactory/modules"
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
"go_dreamfactory/sys/db"
"github.com/go-redis/redis/v8"
"go.mongodb.org/mongo-driver/bson/primitive"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/x/bsonx"
)
type ModelCycle struct {
modules.MCompModel
module *Pagoda
}
func (this *ModelCycle) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
this.TableName = string(comm.TableCyclePagoda)
err = this.MCompModel.Init(service, module, comp, options)
this.module = module.(*Pagoda)
//创建uid索引
this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{
Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}},
})
return
}
// 获取爬塔信息
func (this *ModelCycle) getPagodaCycleList(uid string) (result *pb.DBPagodaCycle, err error) {
result = &pb.DBPagodaCycle{}
if err = this.Get(uid, result); err != nil && err == mgo.MongodbNil { // 初始一条数据
result.Id = primitive.NewObjectID().Hex()
result.Uid = uid
result.Itype = 1
result.Rtime = configure.Now().Unix()
if conf, e := this.module.configure.GetPagodaCirculateConf(1, 1); e != nil {
result.Etime = configure.Now().Unix() + int64(conf.Time)*24*3600
} else {
err = fmt.Errorf("conf not found: %v", e.Error())
return
}
err = this.Add(uid, result)
return
}
return result, err
}
func (this *ModelCycle) ModifyPagodaCycleData(uid string, data map[string]interface{}) error {
return this.Change(uid, data)
}
func (this *ModelCycle) getCrossPagodaCycleList(uid string) (result *pb.DBPagodaCycle, err error) {
var (
model *db.DBModel
)
if model, err = this.module.GetCrossDBModel(this.TableName); err != nil {
return
}
result = &pb.DBPagodaCycle{}
if err = model.Get(uid, result); err != nil && err == mgo.MongodbNil { // 初始一条数据
result.Id = primitive.NewObjectID().Hex()
result.Uid = uid
result.Rtime = configure.Now().Unix()
if err = model.Add(uid, result); err != nil {
this.module.Errorf("err:%v", err)
return
}
return
}
return result, err
}
// 修改爬塔数据信息
func (this *ModelCycle) ModifyCrossPagodaCycleData(uid string, data map[string]interface{}) error {
var (
model *db.DBModel
err error
)
if model, err = this.module.GetCrossDBModel(this.TableName); err != nil {
return err
}
return model.Change(uid, data)
}
// 创建一个新的塔数据
func (this *ModelCycle) addCrossPagodaCycle(uId string, result *pb.DBPagodaCycle) (err error) {
var (
model *db.DBModel
)
if model, err = this.module.GetCrossDBModel(this.TableName); err != nil {
return
}
result.Id = primitive.NewObjectID().Hex()
result.Uid = uId
if err = model.Add(uId, result); err != nil {
this.module.Errorf("err:%v", err)
return
}
return nil
}
// 获取排行榜前50的用户名单 (跨服)
func (this *ModelCycle) queryRankUser() (ranks []string, err error) {
var (
result []string
model *db.DBModel
)
if model, err = this.module.GetCrossDBModel(this.TableName); err != nil {
return
}
tableName := fmt.Sprintf("%s-%s", db.CrossTag(), this.TableName)
if result, err = model.Redis.ZRevRange(tableName, 0, comm.MaxRankNum).Result(); err != nil {
//this.module.Errorln(err)
return
}
ranks = make([]string, 0)
for i := 0; i < len(result); i += 1 {
ranks = append(ranks, result[i])
}
return
}
func (this *ModelCycle) queryPlayers(uIds []string) (result []*pb.DBCyclePagodaRecord, err error) {
var (
model *db.DBModel
)
if model, err = this.module.GetCrossDBModel(this.TableName); err != nil {
return
}
result = make([]*pb.DBCyclePagodaRecord, 0)
if _, err = model.GetByUids(uIds, &result); err != nil && err != mgo.MongodbNil {
//this.module.Errorln(err)
return
}
return
}
// 六合塔记录 (存在跨服)
func (this *ModelCycle) SetCyclePagodaRankList(score int32, uid string) {
var (
pipe *pipe.RedisPipe
menbers *redis.Z
model *db.DBModel
err error
)
if model, err = this.module.GetCrossDBModel(this.TableName); err != nil {
return
}
tableName := fmt.Sprintf("%s-%s", db.CrossTag(), this.TableName)
pipe = model.Redis.RedisPipe(context.TODO())
menbers = &redis.Z{Score: float64(score), Member: uid}
if cmd := pipe.ZAdd(tableName, menbers); cmd != nil {
dock, err1 := cmd.Result()
if err1 != nil {
this.module.Errorln(dock, err1)
}
}
if _, err := pipe.Exec(); err != nil {
this.module.Errorln(err)
return
}
}

View File

@ -22,14 +22,15 @@ type Pagoda struct {
modules.ModuleBase
modelPagoda *ModelPagoda
//modelSeasonPagoda *ModelSeasonPagoda
api *apiComp
modulerank *ModelRank
configure *configureComp
battle comm.IBattle
service base.IRPCXService
mail comm.Imail
friend comm.IFriend
modelRacePagoda *ModelRace
api *apiComp
modulerank *ModelRank
configure *configureComp
battle comm.IBattle
service base.IRPCXService
mail comm.Imail
friend comm.IFriend
modelRacePagoda *ModelRace
modelCyclePagoda *ModelCycle
}
func NewModule() core.IModule {
@ -56,6 +57,7 @@ func (this *Pagoda) OnInstallComp() {
this.modulerank = this.RegisterComp(new(ModelRank)).(*ModelRank)
this.configure = this.RegisterComp(new(configureComp)).(*configureComp)
this.modelRacePagoda = this.RegisterComp(new(ModelRace)).(*ModelRace)
this.modelCyclePagoda = this.RegisterComp(new(ModelCycle)).(*ModelCycle)
}
// 接口信息

View File

@ -47,6 +47,7 @@ const (
EffectTipsType_Invincibility EffectTipsType = 21 //无敌
EffectTipsType_StealGain EffectTipsType = 22 //偷取增益
EffectTipsType_ShiftDebuff EffectTipsType = 23 //嫁接减益
EffectTipsType_Rebirth EffectTipsType = 24 //复活
)
// Enum value maps for EffectTipsType.
@ -76,6 +77,7 @@ var (
21: "Invincibility",
22: "StealGain",
23: "ShiftDebuff",
24: "Rebirth",
}
EffectTipsType_value = map[string]int32{
"Eff_Success": 0,
@ -102,6 +104,7 @@ var (
"Invincibility": 21,
"StealGain": 22,
"ShiftDebuff": 23,
"Rebirth": 24,
}
)
@ -2174,7 +2177,7 @@ var file_battle_battle_struct_proto_rawDesc = []byte{
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61,
0x6e, 0x69, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x6e,
0x69, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18,
0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x2a, 0xfb, 0x02,
0x04, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x2a, 0x88, 0x03,
0x0a, 0x0e, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x54, 0x69, 0x70, 0x73, 0x54, 0x79, 0x70, 0x65,
0x12, 0x0f, 0x0a, 0x0b, 0x45, 0x66, 0x66, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10,
0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x6f, 0x74, 0x5f, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73,
@ -2198,8 +2201,9 @@ var file_battle_battle_struct_proto_rawDesc = []byte{
0x72, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x10, 0x14, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x6e, 0x76, 0x69,
0x6e, 0x63, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x10, 0x15, 0x12, 0x0d, 0x0a, 0x09, 0x53,
0x74, 0x65, 0x61, 0x6c, 0x47, 0x61, 0x69, 0x6e, 0x10, 0x16, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x68,
0x69, 0x66, 0x74, 0x44, 0x65, 0x62, 0x75, 0x66, 0x66, 0x10, 0x17, 0x42, 0x06, 0x5a, 0x04, 0x2e,
0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x69, 0x66, 0x74, 0x44, 0x65, 0x62, 0x75, 0x66, 0x66, 0x10, 0x17, 0x12, 0x0b, 0x0a, 0x07, 0x52,
0x65, 0x62, 0x69, 0x72, 0x74, 0x68, 0x10, 0x18, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (

View File

@ -561,6 +561,316 @@ func (x *DBPagodaRace) GetUinfo() *BaseUserInfo {
return nil
}
// 循环塔
type DBPagodaCycle struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID
Data map[int32]*CycleData `protobuf:"bytes,3,rep,name=data,proto3" json:"data" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // value 时间
Maxfloor int32 `protobuf:"varint,4,opt,name=maxfloor,proto3" json:"maxfloor"` // 最大层数
Rtime int64 `protobuf:"varint,5,opt,name=rtime,proto3" json:"rtime"` // 刷新时间 客户端不用
Battlecount int32 `protobuf:"varint,6,opt,name=battlecount,proto3" json:"battlecount"` // 今日挑战次数
Itype int32 `protobuf:"varint,7,opt,name=itype,proto3" json:"itype"` // 类型
Etime int64 `protobuf:"varint,8,opt,name=etime,proto3" json:"etime"` // 结束时间
}
func (x *DBPagodaCycle) Reset() {
*x = DBPagodaCycle{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_db_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DBPagodaCycle) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DBPagodaCycle) ProtoMessage() {}
func (x *DBPagodaCycle) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_db_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DBPagodaCycle.ProtoReflect.Descriptor instead.
func (*DBPagodaCycle) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_db_proto_rawDescGZIP(), []int{6}
}
func (x *DBPagodaCycle) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *DBPagodaCycle) GetUid() string {
if x != nil {
return x.Uid
}
return ""
}
func (x *DBPagodaCycle) GetData() map[int32]*CycleData {
if x != nil {
return x.Data
}
return nil
}
func (x *DBPagodaCycle) GetMaxfloor() int32 {
if x != nil {
return x.Maxfloor
}
return 0
}
func (x *DBPagodaCycle) GetRtime() int64 {
if x != nil {
return x.Rtime
}
return 0
}
func (x *DBPagodaCycle) GetBattlecount() int32 {
if x != nil {
return x.Battlecount
}
return 0
}
func (x *DBPagodaCycle) GetItype() int32 {
if x != nil {
return x.Itype
}
return 0
}
func (x *DBPagodaCycle) GetEtime() int64 {
if x != nil {
return x.Etime
}
return 0
}
// 爬塔数据明细
type DBCyclePagodaRecord struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID
Uinfo *BaseUserInfo `protobuf:"bytes,3,opt,name=uinfo,proto3" json:"uinfo"` //用户基础
Data map[int32]*CycleData `protobuf:"bytes,4,rep,name=data,proto3" json:"data" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // key boss 类型
Maxfloor int32 `protobuf:"varint,5,opt,name=maxfloor,proto3" json:"maxfloor"` // 最高记录
}
func (x *DBCyclePagodaRecord) Reset() {
*x = DBCyclePagodaRecord{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_db_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DBCyclePagodaRecord) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DBCyclePagodaRecord) ProtoMessage() {}
func (x *DBCyclePagodaRecord) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_db_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DBCyclePagodaRecord.ProtoReflect.Descriptor instead.
func (*DBCyclePagodaRecord) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_db_proto_rawDescGZIP(), []int{7}
}
func (x *DBCyclePagodaRecord) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *DBCyclePagodaRecord) GetUid() string {
if x != nil {
return x.Uid
}
return ""
}
func (x *DBCyclePagodaRecord) GetUinfo() *BaseUserInfo {
if x != nil {
return x.Uinfo
}
return nil
}
func (x *DBCyclePagodaRecord) GetData() map[int32]*CycleData {
if x != nil {
return x.Data
}
return nil
}
func (x *DBCyclePagodaRecord) GetMaxfloor() int32 {
if x != nil {
return x.Maxfloor
}
return 0
}
type CycleData struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Consttime int32 `protobuf:"varint,1,opt,name=consttime,proto3" json:"consttime"` // 耗时
Line *LineData `protobuf:"bytes,2,opt,name=line,proto3" json:"line"` //
}
func (x *CycleData) Reset() {
*x = CycleData{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_db_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CycleData) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CycleData) ProtoMessage() {}
func (x *CycleData) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_db_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CycleData.ProtoReflect.Descriptor instead.
func (*CycleData) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_db_proto_rawDescGZIP(), []int{8}
}
func (x *CycleData) GetConsttime() int32 {
if x != nil {
return x.Consttime
}
return 0
}
func (x *CycleData) GetLine() *LineData {
if x != nil {
return x.Line
}
return nil
}
type DBCycleRank struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Uinfo *BaseUserInfo `protobuf:"bytes,21,opt,name=uinfo,proto3" json:"uinfo"` //用户基础
Line *LineData `protobuf:"bytes,2,opt,name=line,proto3" json:"line"` // 阵容信息
Floor int32 `protobuf:"varint,3,opt,name=floor,proto3" json:"floor"` // 层
Costtime int32 `protobuf:"varint,5,opt,name=costtime,proto3" json:"costtime"` // 耗时
}
func (x *DBCycleRank) Reset() {
*x = DBCycleRank{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_db_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DBCycleRank) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DBCycleRank) ProtoMessage() {}
func (x *DBCycleRank) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_db_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DBCycleRank.ProtoReflect.Descriptor instead.
func (*DBCycleRank) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_db_proto_rawDescGZIP(), []int{9}
}
func (x *DBCycleRank) GetUinfo() *BaseUserInfo {
if x != nil {
return x.Uinfo
}
return nil
}
func (x *DBCycleRank) GetLine() *LineData {
if x != nil {
return x.Line
}
return nil
}
func (x *DBCycleRank) GetFloor() int32 {
if x != nil {
return x.Floor
}
return 0
}
func (x *DBCycleRank) GetCosttime() int32 {
if x != nil {
return x.Costtime
}
return 0
}
var File_pagoda_pagoda_db_proto protoreflect.FileDescriptor
var file_pagoda_pagoda_db_proto_rawDesc = []byte{
@ -658,8 +968,55 @@ var file_pagoda_pagoda_db_proto_rawDesc = []byte{
0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79,
0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b,
0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x06, 0x5a, 0x04,
0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa4, 0x02, 0x0a,
0x0d, 0x44, 0x42, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x12, 0x0e,
0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10,
0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64,
0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18,
0x2e, 0x44, 0x42, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x2e, 0x44,
0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a,
0x0a, 0x08, 0x6d, 0x61, 0x78, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05,
0x52, 0x08, 0x6d, 0x61, 0x78, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x74,
0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x72, 0x74, 0x69, 0x6d, 0x65,
0x12, 0x20, 0x0a, 0x0b, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x63, 0x6f, 0x75,
0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28,
0x05, 0x52, 0x05, 0x69, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x74, 0x69, 0x6d,
0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x1a, 0x43,
0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x20, 0x0a,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x43,
0x79, 0x63, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
0x02, 0x38, 0x01, 0x22, 0xf1, 0x01, 0x0a, 0x13, 0x44, 0x42, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x50,
0x61, 0x67, 0x6f, 0x64, 0x61, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75,
0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x23, 0x0a,
0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42,
0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x75, 0x69, 0x6e,
0x66, 0x6f, 0x12, 0x32, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x1e, 0x2e, 0x44, 0x42, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61,
0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79,
0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x61, 0x78, 0x66, 0x6c, 0x6f,
0x6f, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6d, 0x61, 0x78, 0x66, 0x6c, 0x6f,
0x6f, 0x72, 0x1a, 0x43, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65,
0x79, 0x12, 0x20, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x0a, 0x2e, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x48, 0x0a, 0x09, 0x43, 0x79, 0x63, 0x6c, 0x65,
0x44, 0x61, 0x74, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x74, 0x69, 0x6d,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x74, 0x69,
0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x6c, 0x69, 0x6e,
0x65, 0x22, 0x83, 0x01, 0x0a, 0x0b, 0x44, 0x42, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x61, 0x6e,
0x6b, 0x12, 0x23, 0x0a, 0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52,
0x05, 0x75, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0x52,
0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x18, 0x03,
0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x63,
0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63,
0x6f, 0x73, 0x74, 0x74, 0x69, 0x6d, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@ -674,42 +1031,56 @@ func file_pagoda_pagoda_db_proto_rawDescGZIP() []byte {
return file_pagoda_pagoda_db_proto_rawDescData
}
var file_pagoda_pagoda_db_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
var file_pagoda_pagoda_db_proto_msgTypes = make([]protoimpl.MessageInfo, 17)
var file_pagoda_pagoda_db_proto_goTypes = []interface{}{
(*DBPagoda)(nil), // 0: DBPagoda
(*DBPagodaRecord)(nil), // 1: DBPagodaRecord
(*DBRacePagodaRecord)(nil), // 2: DBRacePagodaRecord
(*DBRaceRank)(nil), // 3: DBRaceRank
(*RaceData)(nil), // 4: RaceData
(*DBPagodaRace)(nil), // 5: DBPagodaRace
nil, // 6: DBPagoda.RewardEntry
nil, // 7: DBPagoda.DataEntry
nil, // 8: DBRacePagodaRecord.DataEntry
nil, // 9: DBPagodaRace.DataEntry
nil, // 10: DBPagodaRace.RewardEntry
(*LineUp)(nil), // 11: LineUp
(*BaseUserInfo)(nil), // 12: BaseUserInfo
(*LineData)(nil), // 13: LineData
(*DBPagoda)(nil), // 0: DBPagoda
(*DBPagodaRecord)(nil), // 1: DBPagodaRecord
(*DBRacePagodaRecord)(nil), // 2: DBRacePagodaRecord
(*DBRaceRank)(nil), // 3: DBRaceRank
(*RaceData)(nil), // 4: RaceData
(*DBPagodaRace)(nil), // 5: DBPagodaRace
(*DBPagodaCycle)(nil), // 6: DBPagodaCycle
(*DBCyclePagodaRecord)(nil), // 7: DBCyclePagodaRecord
(*CycleData)(nil), // 8: CycleData
(*DBCycleRank)(nil), // 9: DBCycleRank
nil, // 10: DBPagoda.RewardEntry
nil, // 11: DBPagoda.DataEntry
nil, // 12: DBRacePagodaRecord.DataEntry
nil, // 13: DBPagodaRace.DataEntry
nil, // 14: DBPagodaRace.RewardEntry
nil, // 15: DBPagodaCycle.DataEntry
nil, // 16: DBCyclePagodaRecord.DataEntry
(*LineUp)(nil), // 17: LineUp
(*BaseUserInfo)(nil), // 18: BaseUserInfo
(*LineData)(nil), // 19: LineData
}
var file_pagoda_pagoda_db_proto_depIdxs = []int32{
6, // 0: DBPagoda.reward:type_name -> DBPagoda.RewardEntry
7, // 1: DBPagoda.data:type_name -> DBPagoda.DataEntry
11, // 2: DBPagodaRecord.line:type_name -> LineUp
12, // 3: DBRacePagodaRecord.uinfo:type_name -> BaseUserInfo
8, // 4: DBRacePagodaRecord.data:type_name -> DBRacePagodaRecord.DataEntry
12, // 5: DBRaceRank.uinfo:type_name -> BaseUserInfo
13, // 6: DBRaceRank.line:type_name -> LineData
13, // 7: RaceData.line:type_name -> LineData
9, // 8: DBPagodaRace.data:type_name -> DBPagodaRace.DataEntry
10, // 9: DBPagodaRace.reward:type_name -> DBPagodaRace.RewardEntry
12, // 10: DBPagodaRace.uinfo:type_name -> BaseUserInfo
4, // 11: DBRacePagodaRecord.DataEntry.value:type_name -> RaceData
4, // 12: DBPagodaRace.DataEntry.value:type_name -> RaceData
13, // [13:13] is the sub-list for method output_type
13, // [13:13] is the sub-list for method input_type
13, // [13:13] is the sub-list for extension type_name
13, // [13:13] is the sub-list for extension extendee
0, // [0:13] is the sub-list for field type_name
10, // 0: DBPagoda.reward:type_name -> DBPagoda.RewardEntry
11, // 1: DBPagoda.data:type_name -> DBPagoda.DataEntry
17, // 2: DBPagodaRecord.line:type_name -> LineUp
18, // 3: DBRacePagodaRecord.uinfo:type_name -> BaseUserInfo
12, // 4: DBRacePagodaRecord.data:type_name -> DBRacePagodaRecord.DataEntry
18, // 5: DBRaceRank.uinfo:type_name -> BaseUserInfo
19, // 6: DBRaceRank.line:type_name -> LineData
19, // 7: RaceData.line:type_name -> LineData
13, // 8: DBPagodaRace.data:type_name -> DBPagodaRace.DataEntry
14, // 9: DBPagodaRace.reward:type_name -> DBPagodaRace.RewardEntry
18, // 10: DBPagodaRace.uinfo:type_name -> BaseUserInfo
15, // 11: DBPagodaCycle.data:type_name -> DBPagodaCycle.DataEntry
18, // 12: DBCyclePagodaRecord.uinfo:type_name -> BaseUserInfo
16, // 13: DBCyclePagodaRecord.data:type_name -> DBCyclePagodaRecord.DataEntry
19, // 14: CycleData.line:type_name -> LineData
18, // 15: DBCycleRank.uinfo:type_name -> BaseUserInfo
19, // 16: DBCycleRank.line:type_name -> LineData
4, // 17: DBRacePagodaRecord.DataEntry.value:type_name -> RaceData
4, // 18: DBPagodaRace.DataEntry.value:type_name -> RaceData
8, // 19: DBPagodaCycle.DataEntry.value:type_name -> CycleData
8, // 20: DBCyclePagodaRecord.DataEntry.value:type_name -> CycleData
21, // [21:21] is the sub-list for method output_type
21, // [21:21] is the sub-list for method input_type
21, // [21:21] is the sub-list for extension type_name
21, // [21:21] is the sub-list for extension extendee
0, // [0:21] is the sub-list for field type_name
}
func init() { file_pagoda_pagoda_db_proto_init() }
@ -792,6 +1163,54 @@ func file_pagoda_pagoda_db_proto_init() {
return nil
}
}
file_pagoda_pagoda_db_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DBPagodaCycle); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pagoda_pagoda_db_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DBCyclePagodaRecord); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pagoda_pagoda_db_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CycleData); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pagoda_pagoda_db_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DBCycleRank); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
@ -799,7 +1218,7 @@ func file_pagoda_pagoda_db_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_pagoda_pagoda_db_proto_rawDesc,
NumEnums: 0,
NumMessages: 11,
NumMessages: 17,
NumExtensions: 0,
NumServices: 0,
},

View File

@ -1321,6 +1321,405 @@ func (x *PagodaRaceRewardResp) GetReward() []*UserAtno {
return nil
}
type PagodaGetCycleReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *PagodaGetCycleReq) Reset() {
*x = PagodaGetCycleReq{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PagodaGetCycleReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PagodaGetCycleReq) ProtoMessage() {}
func (x *PagodaGetCycleReq) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[26]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PagodaGetCycleReq.ProtoReflect.Descriptor instead.
func (*PagodaGetCycleReq) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_msg_proto_rawDescGZIP(), []int{26}
}
type PagodaGetCycleResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Data *DBPagodaCycle `protobuf:"bytes,1,opt,name=data,proto3" json:"data"`
}
func (x *PagodaGetCycleResp) Reset() {
*x = PagodaGetCycleResp{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PagodaGetCycleResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PagodaGetCycleResp) ProtoMessage() {}
func (x *PagodaGetCycleResp) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[27]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PagodaGetCycleResp.ProtoReflect.Descriptor instead.
func (*PagodaGetCycleResp) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_msg_proto_rawDescGZIP(), []int{27}
}
func (x *PagodaGetCycleResp) GetData() *DBPagodaCycle {
if x != nil {
return x.Data
}
return nil
}
type PagodaChallengeCycleReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Floor int32 `protobuf:"varint,1,opt,name=floor,proto3" json:"floor"` // 层数
Battle *BattleFormation `protobuf:"bytes,3,opt,name=battle,proto3" json:"battle"`
}
func (x *PagodaChallengeCycleReq) Reset() {
*x = PagodaChallengeCycleReq{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PagodaChallengeCycleReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PagodaChallengeCycleReq) ProtoMessage() {}
func (x *PagodaChallengeCycleReq) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[28]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PagodaChallengeCycleReq.ProtoReflect.Descriptor instead.
func (*PagodaChallengeCycleReq) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_msg_proto_rawDescGZIP(), []int{28}
}
func (x *PagodaChallengeCycleReq) GetFloor() int32 {
if x != nil {
return x.Floor
}
return 0
}
func (x *PagodaChallengeCycleReq) GetBattle() *BattleFormation {
if x != nil {
return x.Battle
}
return nil
}
type PagodaChallengeCycleResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Info *BattleInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info"`
Floor int32 `protobuf:"varint,2,opt,name=floor,proto3" json:"floor"` // 层数
}
func (x *PagodaChallengeCycleResp) Reset() {
*x = PagodaChallengeCycleResp{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PagodaChallengeCycleResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PagodaChallengeCycleResp) ProtoMessage() {}
func (x *PagodaChallengeCycleResp) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[29]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PagodaChallengeCycleResp.ProtoReflect.Descriptor instead.
func (*PagodaChallengeCycleResp) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_msg_proto_rawDescGZIP(), []int{29}
}
func (x *PagodaChallengeCycleResp) GetInfo() *BattleInfo {
if x != nil {
return x.Info
}
return nil
}
func (x *PagodaChallengeCycleResp) GetFloor() int32 {
if x != nil {
return x.Floor
}
return 0
}
// 挑战Over
type PagodaChallengeCycleOverReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Floor int32 `protobuf:"varint,1,opt,name=floor,proto3" json:"floor"`
Report *BattleReport `protobuf:"bytes,2,opt,name=report,proto3" json:"report"` //战报
}
func (x *PagodaChallengeCycleOverReq) Reset() {
*x = PagodaChallengeCycleOverReq{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PagodaChallengeCycleOverReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PagodaChallengeCycleOverReq) ProtoMessage() {}
func (x *PagodaChallengeCycleOverReq) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[30]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PagodaChallengeCycleOverReq.ProtoReflect.Descriptor instead.
func (*PagodaChallengeCycleOverReq) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_msg_proto_rawDescGZIP(), []int{30}
}
func (x *PagodaChallengeCycleOverReq) GetFloor() int32 {
if x != nil {
return x.Floor
}
return 0
}
func (x *PagodaChallengeCycleOverReq) GetReport() *BattleReport {
if x != nil {
return x.Report
}
return nil
}
type PagodaChallengeCycleOverResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Data *DBPagodaCycle `protobuf:"bytes,1,opt,name=data,proto3" json:"data"`
Reward []*UserAtno `protobuf:"bytes,2,rep,name=reward,proto3" json:"reward"`
Heroexp map[string]int32 `protobuf:"bytes,3,rep,name=heroexp,proto3" json:"heroexp" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 英雄获得经验
}
func (x *PagodaChallengeCycleOverResp) Reset() {
*x = PagodaChallengeCycleOverResp{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[31]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PagodaChallengeCycleOverResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PagodaChallengeCycleOverResp) ProtoMessage() {}
func (x *PagodaChallengeCycleOverResp) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[31]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PagodaChallengeCycleOverResp.ProtoReflect.Descriptor instead.
func (*PagodaChallengeCycleOverResp) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_msg_proto_rawDescGZIP(), []int{31}
}
func (x *PagodaChallengeCycleOverResp) GetData() *DBPagodaCycle {
if x != nil {
return x.Data
}
return nil
}
func (x *PagodaChallengeCycleOverResp) GetReward() []*UserAtno {
if x != nil {
return x.Reward
}
return nil
}
func (x *PagodaChallengeCycleOverResp) GetHeroexp() map[string]int32 {
if x != nil {
return x.Heroexp
}
return nil
}
type PagodaCrossCycleRankListReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *PagodaCrossCycleRankListReq) Reset() {
*x = PagodaCrossCycleRankListReq{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[32]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PagodaCrossCycleRankListReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PagodaCrossCycleRankListReq) ProtoMessage() {}
func (x *PagodaCrossCycleRankListReq) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[32]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PagodaCrossCycleRankListReq.ProtoReflect.Descriptor instead.
func (*PagodaCrossCycleRankListReq) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_msg_proto_rawDescGZIP(), []int{32}
}
type PagodaCrossCycleRankListResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Ranks []*DBCycleRank `protobuf:"bytes,1,rep,name=ranks,proto3" json:"ranks"`
}
func (x *PagodaCrossCycleRankListResp) Reset() {
*x = PagodaCrossCycleRankListResp{}
if protoimpl.UnsafeEnabled {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[33]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PagodaCrossCycleRankListResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PagodaCrossCycleRankListResp) ProtoMessage() {}
func (x *PagodaCrossCycleRankListResp) ProtoReflect() protoreflect.Message {
mi := &file_pagoda_pagoda_msg_proto_msgTypes[33]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PagodaCrossCycleRankListResp.ProtoReflect.Descriptor instead.
func (*PagodaCrossCycleRankListResp) Descriptor() ([]byte, []int) {
return file_pagoda_pagoda_msg_proto_rawDescGZIP(), []int{33}
}
func (x *PagodaCrossCycleRankListResp) GetRanks() []*DBCycleRank {
if x != nil {
return x.Ranks
}
return nil
}
var File_pagoda_pagoda_msg_proto protoreflect.FileDescriptor
var file_pagoda_pagoda_msg_proto_rawDesc = []byte{
@ -1446,8 +1845,50 @@ var file_pagoda_pagoda_msg_proto_rawDesc = []byte{
0x44, 0x42, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x52, 0x61, 0x63, 0x65, 0x52, 0x04, 0x64, 0x61,
0x74, 0x61, 0x12, 0x21, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x74, 0x6e, 0x6f, 0x52, 0x06, 0x72,
0x65, 0x77, 0x61, 0x72, 0x64, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x33,
0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x13, 0x0a, 0x11, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x47,
0x65, 0x74, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x22, 0x38, 0x0a, 0x12, 0x50, 0x61,
0x67, 0x6f, 0x64, 0x61, 0x47, 0x65, 0x74, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70,
0x12, 0x22, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e,
0x2e, 0x44, 0x42, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x04,
0x64, 0x61, 0x74, 0x61, 0x22, 0x59, 0x0a, 0x17, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x68,
0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x12,
0x14, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x12, 0x28, 0x0a, 0x06, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x18,
0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f,
0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x22,
0x51, 0x0a, 0x18, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e,
0x67, 0x65, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x04, 0x69,
0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74,
0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05,
0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x66, 0x6c, 0x6f,
0x6f, 0x72, 0x22, 0x5a, 0x0a, 0x1b, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x68, 0x61, 0x6c,
0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x52, 0x65,
0x71, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
0x52, 0x05, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 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, 0xe7,
0x01, 0x0a, 0x1c, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e,
0x67, 0x65, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12,
0x22, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e,
0x44, 0x42, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x04, 0x64,
0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x74, 0x6e, 0x6f, 0x52, 0x06,
0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x44, 0x0a, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x78,
0x70, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x50, 0x61, 0x67, 0x6f, 0x64, 0x61,
0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x4f, 0x76,
0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x48, 0x65, 0x72, 0x6f, 0x65, 0x78, 0x70, 0x45, 0x6e,
0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x72, 0x6f, 0x65, 0x78, 0x70, 0x1a, 0x3a, 0x0a, 0x0c,
0x48, 0x65, 0x72, 0x6f, 0x65, 0x78, 0x70, 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, 0x1d, 0x0a, 0x1b, 0x50, 0x61, 0x67, 0x6f,
0x64, 0x61, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x61, 0x6e, 0x6b,
0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x42, 0x0a, 0x1c, 0x50, 0x61, 0x67, 0x6f, 0x64,
0x61, 0x43, 0x72, 0x6f, 0x73, 0x73, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x52, 0x61, 0x6e, 0x6b, 0x4c,
0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x22, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73,
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x44, 0x42, 0x43, 0x79, 0x63, 0x6c, 0x65,
0x52, 0x61, 0x6e, 0x6b, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e,
0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@ -1462,76 +1903,95 @@ func file_pagoda_pagoda_msg_proto_rawDescGZIP() []byte {
return file_pagoda_pagoda_msg_proto_rawDescData
}
var file_pagoda_pagoda_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 28)
var file_pagoda_pagoda_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 37)
var file_pagoda_pagoda_msg_proto_goTypes = []interface{}{
(*PagodaGetListReq)(nil), // 0: PagodaGetListReq
(*PagodaGetListResp)(nil), // 1: PagodaGetListResp
(*PagodaGetRewardReq)(nil), // 2: PagodaGetRewardReq
(*PagodaGetRewardResp)(nil), // 3: PagodaGetRewardResp
(*PagodaChallengeReq)(nil), // 4: PagodaChallengeReq
(*PagodaChallengeResp)(nil), // 5: PagodaChallengeResp
(*PagodaChallengeOverReq)(nil), // 6: PagodaChallengeOverReq
(*PagodaChallengeOverResp)(nil), // 7: PagodaChallengeOverResp
(*PagodaRankListReq)(nil), // 8: PagodaRankListReq
(*PagodaRankListResp)(nil), // 9: PagodaRankListResp
(*PagodaQueryRecordReq)(nil), // 10: PagodaQueryRecordReq
(*PagodaQueryRecordResp)(nil), // 11: PagodaQueryRecordResp
(*PagodaActivateReq)(nil), // 12: PagodaActivateReq
(*PagodaActivateResp)(nil), // 13: PagodaActivateResp
(*PagodaWarOrderReq)(nil), // 14: PagodaWarOrderReq
(*PagodaWarOrderResp)(nil), // 15: PagodaWarOrderResp
(*PagodaChallengeRaceReq)(nil), // 16: PagodaChallengeRaceReq
(*PagodaChallengeRaceResp)(nil), // 17: PagodaChallengeRaceResp
(*PagodaChallengeRaceOverReq)(nil), // 18: PagodaChallengeRaceOverReq
(*PagodaChallengeRaceOverResp)(nil), // 19: PagodaChallengeRaceOverResp
(*PagodaGetRaceReq)(nil), // 20: PagodaGetRaceReq
(*PagodaGetRaceResp)(nil), // 21: PagodaGetRaceResp
(*PagodaCrossRaceRankListReq)(nil), // 22: PagodaCrossRaceRankListReq
(*PagodaCrossRaceRankListResp)(nil), // 23: PagodaCrossRaceRankListResp
(*PagodaRaceRewardReq)(nil), // 24: PagodaRaceRewardReq
(*PagodaRaceRewardResp)(nil), // 25: PagodaRaceRewardResp
nil, // 26: PagodaChallengeOverResp.HeroexpEntry
nil, // 27: PagodaChallengeRaceOverResp.HeroexpEntry
(*DBPagoda)(nil), // 28: DBPagoda
(*UserAtno)(nil), // 29: UserAtno
(*BattleFormation)(nil), // 30: BattleFormation
(*BattleInfo)(nil), // 31: BattleInfo
(*BattleReport)(nil), // 32: BattleReport
(*DBPagodaRecord)(nil), // 33: DBPagodaRecord
(*UserAssets)(nil), // 34: UserAssets
(*DBPagodaRace)(nil), // 35: DBPagodaRace
(*DBRaceRank)(nil), // 36: DBRaceRank
(*PagodaGetListReq)(nil), // 0: PagodaGetListReq
(*PagodaGetListResp)(nil), // 1: PagodaGetListResp
(*PagodaGetRewardReq)(nil), // 2: PagodaGetRewardReq
(*PagodaGetRewardResp)(nil), // 3: PagodaGetRewardResp
(*PagodaChallengeReq)(nil), // 4: PagodaChallengeReq
(*PagodaChallengeResp)(nil), // 5: PagodaChallengeResp
(*PagodaChallengeOverReq)(nil), // 6: PagodaChallengeOverReq
(*PagodaChallengeOverResp)(nil), // 7: PagodaChallengeOverResp
(*PagodaRankListReq)(nil), // 8: PagodaRankListReq
(*PagodaRankListResp)(nil), // 9: PagodaRankListResp
(*PagodaQueryRecordReq)(nil), // 10: PagodaQueryRecordReq
(*PagodaQueryRecordResp)(nil), // 11: PagodaQueryRecordResp
(*PagodaActivateReq)(nil), // 12: PagodaActivateReq
(*PagodaActivateResp)(nil), // 13: PagodaActivateResp
(*PagodaWarOrderReq)(nil), // 14: PagodaWarOrderReq
(*PagodaWarOrderResp)(nil), // 15: PagodaWarOrderResp
(*PagodaChallengeRaceReq)(nil), // 16: PagodaChallengeRaceReq
(*PagodaChallengeRaceResp)(nil), // 17: PagodaChallengeRaceResp
(*PagodaChallengeRaceOverReq)(nil), // 18: PagodaChallengeRaceOverReq
(*PagodaChallengeRaceOverResp)(nil), // 19: PagodaChallengeRaceOverResp
(*PagodaGetRaceReq)(nil), // 20: PagodaGetRaceReq
(*PagodaGetRaceResp)(nil), // 21: PagodaGetRaceResp
(*PagodaCrossRaceRankListReq)(nil), // 22: PagodaCrossRaceRankListReq
(*PagodaCrossRaceRankListResp)(nil), // 23: PagodaCrossRaceRankListResp
(*PagodaRaceRewardReq)(nil), // 24: PagodaRaceRewardReq
(*PagodaRaceRewardResp)(nil), // 25: PagodaRaceRewardResp
(*PagodaGetCycleReq)(nil), // 26: PagodaGetCycleReq
(*PagodaGetCycleResp)(nil), // 27: PagodaGetCycleResp
(*PagodaChallengeCycleReq)(nil), // 28: PagodaChallengeCycleReq
(*PagodaChallengeCycleResp)(nil), // 29: PagodaChallengeCycleResp
(*PagodaChallengeCycleOverReq)(nil), // 30: PagodaChallengeCycleOverReq
(*PagodaChallengeCycleOverResp)(nil), // 31: PagodaChallengeCycleOverResp
(*PagodaCrossCycleRankListReq)(nil), // 32: PagodaCrossCycleRankListReq
(*PagodaCrossCycleRankListResp)(nil), // 33: PagodaCrossCycleRankListResp
nil, // 34: PagodaChallengeOverResp.HeroexpEntry
nil, // 35: PagodaChallengeRaceOverResp.HeroexpEntry
nil, // 36: PagodaChallengeCycleOverResp.HeroexpEntry
(*DBPagoda)(nil), // 37: DBPagoda
(*UserAtno)(nil), // 38: UserAtno
(*BattleFormation)(nil), // 39: BattleFormation
(*BattleInfo)(nil), // 40: BattleInfo
(*BattleReport)(nil), // 41: BattleReport
(*DBPagodaRecord)(nil), // 42: DBPagodaRecord
(*UserAssets)(nil), // 43: UserAssets
(*DBPagodaRace)(nil), // 44: DBPagodaRace
(*DBRaceRank)(nil), // 45: DBRaceRank
(*DBPagodaCycle)(nil), // 46: DBPagodaCycle
(*DBCycleRank)(nil), // 47: DBCycleRank
}
var file_pagoda_pagoda_msg_proto_depIdxs = []int32{
28, // 0: PagodaGetListResp.data:type_name -> DBPagoda
28, // 1: PagodaGetRewardResp.data:type_name -> DBPagoda
29, // 2: PagodaGetRewardResp.atno:type_name -> UserAtno
30, // 3: PagodaChallengeReq.battle:type_name -> BattleFormation
31, // 4: PagodaChallengeResp.info:type_name -> BattleInfo
32, // 5: PagodaChallengeOverReq.report:type_name -> BattleReport
28, // 6: PagodaChallengeOverResp.data:type_name -> DBPagoda
29, // 7: PagodaChallengeOverResp.reward:type_name -> UserAtno
26, // 8: PagodaChallengeOverResp.heroexp:type_name -> PagodaChallengeOverResp.HeroexpEntry
33, // 9: PagodaRankListResp.ranks:type_name -> DBPagodaRecord
33, // 10: PagodaQueryRecordResp.data:type_name -> DBPagodaRecord
28, // 11: PagodaActivateResp.data:type_name -> DBPagoda
28, // 12: PagodaWarOrderResp.data:type_name -> DBPagoda
34, // 13: PagodaWarOrderResp.itmes:type_name -> UserAssets
30, // 14: PagodaChallengeRaceReq.battle:type_name -> BattleFormation
31, // 15: PagodaChallengeRaceResp.info:type_name -> BattleInfo
32, // 16: PagodaChallengeRaceOverReq.report:type_name -> BattleReport
35, // 17: PagodaChallengeRaceOverResp.data:type_name -> DBPagodaRace
29, // 18: PagodaChallengeRaceOverResp.reward:type_name -> UserAtno
27, // 19: PagodaChallengeRaceOverResp.heroexp:type_name -> PagodaChallengeRaceOverResp.HeroexpEntry
35, // 20: PagodaGetRaceResp.data:type_name -> DBPagodaRace
36, // 21: PagodaCrossRaceRankListResp.ranks:type_name -> DBRaceRank
35, // 22: PagodaRaceRewardResp.data:type_name -> DBPagodaRace
29, // 23: PagodaRaceRewardResp.reward:type_name -> UserAtno
24, // [24:24] is the sub-list for method output_type
24, // [24:24] is the sub-list for method input_type
24, // [24:24] is the sub-list for extension type_name
24, // [24:24] is the sub-list for extension extendee
0, // [0:24] is the sub-list for field type_name
37, // 0: PagodaGetListResp.data:type_name -> DBPagoda
37, // 1: PagodaGetRewardResp.data:type_name -> DBPagoda
38, // 2: PagodaGetRewardResp.atno:type_name -> UserAtno
39, // 3: PagodaChallengeReq.battle:type_name -> BattleFormation
40, // 4: PagodaChallengeResp.info:type_name -> BattleInfo
41, // 5: PagodaChallengeOverReq.report:type_name -> BattleReport
37, // 6: PagodaChallengeOverResp.data:type_name -> DBPagoda
38, // 7: PagodaChallengeOverResp.reward:type_name -> UserAtno
34, // 8: PagodaChallengeOverResp.heroexp:type_name -> PagodaChallengeOverResp.HeroexpEntry
42, // 9: PagodaRankListResp.ranks:type_name -> DBPagodaRecord
42, // 10: PagodaQueryRecordResp.data:type_name -> DBPagodaRecord
37, // 11: PagodaActivateResp.data:type_name -> DBPagoda
37, // 12: PagodaWarOrderResp.data:type_name -> DBPagoda
43, // 13: PagodaWarOrderResp.itmes:type_name -> UserAssets
39, // 14: PagodaChallengeRaceReq.battle:type_name -> BattleFormation
40, // 15: PagodaChallengeRaceResp.info:type_name -> BattleInfo
41, // 16: PagodaChallengeRaceOverReq.report:type_name -> BattleReport
44, // 17: PagodaChallengeRaceOverResp.data:type_name -> DBPagodaRace
38, // 18: PagodaChallengeRaceOverResp.reward:type_name -> UserAtno
35, // 19: PagodaChallengeRaceOverResp.heroexp:type_name -> PagodaChallengeRaceOverResp.HeroexpEntry
44, // 20: PagodaGetRaceResp.data:type_name -> DBPagodaRace
45, // 21: PagodaCrossRaceRankListResp.ranks:type_name -> DBRaceRank
44, // 22: PagodaRaceRewardResp.data:type_name -> DBPagodaRace
38, // 23: PagodaRaceRewardResp.reward:type_name -> UserAtno
46, // 24: PagodaGetCycleResp.data:type_name -> DBPagodaCycle
39, // 25: PagodaChallengeCycleReq.battle:type_name -> BattleFormation
40, // 26: PagodaChallengeCycleResp.info:type_name -> BattleInfo
41, // 27: PagodaChallengeCycleOverReq.report:type_name -> BattleReport
46, // 28: PagodaChallengeCycleOverResp.data:type_name -> DBPagodaCycle
38, // 29: PagodaChallengeCycleOverResp.reward:type_name -> UserAtno
36, // 30: PagodaChallengeCycleOverResp.heroexp:type_name -> PagodaChallengeCycleOverResp.HeroexpEntry
47, // 31: PagodaCrossCycleRankListResp.ranks:type_name -> DBCycleRank
32, // [32:32] is the sub-list for method output_type
32, // [32:32] is the sub-list for method input_type
32, // [32:32] is the sub-list for extension type_name
32, // [32:32] is the sub-list for extension extendee
0, // [0:32] is the sub-list for field type_name
}
func init() { file_pagoda_pagoda_msg_proto_init() }
@ -1855,6 +2315,102 @@ func file_pagoda_pagoda_msg_proto_init() {
return nil
}
}
file_pagoda_pagoda_msg_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PagodaGetCycleReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pagoda_pagoda_msg_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PagodaGetCycleResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pagoda_pagoda_msg_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PagodaChallengeCycleReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pagoda_pagoda_msg_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PagodaChallengeCycleResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pagoda_pagoda_msg_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PagodaChallengeCycleOverReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pagoda_pagoda_msg_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PagodaChallengeCycleOverResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pagoda_pagoda_msg_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PagodaCrossCycleRankListReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_pagoda_pagoda_msg_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PagodaCrossCycleRankListResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
@ -1862,7 +2418,7 @@ func file_pagoda_pagoda_msg_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_pagoda_pagoda_msg_proto_rawDesc,
NumEnums: 0,
NumMessages: 28,
NumMessages: 37,
NumExtensions: 0,
NumServices: 0,
},