抽卡
This commit is contained in:
parent
8804225486
commit
3d80bf1af6
396
modules/hero/api_drawCardv2.go
Normal file
396
modules/hero/api_drawCardv2.go
Normal file
@ -0,0 +1,396 @@
|
|||||||
|
package hero
|
||||||
|
|
||||||
|
import (
|
||||||
|
"crypto/rand"
|
||||||
|
"go_dreamfactory/comm"
|
||||||
|
"go_dreamfactory/pb"
|
||||||
|
cfg "go_dreamfactory/sys/configure/structs"
|
||||||
|
"math/big"
|
||||||
|
)
|
||||||
|
|
||||||
|
func (this *apiComp) DrawCardV2Check(session comm.IUserSession, req *pb.HeroDrawCardReq) (errdata *pb.ErrorData) {
|
||||||
|
if req.DrawType < 0 && (req.DrawCount == 1 || req.DrawCount == 10) { // 只能是单抽或10抽
|
||||||
|
errdata = &pb.ErrorData{
|
||||||
|
Code: pb.ErrorCode_ReqParameterError,
|
||||||
|
Title: pb.ErrorCode_ReqParameterError.ToString(),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
//抽卡
|
||||||
|
func (this *apiComp) DrawCardV2(session comm.IUserSession, req *pb.HeroDrawCardReq) (errdata *pb.ErrorData) {
|
||||||
|
var (
|
||||||
|
szCards []string // 最终抽到的卡牌
|
||||||
|
drawCount int32 // 抽卡次数
|
||||||
|
szStar []int32 //星级
|
||||||
|
costRes []*cfg.Gameatn // 消耗
|
||||||
|
star4Max int32 // 10连抽最大4星数量
|
||||||
|
star5Max int32 // 10连抽最大5星数量
|
||||||
|
cfgDraw *cfg.GameGlobalData
|
||||||
|
costAtn *cfg.Gameatn
|
||||||
|
heroRecord *pb.DBHeroRecord
|
||||||
|
pool string // 当前抽对应的卡池
|
||||||
|
atno []*pb.UserAtno // 最终获得的资源
|
||||||
|
strPool []string // 10连跨多个卡池情况
|
||||||
|
update map[string]interface{}
|
||||||
|
normalDraw bool // 是否是普通抽
|
||||||
|
drawConf *cfg.GameDrawPoolData
|
||||||
|
err error
|
||||||
|
|
||||||
|
appointmap map[int32]string // 指定次数抽卡到指定卡池
|
||||||
|
)
|
||||||
|
appointmap = make(map[int32]string)
|
||||||
|
szCards = make([]string, 0)
|
||||||
|
heroRecord, _ = this.module.modelRecord.GetHeroRecord(session.GetUserId())
|
||||||
|
if heroRecord.Baodi4 == nil {
|
||||||
|
heroRecord.Baodi4 = make(map[int32]int32)
|
||||||
|
}
|
||||||
|
if heroRecord.Baodi5 == nil {
|
||||||
|
heroRecord.Baodi5 = make(map[int32]int32)
|
||||||
|
}
|
||||||
|
if heroRecord.Count == nil {
|
||||||
|
heroRecord.Count = make(map[int32]int32)
|
||||||
|
}
|
||||||
|
// 准备数据
|
||||||
|
/////////////////////////////////////
|
||||||
|
drawConf, err = this.module.configure.GetHeroDrawConfigByType(req.DrawType) // 获取新的抽卡配置
|
||||||
|
if err != nil {
|
||||||
|
errdata = &pb.ErrorData{
|
||||||
|
Code: pb.ErrorCode_ReqParameterError,
|
||||||
|
Title: pb.ErrorCode_ReqParameterError.ToString(),
|
||||||
|
Message: err.Error(),
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
for _, v := range drawConf.RecruitmentType {
|
||||||
|
appointmap[v.K] = v.S // 指定次抽数据
|
||||||
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////
|
||||||
|
update = make(map[string]interface{})
|
||||||
|
cfgDraw = this.module.ModuleTools.GetGlobalConf() // 读取抽卡配置文件
|
||||||
|
if cfgDraw == nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if errdata = this.DrawCardV2Check(session, req); errdata != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
drawCount = heroRecord.Count[req.DrawType] // 获取当前阵容抽卡次数
|
||||||
|
if req.DrawType == 0 { // 普通卡池抽卡
|
||||||
|
////// 获取消耗 star
|
||||||
|
if req.DrawCount == 1 {
|
||||||
|
costAtn = cfgDraw.BasePoolCost // 单抽消耗
|
||||||
|
} else {
|
||||||
|
costAtn = cfgDraw.BasePool10cost // 十连消耗
|
||||||
|
}
|
||||||
|
///// 获取消耗 end
|
||||||
|
for i := 1; i <= int(req.DrawCount); i++ { // 一张一张的抽
|
||||||
|
drawCount++
|
||||||
|
if v, ok := appointmap[drawCount]; ok { // 优先校验是否是指定抽
|
||||||
|
strPool = append(strPool, v) //找到了
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
|
||||||
|
}
|
||||||
|
if req.DrawType == 0 { // 普通卡池抽卡
|
||||||
|
normalDraw = true
|
||||||
|
// 获取普通抽卡池
|
||||||
|
if req.DrawCount == 1 {
|
||||||
|
costAtn = cfgDraw.BasePoolCost
|
||||||
|
} else {
|
||||||
|
costAtn = cfgDraw.BasePool10cost
|
||||||
|
}
|
||||||
|
costRes = append(costRes, costAtn)
|
||||||
|
if errdata = this.module.CheckRes(session, costRes); errdata != nil { // 消耗数量不足直接返回
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
for i := 0; i < int(req.DrawCount); i++ {
|
||||||
|
drawCount += 1
|
||||||
|
pool = this.module.modelHero.CheckPool(drawCount, cfgDraw)
|
||||||
|
|
||||||
|
strPool = append(strPool, pool)
|
||||||
|
ret := this.module.CheckCondition(session.GetUserId())
|
||||||
|
if ret == true { // 命中插入5星英雄
|
||||||
|
szStar = append(szStar, 5)
|
||||||
|
heroRecord.Star5 = 0 // 重置保底
|
||||||
|
star5Max++ // 记录当前 5星数量
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
// 3,4,5 星权重
|
||||||
|
starWeight := []int32{cfgDraw.BasePoolStar3, cfgDraw.BasePoolStar4, cfgDraw.BasePoolStar5}
|
||||||
|
|
||||||
|
starIndex := comm.GetRandW(starWeight) // 3 4 5 星索引
|
||||||
|
|
||||||
|
// 特殊规则 DrawCard_5StarsInRange 第2-30次抽奖必出一个5星英雄(普通卡池)
|
||||||
|
inRangeConf := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange
|
||||||
|
if len(inRangeConf) == 3 {
|
||||||
|
iStart := inRangeConf[0] // 抽卡开始
|
||||||
|
iEnd := inRangeConf[1] // 抽卡结束
|
||||||
|
star := inRangeConf[2]
|
||||||
|
if star >= 3 { // 保底必须三星+
|
||||||
|
if heroRecord.Inevitable == 0 && heroRecord.Drawcount > iStart && heroRecord.Drawcount < iEnd && iEnd >= iStart {
|
||||||
|
n, _ := rand.Int(rand.Reader, big.NewInt(int64(iEnd-iStart)))
|
||||||
|
if n.Int64() < 1 { // 抽中
|
||||||
|
starIndex = star - 3
|
||||||
|
heroRecord.Inevitable = heroRecord.Drawcount
|
||||||
|
update["inevitable"] = heroRecord.Drawcount
|
||||||
|
szStar = append(szStar, star)
|
||||||
|
if star == 4 {
|
||||||
|
heroRecord.Star4 = 0
|
||||||
|
star4Max++
|
||||||
|
} else if star == 5 {
|
||||||
|
star5Max++
|
||||||
|
heroRecord.Star5 = 0
|
||||||
|
}
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 保底情况
|
||||||
|
if heroRecord.Drawcount == iEnd && heroRecord.Inevitable == 0 {
|
||||||
|
starIndex = star - 3
|
||||||
|
heroRecord.Inevitable = heroRecord.Drawcount
|
||||||
|
update["inevitable"] = heroRecord.Drawcount
|
||||||
|
szStar = append(szStar, star)
|
||||||
|
if star == 4 {
|
||||||
|
heroRecord.Star4 = 0
|
||||||
|
star4Max++
|
||||||
|
} else if star == 5 {
|
||||||
|
star5Max++
|
||||||
|
heroRecord.Star5 = 0
|
||||||
|
}
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
inRangeConf1 := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1
|
||||||
|
if len(inRangeConf1) == 3 {
|
||||||
|
iStart := inRangeConf1[0] // 抽卡开始
|
||||||
|
iEnd := inRangeConf1[1] // 抽卡结束
|
||||||
|
star := inRangeConf1[2]
|
||||||
|
if star >= 3 { // 保底必须三星+
|
||||||
|
if heroRecord.Inevitable == 0 && heroRecord.Drawcount > iStart && heroRecord.Drawcount < iEnd && iEnd >= iStart {
|
||||||
|
n, _ := rand.Int(rand.Reader, big.NewInt(int64(iEnd-iStart)))
|
||||||
|
if n.Int64() < 1 { // 抽中
|
||||||
|
starIndex = star - 3
|
||||||
|
heroRecord.Inevitable = heroRecord.Drawcount
|
||||||
|
update["inevitable1"] = heroRecord.Drawcount
|
||||||
|
szStar = append(szStar, star)
|
||||||
|
if star == 4 {
|
||||||
|
heroRecord.Star4 = 0
|
||||||
|
star4Max++
|
||||||
|
} else if star == 5 {
|
||||||
|
star5Max++
|
||||||
|
heroRecord.Star5 = 0
|
||||||
|
}
|
||||||
|
// 修改卡池
|
||||||
|
newPoll := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1Pool
|
||||||
|
if newPoll != "" {
|
||||||
|
strPool[len(strPool)-1] = newPoll
|
||||||
|
}
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 保底情况
|
||||||
|
if heroRecord.Drawcount == iEnd && heroRecord.Inevitable == 0 {
|
||||||
|
starIndex = star - 3
|
||||||
|
heroRecord.Inevitable1 = heroRecord.Drawcount
|
||||||
|
update["inevitable1"] = heroRecord.Drawcount
|
||||||
|
szStar = append(szStar, star)
|
||||||
|
if star == 4 {
|
||||||
|
heroRecord.Star4 = 0
|
||||||
|
star4Max++
|
||||||
|
} else if star == 5 {
|
||||||
|
star5Max++
|
||||||
|
heroRecord.Star5 = 0
|
||||||
|
}
|
||||||
|
// 修改卡池
|
||||||
|
newPoll := this.module.ModuleTools.GetGlobalConf().DrawCard5StarsInRange1Pool
|
||||||
|
if newPoll != "" {
|
||||||
|
strPool[len(strPool)-1] = newPoll
|
||||||
|
}
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
heroRecord.Star4++ // 4星保底数量+1
|
||||||
|
heroRecord.Star5++ // 5星保底数量+1
|
||||||
|
if starIndex == 1 {
|
||||||
|
heroRecord.Star4 = 0
|
||||||
|
star4Max++
|
||||||
|
} else if starIndex == 2 {
|
||||||
|
star5Max++
|
||||||
|
heroRecord.Star5 = 0
|
||||||
|
}
|
||||||
|
if star4Max >= cfgDraw.Draw10Star4Max || star5Max >= cfgDraw.Draw10Star5Max { // 达到10连抽最大(4,5星)数量 直接给三星
|
||||||
|
starIndex = 0
|
||||||
|
} else {
|
||||||
|
// 普通卡池保底
|
||||||
|
if cfgDraw.DrawFloorStar4 <= heroRecord.Star4 {
|
||||||
|
heroRecord.Star4 = 0
|
||||||
|
starIndex = 1
|
||||||
|
}
|
||||||
|
if cfgDraw.DrawFloorStar5 <= heroRecord.Star5 {
|
||||||
|
heroRecord.Star5 = 0
|
||||||
|
starIndex = 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
szStar = append(szStar, starIndex+3)
|
||||||
|
if len(szStar) >= int(req.DrawCount) {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else { // 所有阵营抽卡都走这里
|
||||||
|
drawCount += req.DrawCount
|
||||||
|
if req.DrawCount == 1 {
|
||||||
|
switch req.DrawType {
|
||||||
|
case 1:
|
||||||
|
pool = cfgDraw.Camp1Pool1
|
||||||
|
|
||||||
|
costAtn = cfgDraw.Camp1PoolCost
|
||||||
|
|
||||||
|
case 2:
|
||||||
|
pool = cfgDraw.Camp2Pool1
|
||||||
|
costAtn = cfgDraw.Camp2PoolCost
|
||||||
|
case 3:
|
||||||
|
pool = cfgDraw.Camp3Pool1
|
||||||
|
costAtn = cfgDraw.Camp3PoolCost
|
||||||
|
case 4:
|
||||||
|
pool = cfgDraw.Camp4Pool1
|
||||||
|
costAtn = cfgDraw.Camp4PoolCost
|
||||||
|
}
|
||||||
|
strPool = append(strPool, pool)
|
||||||
|
} else {
|
||||||
|
costAtn = cfgDraw.Camp1PoolCost
|
||||||
|
switch req.DrawType {
|
||||||
|
case 1:
|
||||||
|
pool = cfgDraw.Camp1Pool1
|
||||||
|
costAtn = cfgDraw.Camp1Pool10cost
|
||||||
|
|
||||||
|
case 2:
|
||||||
|
pool = cfgDraw.Camp2Pool1
|
||||||
|
costAtn = cfgDraw.Camp2Pool10cost
|
||||||
|
case 3:
|
||||||
|
pool = cfgDraw.Camp3Pool1
|
||||||
|
costAtn = cfgDraw.Camp3Pool10cost
|
||||||
|
case 4:
|
||||||
|
pool = cfgDraw.Camp4Pool1
|
||||||
|
costAtn = cfgDraw.Camp4Pool10cost
|
||||||
|
}
|
||||||
|
for i := 0; i < int(req.DrawCount); i++ {
|
||||||
|
strPool = append(strPool, pool)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
costRes = append(costRes, costAtn)
|
||||||
|
|
||||||
|
//阵营消耗
|
||||||
|
if errdata = this.module.CheckRes(session, costRes); errdata != nil { // 消耗数量不足直接返回
|
||||||
|
return
|
||||||
|
}
|
||||||
|
for {
|
||||||
|
starWeight := []int32{cfgDraw.CampPoolStar3, cfgDraw.CampPoolStar4, cfgDraw.CampPoolStar5}
|
||||||
|
|
||||||
|
starIndex := comm.GetRandW(starWeight)
|
||||||
|
if starIndex == 1 {
|
||||||
|
star4Max++
|
||||||
|
} else if starIndex == 2 {
|
||||||
|
star5Max++
|
||||||
|
}
|
||||||
|
if star4Max >= cfgDraw.Draw10Star4Max || star5Max >= cfgDraw.Draw10Star5Max {
|
||||||
|
starIndex = 0
|
||||||
|
}
|
||||||
|
szStar = append(szStar, starIndex)
|
||||||
|
if len(szStar) >= int(req.DrawCount) {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for index, star := range szStar {
|
||||||
|
|
||||||
|
_data, err := this.module.configure.GetPollByType(strPool[index])
|
||||||
|
if err != nil {
|
||||||
|
errdata = &pb.ErrorData{
|
||||||
|
Code: pb.ErrorCode_ConfigNoFound,
|
||||||
|
Title: pb.ErrorCode_ConfigNoFound.ToString(),
|
||||||
|
Message: err.Error(),
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
sz := make([]int32, 0)
|
||||||
|
for _, v := range _data[int32(star)] {
|
||||||
|
sz = append(sz, v.Weight)
|
||||||
|
}
|
||||||
|
randomIndex := comm.GetRandW(sz)
|
||||||
|
|
||||||
|
if v, ok := _data[int32(star)]; ok {
|
||||||
|
if int32(len(v)) > randomIndex {
|
||||||
|
cardId := v[randomIndex].Id
|
||||||
|
if star == 5 { // 抽出5星英雄后A次抽奖内不会再抽到5星英雄(普通卡池+阵营卡池)
|
||||||
|
curDrawCount := drawCount - req.DrawCount
|
||||||
|
if drawCount <= 10 { // 前10次不计算(连续抽卡最多连续出A个相同阵营的英雄)
|
||||||
|
szCards = append(szCards, cardId)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
newID := this.module.ContinuousRestriction(session.GetUserId(), cardId, curDrawCount+int32(index+1), strPool[index])
|
||||||
|
szCards = append(szCards, newID)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
szCards = append(szCards, cardId)
|
||||||
|
// 普通卡池 最多连续出A个相同阵营的英雄
|
||||||
|
if req.DrawType == 0 {
|
||||||
|
newId := this.module.DrawCardContinuousRestrictionCamp(cardId, heroRecord.Race, sz, v)
|
||||||
|
if cardId != newId {
|
||||||
|
szCards[len(szCards)-1] = newId
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 消耗道具
|
||||||
|
if errdata = this.module.ConsumeRes(session, costRes, true); errdata != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
heroRecord.Totalcount += req.DrawCount
|
||||||
|
heroRecord.Daycount += req.DrawCount
|
||||||
|
update["star4"] = heroRecord.Star4
|
||||||
|
update["star5"] = heroRecord.Star5
|
||||||
|
update["drawcount"] = drawCount
|
||||||
|
update["totalcount"] = heroRecord.Totalcount
|
||||||
|
update["daycount"] = heroRecord.Daycount
|
||||||
|
this.module.modelRecord.ChangeHeroRecord(session.GetUserId(), update)
|
||||||
|
rsp := &pb.HeroDrawCardResp{
|
||||||
|
Data: []*pb.AtnoData{},
|
||||||
|
}
|
||||||
|
for _, heroId := range szCards {
|
||||||
|
|
||||||
|
if errdata, atno = this.module.DispenseAtno(session, []*cfg.Gameatn{{
|
||||||
|
A: "hero",
|
||||||
|
T: heroId,
|
||||||
|
N: 1,
|
||||||
|
}}, true); errdata == nil {
|
||||||
|
|
||||||
|
rsp.Data = append(rsp.Data, &pb.AtnoData{Atno: atno})
|
||||||
|
for _, v := range atno {
|
||||||
|
if v.A == "hero" && v.N == 1 {
|
||||||
|
if user := this.module.ModuleUser.GetUser(session.GetUserId()); user != nil { // 广播 首次获得英雄
|
||||||
|
this.chat.SendSysChatToWorld(comm.ChatSystem13, nil, 0, 0, user.Name, v.T)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
session.SendMsg(string(this.module.GetType()), DrawCard, rsp)
|
||||||
|
// 任务统计
|
||||||
|
this.module.SendTaskMsg(session, szStar, req.DrawCount, normalDraw)
|
||||||
|
return
|
||||||
|
}
|
@ -411,3 +411,53 @@ func (this *configureComp) GetHeroMaxLv(star int32) int32 {
|
|||||||
|
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
|
<<<<<<< Updated upstream
|
||||||
|
=======
|
||||||
|
func (this *configureComp) GetHeroTalentMaxLv(heroid string) (maxlv int32) {
|
||||||
|
if v, err := this.GetConfigure(hero_talentbox); err == nil {
|
||||||
|
if configure, ok := v.(*cfg.GameTalentBox); ok {
|
||||||
|
return int32(len(configure.GetDataList()))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
// id: 1 表示普通抽 2表示阵营1 3表示阵营2 ...
|
||||||
|
func (this *configureComp) GetHeroDrawConfigByType(id int32) (data *cfg.GameDrawPoolData, err error) {
|
||||||
|
var (
|
||||||
|
v interface{}
|
||||||
|
)
|
||||||
|
|
||||||
|
if v, err = this.GetConfigure(hero_draw); err == nil {
|
||||||
|
if conf, ok := v.(*cfg.GameDrawPool); ok {
|
||||||
|
if data = conf.Get(id - 1); data != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
err = comm.NewNotFoundConfErr(moduleName, hero_draw, id)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (this *configureComp) GetHeroDrawWeightConfigById(id int32) (data *cfg.GameDrawWeightData, err error) {
|
||||||
|
var (
|
||||||
|
v interface{}
|
||||||
|
)
|
||||||
|
if id > 0 {
|
||||||
|
if v, err = this.GetConfigure(hero_cardweight); err == nil {
|
||||||
|
if conf, ok := v.(*cfg.GameDrawWeight); ok {
|
||||||
|
if data = conf.Get(id); data != nil {
|
||||||
|
return
|
||||||
|
} else {
|
||||||
|
if len(conf.GetDataList()) > 0 {
|
||||||
|
data = conf.GetDataList()[len(conf.GetDataList())-1]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
err = comm.NewNotFoundConfErr(moduleName, hero_draw, id)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
>>>>>>> Stashed changes
|
||||||
|
@ -32,6 +32,9 @@ func (this *ModelRecord) GetHeroRecord(uid string) (result *pb.DBHeroRecord, err
|
|||||||
result.Condition = map[string]int32{}
|
result.Condition = map[string]int32{}
|
||||||
result.Star5Hero = map[string]int32{}
|
result.Star5Hero = map[string]int32{}
|
||||||
result.Race = map[int32]int32{}
|
result.Race = map[int32]int32{}
|
||||||
|
result.Baodi4 = map[int32]int32{}
|
||||||
|
result.Baodi5 = map[int32]int32{}
|
||||||
|
result.Count = map[int32]int32{}
|
||||||
result.Mtime = configure.Now().Unix()
|
result.Mtime = configure.Now().Unix()
|
||||||
this.Add(uid, result)
|
this.Add(uid, result)
|
||||||
err = nil
|
err = nil
|
||||||
|
170
pb/hero_db.pb.go
170
pb/hero_db.pb.go
@ -361,8 +361,8 @@ type DBHeroRecord struct {
|
|||||||
|
|
||||||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID 主键id
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID 主键id
|
||||||
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID
|
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID
|
||||||
Star4 int32 `protobuf:"varint,3,opt,name=star4,proto3" json:"star4"` // 4星保底
|
Star4 int32 `protobuf:"varint,3,opt,name=star4,proto3" json:"star4"` // 4星保底 -- 新版抽卡废弃字段
|
||||||
Star5 int32 `protobuf:"varint,4,opt,name=star5,proto3" json:"star5"` // 5星保底
|
Star5 int32 `protobuf:"varint,4,opt,name=star5,proto3" json:"star5"` // 5星保底 -- 新版抽卡废弃字段
|
||||||
Mtime int64 `protobuf:"varint,5,opt,name=mtime,proto3" json:"mtime"` // 修改时间
|
Mtime int64 `protobuf:"varint,5,opt,name=mtime,proto3" json:"mtime"` // 修改时间
|
||||||
Drawcount int32 `protobuf:"varint,6,opt,name=drawcount,proto3" json:"drawcount"` // 普通卡牌累计抽取次数
|
Drawcount int32 `protobuf:"varint,6,opt,name=drawcount,proto3" json:"drawcount"` // 普通卡牌累计抽取次数
|
||||||
Condition map[string]int32 `protobuf:"bytes,7,rep,name=condition,proto3" json:"condition" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key recharge、login 等 value 累计抽卡次数
|
Condition map[string]int32 `protobuf:"bytes,7,rep,name=condition,proto3" json:"condition" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key recharge、login 等 value 累计抽卡次数
|
||||||
@ -374,6 +374,9 @@ type DBHeroRecord struct {
|
|||||||
Inevitable int32 `protobuf:"varint,13,opt,name=inevitable,proto3" json:"inevitable"` //第2-30次抽奖必出一个5星英雄
|
Inevitable int32 `protobuf:"varint,13,opt,name=inevitable,proto3" json:"inevitable"` //第2-30次抽奖必出一个5星英雄
|
||||||
Inevitable1 int32 `protobuf:"varint,14,opt,name=inevitable1,proto3" json:"inevitable1"` //第30-50次抽奖必出一个5星英雄
|
Inevitable1 int32 `protobuf:"varint,14,opt,name=inevitable1,proto3" json:"inevitable1"` //第30-50次抽奖必出一个5星英雄
|
||||||
Race map[int32]int32 `protobuf:"bytes,15,rep,name=race,proto3" json:"race" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key 阵营类型 value count
|
Race map[int32]int32 `protobuf:"bytes,15,rep,name=race,proto3" json:"race" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key 阵营类型 value count
|
||||||
|
Baodi4 map[int32]int32 `protobuf:"bytes,16,rep,name=baodi4,proto3" json:"baodi4" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 4星保底次数 key 阵营类型 value count
|
||||||
|
Baodi5 map[int32]int32 `protobuf:"bytes,17,rep,name=baodi5,proto3" json:"baodi5" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 5星保底次数 key 阵营类型 value count
|
||||||
|
Count map[int32]int32 `protobuf:"bytes,18,rep,name=count,proto3" json:"count" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 抽卡次数 key 阵营类型 value count
|
||||||
}
|
}
|
||||||
|
|
||||||
func (x *DBHeroRecord) Reset() {
|
func (x *DBHeroRecord) Reset() {
|
||||||
@ -513,6 +516,27 @@ func (x *DBHeroRecord) GetRace() map[int32]int32 {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (x *DBHeroRecord) GetBaodi4() map[int32]int32 {
|
||||||
|
if x != nil {
|
||||||
|
return x.Baodi4
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DBHeroRecord) GetBaodi5() map[int32]int32 {
|
||||||
|
if x != nil {
|
||||||
|
return x.Baodi5
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (x *DBHeroRecord) GetCount() map[int32]int32 {
|
||||||
|
if x != nil {
|
||||||
|
return x.Count
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
// 英雄天赋系统
|
// 英雄天赋系统
|
||||||
type DBHeroTalent struct {
|
type DBHeroTalent struct {
|
||||||
state protoimpl.MessageState
|
state protoimpl.MessageState
|
||||||
@ -681,6 +705,7 @@ var file_hero_hero_db_proto_rawDesc = []byte{
|
|||||||
0x74, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
|
0x74, 0x74, 0x65, 0x72, 0x73, 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,
|
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,
|
0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c,
|
||||||
|
<<<<<<< Updated upstream
|
||||||
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x98, 0x05, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72,
|
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x98, 0x05, 0x0a, 0x0c, 0x44, 0x42, 0x48, 0x65, 0x72,
|
||||||
0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
|
0x6f, 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,
|
0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02,
|
||||||
@ -739,6 +764,99 @@ var file_hero_hero_db_proto_rawDesc = []byte{
|
|||||||
0x70, 0x65, 0x4e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x54,
|
0x70, 0x65, 0x4e, 0x69, 0x6c, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x54,
|
||||||
0x79, 0x70, 0x65, 0x4b, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e,
|
0x79, 0x70, 0x65, 0x4b, 0x6f, 0x6e, 0x67, 0x46, 0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e,
|
||||||
0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||||
|
=======
|
||||||
|
0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x41, 0x0a, 0x13, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74,
|
||||||
|
0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
|
||||||
|
0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
|
||||||
|
0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
|
||||||
|
0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x44, 0x0a, 0x16, 0x48, 0x6f, 0x72,
|
||||||
|
0x6f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x6e,
|
||||||
|
0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
||||||
|
0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
|
||||||
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a,
|
||||||
|
0x3a, 0x0a, 0x0c, 0x46, 0x65, 0x74, 0x74, 0x65, 0x72, 0x73, 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, 0xde, 0x07, 0x0a, 0x0c,
|
||||||
|
0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 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, 0x14,
|
||||||
|
0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x34, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73,
|
||||||
|
0x74, 0x61, 0x72, 0x34, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x18, 0x04, 0x20,
|
||||||
|
0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x35, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x74,
|
||||||
|
0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x6d, 0x74, 0x69, 0x6d, 0x65,
|
||||||
|
0x12, 0x1c, 0x0a, 0x09, 0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20,
|
||||||
|
0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x72, 0x61, 0x77, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3a,
|
||||||
|
0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28,
|
||||||
|
0x0b, 0x32, 0x1c, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
|
||||||
|
0x2e, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
|
||||||
|
0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x0a, 0x09, 0x73, 0x74,
|
||||||
|
0x61, 0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e,
|
||||||
|
0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x53, 0x74, 0x61,
|
||||||
|
0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x73, 0x74, 0x61,
|
||||||
|
0x72, 0x35, 0x48, 0x65, 0x72, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x63,
|
||||||
|
0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61,
|
||||||
|
0x6c, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x79, 0x63, 0x6f, 0x75,
|
||||||
|
0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x64, 0x61, 0x79, 0x63, 0x6f, 0x75,
|
||||||
|
0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x18, 0x0b, 0x20, 0x01,
|
||||||
|
0x28, 0x05, 0x52, 0x06, 0x6f, 0x6e, 0x65, 0x62, 0x75, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65,
|
||||||
|
0x6e, 0x62, 0x75, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x62,
|
||||||
|
0x75, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6e, 0x65, 0x76, 0x69, 0x74, 0x61, 0x62, 0x6c, 0x65,
|
||||||
|
0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x69, 0x6e, 0x65, 0x76, 0x69, 0x74, 0x61, 0x62,
|
||||||
|
0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x65, 0x76, 0x69, 0x74, 0x61, 0x62, 0x6c, 0x65,
|
||||||
|
0x31, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x69, 0x6e, 0x65, 0x76, 0x69, 0x74, 0x61,
|
||||||
|
0x62, 0x6c, 0x65, 0x31, 0x12, 0x2b, 0x0a, 0x04, 0x72, 0x61, 0x63, 0x65, 0x18, 0x0f, 0x20, 0x03,
|
||||||
|
0x28, 0x0b, 0x32, 0x17, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72,
|
||||||
|
0x64, 0x2e, 0x52, 0x61, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x72, 0x61, 0x63,
|
||||||
|
0x65, 0x12, 0x31, 0x0a, 0x06, 0x62, 0x61, 0x6f, 0x64, 0x69, 0x34, 0x18, 0x10, 0x20, 0x03, 0x28,
|
||||||
|
0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
|
||||||
|
0x2e, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x34, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x62, 0x61,
|
||||||
|
0x6f, 0x64, 0x69, 0x34, 0x12, 0x31, 0x0a, 0x06, 0x62, 0x61, 0x6f, 0x64, 0x69, 0x35, 0x18, 0x11,
|
||||||
|
0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x63,
|
||||||
|
0x6f, 0x72, 0x64, 0x2e, 0x42, 0x61, 0x6f, 0x64, 0x69, 0x35, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
|
||||||
|
0x06, 0x62, 0x61, 0x6f, 0x64, 0x69, 0x35, 0x12, 0x2e, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74,
|
||||||
|
0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x52,
|
||||||
|
0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79,
|
||||||
|
0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x3c, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x64, 0x69,
|
||||||
|
0x74, 0x69, 0x6f, 0x6e, 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, 0x1a, 0x3c, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x72, 0x35, 0x48, 0x65,
|
||||||
|
0x72, 0x6f, 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, 0x1a, 0x37, 0x0a, 0x09, 0x52, 0x61, 0x63, 0x65, 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, 0x1a, 0x39, 0x0a, 0x0b,
|
||||||
|
0x42, 0x61, 0x6f, 0x64, 0x69, 0x34, 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, 0x1a, 0x39, 0x0a, 0x0b, 0x42, 0x61, 0x6f, 0x64, 0x69,
|
||||||
|
0x35, 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, 0x1a, 0x38, 0x0a, 0x0a, 0x43, 0x6f, 0x75, 0x6e, 0x74, 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, 0x22, 0xb6, 0x01, 0x0a,
|
||||||
|
0x0c, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 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,
|
||||||
|
0x16, 0x0a, 0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||||
|
0x06, 0x68, 0x65, 0x72, 0x6f, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e,
|
||||||
|
0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x44, 0x42, 0x48, 0x65, 0x72, 0x6f,
|
||||||
|
0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x74,
|
||||||
|
0x72, 0x79, 0x52, 0x06, 0x74, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x1a, 0x39, 0x0a, 0x0b, 0x54, 0x61,
|
||||||
|
0x6c, 0x65, 0x6e, 0x74, 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, 0x2a, 0x2f, 0x0a, 0x08, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70,
|
||||||
|
0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x69, 0x6c,
|
||||||
|
0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x65, 0x72, 0x6f, 0x54, 0x79, 0x70, 0x65, 0x4b, 0x6f,
|
||||||
|
0x6e, 0x67, 0x46, 0x75, 0x10, 0x01, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06,
|
||||||
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||||
|
>>>>>>> Stashed changes
|
||||||
}
|
}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@ -754,8 +872,9 @@ func file_hero_hero_db_proto_rawDescGZIP() []byte {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var file_hero_hero_db_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
|
var file_hero_hero_db_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
|
||||||
var file_hero_hero_db_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
|
var file_hero_hero_db_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
|
||||||
var file_hero_hero_db_proto_goTypes = []interface{}{
|
var file_hero_hero_db_proto_goTypes = []interface{}{
|
||||||
|
<<<<<<< Updated upstream
|
||||||
(HeroType)(0), // 0: HeroType
|
(HeroType)(0), // 0: HeroType
|
||||||
(*DBHero)(nil), // 1: DBHero
|
(*DBHero)(nil), // 1: DBHero
|
||||||
(*DBHeroRecord)(nil), // 2: DBHeroRecord
|
(*DBHeroRecord)(nil), // 2: DBHeroRecord
|
||||||
@ -771,13 +890,35 @@ var file_hero_hero_db_proto_goTypes = []interface{}{
|
|||||||
nil, // 12: DBHeroRecord.RaceEntry
|
nil, // 12: DBHeroRecord.RaceEntry
|
||||||
nil, // 13: DBHeroTalent.TalentEntry
|
nil, // 13: DBHeroTalent.TalentEntry
|
||||||
(*SkillData)(nil), // 14: SkillData
|
(*SkillData)(nil), // 14: SkillData
|
||||||
|
=======
|
||||||
|
(HeroType)(0), // 0: HeroType
|
||||||
|
(*DBHero)(nil), // 1: DBHero
|
||||||
|
(*DBHeroRecord)(nil), // 2: DBHeroRecord
|
||||||
|
(*DBHeroTalent)(nil), // 3: DBHeroTalent
|
||||||
|
nil, // 4: DBHero.PropertyEntry
|
||||||
|
nil, // 5: DBHero.AddPropertyEntry
|
||||||
|
nil, // 6: DBHero.JuexPropertyEntry
|
||||||
|
nil, // 7: DBHero.TalentPropertyEntry
|
||||||
|
nil, // 8: DBHero.HoroscopePropertyEntry
|
||||||
|
nil, // 9: DBHero.FettersEntry
|
||||||
|
nil, // 10: DBHeroRecord.ConditionEntry
|
||||||
|
nil, // 11: DBHeroRecord.Star5HeroEntry
|
||||||
|
nil, // 12: DBHeroRecord.RaceEntry
|
||||||
|
nil, // 13: DBHeroRecord.Baodi4Entry
|
||||||
|
nil, // 14: DBHeroRecord.Baodi5Entry
|
||||||
|
nil, // 15: DBHeroRecord.CountEntry
|
||||||
|
nil, // 16: DBHeroTalent.TalentEntry
|
||||||
|
(*SkillData)(nil), // 17: SkillData
|
||||||
|
(*DB_EquipmentSuit)(nil), // 18: DB_EquipmentSuit
|
||||||
|
>>>>>>> Stashed changes
|
||||||
}
|
}
|
||||||
var file_hero_hero_db_proto_depIdxs = []int32{
|
var file_hero_hero_db_proto_depIdxs = []int32{
|
||||||
14, // 0: DBHero.normalSkill:type_name -> SkillData
|
17, // 0: DBHero.normalSkill:type_name -> SkillData
|
||||||
4, // 1: DBHero.property:type_name -> DBHero.PropertyEntry
|
4, // 1: DBHero.property:type_name -> DBHero.PropertyEntry
|
||||||
5, // 2: DBHero.addProperty:type_name -> DBHero.AddPropertyEntry
|
5, // 2: DBHero.addProperty:type_name -> DBHero.AddPropertyEntry
|
||||||
6, // 3: DBHero.juexProperty:type_name -> DBHero.JuexPropertyEntry
|
6, // 3: DBHero.juexProperty:type_name -> DBHero.JuexPropertyEntry
|
||||||
0, // 4: DBHero.status:type_name -> HeroType
|
0, // 4: DBHero.status:type_name -> HeroType
|
||||||
|
<<<<<<< Updated upstream
|
||||||
7, // 5: DBHero.talentProperty:type_name -> DBHero.TalentPropertyEntry
|
7, // 5: DBHero.talentProperty:type_name -> DBHero.TalentPropertyEntry
|
||||||
14, // 6: DBHero.equipSkill:type_name -> SkillData
|
14, // 6: DBHero.equipSkill:type_name -> SkillData
|
||||||
8, // 7: DBHero.horoscopeProperty:type_name -> DBHero.HoroscopePropertyEntry
|
8, // 7: DBHero.horoscopeProperty:type_name -> DBHero.HoroscopePropertyEntry
|
||||||
@ -791,6 +932,25 @@ var file_hero_hero_db_proto_depIdxs = []int32{
|
|||||||
13, // [13:13] is the sub-list for extension type_name
|
13, // [13:13] is the sub-list for extension type_name
|
||||||
13, // [13:13] is the sub-list for extension extendee
|
13, // [13:13] is the sub-list for extension extendee
|
||||||
0, // [0:13] is the sub-list for field type_name
|
0, // [0:13] is the sub-list for field type_name
|
||||||
|
=======
|
||||||
|
18, // 5: DBHero.suits:type_name -> DB_EquipmentSuit
|
||||||
|
7, // 6: DBHero.talentProperty:type_name -> DBHero.TalentPropertyEntry
|
||||||
|
17, // 7: DBHero.equipSkill:type_name -> SkillData
|
||||||
|
8, // 8: DBHero.horoscopeProperty:type_name -> DBHero.HoroscopePropertyEntry
|
||||||
|
9, // 9: DBHero.fetters:type_name -> DBHero.FettersEntry
|
||||||
|
10, // 10: DBHeroRecord.condition:type_name -> DBHeroRecord.ConditionEntry
|
||||||
|
11, // 11: DBHeroRecord.star5Hero:type_name -> DBHeroRecord.Star5HeroEntry
|
||||||
|
12, // 12: DBHeroRecord.race:type_name -> DBHeroRecord.RaceEntry
|
||||||
|
13, // 13: DBHeroRecord.baodi4:type_name -> DBHeroRecord.Baodi4Entry
|
||||||
|
14, // 14: DBHeroRecord.baodi5:type_name -> DBHeroRecord.Baodi5Entry
|
||||||
|
15, // 15: DBHeroRecord.count:type_name -> DBHeroRecord.CountEntry
|
||||||
|
16, // 16: DBHeroTalent.talent:type_name -> DBHeroTalent.TalentEntry
|
||||||
|
17, // [17:17] is the sub-list for method output_type
|
||||||
|
17, // [17:17] is the sub-list for method input_type
|
||||||
|
17, // [17:17] is the sub-list for extension type_name
|
||||||
|
17, // [17:17] is the sub-list for extension extendee
|
||||||
|
0, // [0:17] is the sub-list for field type_name
|
||||||
|
>>>>>>> Stashed changes
|
||||||
}
|
}
|
||||||
|
|
||||||
func init() { file_hero_hero_db_proto_init() }
|
func init() { file_hero_hero_db_proto_init() }
|
||||||
@ -843,7 +1003,7 @@ func file_hero_hero_db_proto_init() {
|
|||||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||||
RawDescriptor: file_hero_hero_db_proto_rawDesc,
|
RawDescriptor: file_hero_hero_db_proto_rawDesc,
|
||||||
NumEnums: 1,
|
NumEnums: 1,
|
||||||
NumMessages: 13,
|
NumMessages: 16,
|
||||||
NumExtensions: 0,
|
NumExtensions: 0,
|
||||||
NumServices: 0,
|
NumServices: 0,
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user