上传竞技场和装备洗练代码

This commit is contained in:
liwei1dao 2022-10-24 17:59:41 +08:00
parent 2027cc3184
commit 5d04fd7fb3
31 changed files with 2085 additions and 76 deletions

View File

@ -0,0 +1,178 @@
[
{
"lv_id": 1,
"score_low": 0,
"score_up": 199,
"human_num": 1,
"name": {
"key": "arena_rank_1",
"text": "黑铁"
},
"win_reward": [
{
"a": "attr",
"t": "gold",
"n": 1000
},
{
"a": "attr",
"t": "diamond",
"n": 5
}
]
},
{
"lv_id": 2,
"score_low": 200,
"score_up": 399,
"human_num": 1,
"name": {
"key": "arena_rank_2",
"text": "青铜"
},
"win_reward": [
{
"a": "attr",
"t": "gold",
"n": 1200
},
{
"a": "attr",
"t": "diamond",
"n": 7
}
]
},
{
"lv_id": 3,
"score_low": 400,
"score_up": 599,
"human_num": 2,
"name": {
"key": "arena_rank_3",
"text": "白银"
},
"win_reward": [
{
"a": "attr",
"t": "gold",
"n": 1400
},
{
"a": "attr",
"t": "diamond",
"n": 9
}
]
},
{
"lv_id": 4,
"score_low": 600,
"score_up": 799,
"human_num": 2,
"name": {
"key": "arena_rank_4",
"text": "黄金"
},
"win_reward": [
{
"a": "attr",
"t": "gold",
"n": 1600
},
{
"a": "attr",
"t": "diamond",
"n": 11
}
]
},
{
"lv_id": 5,
"score_low": 800,
"score_up": 999,
"human_num": 3,
"name": {
"key": "arena_rank_5",
"text": "铂金"
},
"win_reward": [
{
"a": "attr",
"t": "gold",
"n": 1800
},
{
"a": "attr",
"t": "diamond",
"n": 13
}
]
},
{
"lv_id": 6,
"score_low": 1000,
"score_up": 1499,
"human_num": 3,
"name": {
"key": "arena_rank_6",
"text": "钻石"
},
"win_reward": [
{
"a": "attr",
"t": "gold",
"n": 2000
},
{
"a": "attr",
"t": "diamond",
"n": 15
}
]
},
{
"lv_id": 7,
"score_low": 1500,
"score_up": 1999,
"human_num": 4,
"name": {
"key": "arena_rank_7",
"text": "大师"
},
"win_reward": [
{
"a": "attr",
"t": "gold",
"n": 2200
},
{
"a": "attr",
"t": "diamond",
"n": 17
}
]
},
{
"lv_id": 8,
"score_low": 2000,
"score_up": 99999999,
"human_num": 4,
"name": {
"key": "arena_rank_8",
"text": "王者"
},
"win_reward": [
{
"a": "attr",
"t": "gold",
"n": 2400
},
{
"a": "attr",
"t": "diamond",
"n": 19
}
]
}
]

View File

@ -0,0 +1,102 @@
[
{
"num": 1,
"need": [
{
"a": "attr",
"t": "rmbmoney",
"n": 20
}
]
},
{
"num": 2,
"need": [
{
"a": "attr",
"t": "rmbmoney",
"n": 30
}
]
},
{
"num": 3,
"need": [
{
"a": "attr",
"t": "rmbmoney",
"n": 30
}
]
},
{
"num": 4,
"need": [
{
"a": "attr",
"t": "rmbmoney",
"n": 50
}
]
},
{
"num": 5,
"need": [
{
"a": "attr",
"t": "rmbmoney",
"n": 50
}
]
},
{
"num": 6,
"need": [
{
"a": "attr",
"t": "rmbmoney",
"n": 50
}
]
},
{
"num": 7,
"need": [
{
"a": "attr",
"t": "rmbmoney",
"n": 100
}
]
},
{
"num": 8,
"need": [
{
"a": "attr",
"t": "rmbmoney",
"n": 150
}
]
},
{
"num": 9,
"need": [
{
"a": "attr",
"t": "rmbmoney",
"n": 200
}
]
},
{
"num": 10,
"need": [
{
"a": "attr",
"t": "rmbmoney",
"n": 250
}
]
}
]

View File

@ -0,0 +1,338 @@
[
{
"id": 1,
"open_cond": 1,
"open_value": 10,
"monsterformat_id": 301011,
"stroy_id_front": 1001,
"stroy_id_after": 1001,
"name": {
"key": "arena_npc_1",
"text": "npc1"
},
"revive_cd": 24,
"revive_monsterformat_id": 301011,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 2,
"open_cond": 1,
"open_value": 11,
"monsterformat_id": 301012,
"stroy_id_front": 1002,
"stroy_id_after": 1002,
"name": {
"key": "arena_npc_2",
"text": "npc2"
},
"revive_cd": 24,
"revive_monsterformat_id": 301012,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 3,
"open_cond": 1,
"open_value": 12,
"monsterformat_id": 301013,
"stroy_id_front": 1003,
"stroy_id_after": 1003,
"name": {
"key": "arena_npc_3",
"text": "npc3"
},
"revive_cd": 24,
"revive_monsterformat_id": 301013,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 4,
"open_cond": 1,
"open_value": 13,
"monsterformat_id": 301014,
"stroy_id_front": 1004,
"stroy_id_after": 1004,
"name": {
"key": "arena_npc_4",
"text": "npc4"
},
"revive_cd": 24,
"revive_monsterformat_id": 301014,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 5,
"open_cond": 1,
"open_value": 14,
"monsterformat_id": 301015,
"stroy_id_front": 1005,
"stroy_id_after": 1005,
"name": {
"key": "arena_npc_5",
"text": "npc5"
},
"revive_cd": 24,
"revive_monsterformat_id": 301015,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 6,
"open_cond": 1,
"open_value": 15,
"monsterformat_id": 301016,
"stroy_id_front": 1006,
"stroy_id_after": 1006,
"name": {
"key": "arena_npc_6",
"text": "npc6"
},
"revive_cd": 24,
"revive_monsterformat_id": 301016,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 7,
"open_cond": 1,
"open_value": 16,
"monsterformat_id": 301017,
"stroy_id_front": 1007,
"stroy_id_after": 1007,
"name": {
"key": "arena_npc_7",
"text": "npc7"
},
"revive_cd": 24,
"revive_monsterformat_id": 301017,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 8,
"open_cond": 1,
"open_value": 17,
"monsterformat_id": 301018,
"stroy_id_front": 1008,
"stroy_id_after": 1008,
"name": {
"key": "arena_npc_8",
"text": "npc8"
},
"revive_cd": 24,
"revive_monsterformat_id": 301018,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 9,
"open_cond": 1,
"open_value": 18,
"monsterformat_id": 301019,
"stroy_id_front": 1009,
"stroy_id_after": 1009,
"name": {
"key": "arena_npc_9",
"text": "npc9"
},
"revive_cd": 24,
"revive_monsterformat_id": 301019,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 10,
"open_cond": 1,
"open_value": 19,
"monsterformat_id": 301020,
"stroy_id_front": 1010,
"stroy_id_after": 1010,
"name": {
"key": "arena_npc_10",
"text": "npc10"
},
"revive_cd": 24,
"revive_monsterformat_id": 301020,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 11,
"open_cond": 1,
"open_value": 20,
"monsterformat_id": 301021,
"stroy_id_front": 1011,
"stroy_id_after": 1011,
"name": {
"key": "arena_npc_11",
"text": "npc11"
},
"revive_cd": 24,
"revive_monsterformat_id": 301021,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 12,
"open_cond": 1,
"open_value": 21,
"monsterformat_id": 301022,
"stroy_id_front": 1012,
"stroy_id_after": 1012,
"name": {
"key": "arena_npc_12",
"text": "npc12"
},
"revive_cd": 24,
"revive_monsterformat_id": 301022,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 13,
"open_cond": 1,
"open_value": 22,
"monsterformat_id": 301023,
"stroy_id_front": 1013,
"stroy_id_after": 1013,
"name": {
"key": "arena_npc_13",
"text": "npc13"
},
"revive_cd": 24,
"revive_monsterformat_id": 301023,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 14,
"open_cond": 1,
"open_value": 23,
"monsterformat_id": 301024,
"stroy_id_front": 1014,
"stroy_id_after": 1014,
"name": {
"key": "arena_npc_14",
"text": "npc14"
},
"revive_cd": 24,
"revive_monsterformat_id": 301024,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 15,
"open_cond": 1,
"open_value": 24,
"monsterformat_id": 301025,
"stroy_id_front": 1015,
"stroy_id_after": 1015,
"name": {
"key": "arena_npc_15",
"text": "npc15"
},
"revive_cd": 24,
"revive_monsterformat_id": 301025,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
},
{
"id": 16,
"open_cond": 1,
"open_value": 25,
"monsterformat_id": 301026,
"stroy_id_front": 1016,
"stroy_id_after": 1016,
"name": {
"key": "arena_npc_16",
"text": "npc16"
},
"revive_cd": 24,
"revive_monsterformat_id": 301026,
"npc_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
}
]
}
]

View File

@ -0,0 +1,189 @@
[
{
"id": 1,
"rank_low": 1,
"rank_up": 1,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 10000
},
{
"a": "attr",
"t": "diamond",
"n": 50
}
]
},
{
"id": 2,
"rank_low": 2,
"rank_up": 2,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 12000
},
{
"a": "attr",
"t": "diamond",
"n": 70
}
]
},
{
"id": 3,
"rank_low": 3,
"rank_up": 3,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 14000
},
{
"a": "attr",
"t": "diamond",
"n": 90
}
]
},
{
"id": 4,
"rank_low": 4,
"rank_up": 10,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 16000
},
{
"a": "attr",
"t": "diamond",
"n": 110
}
]
},
{
"id": 5,
"rank_low": 11,
"rank_up": 20,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 18000
},
{
"a": "attr",
"t": "diamond",
"n": 130
}
]
},
{
"id": 6,
"rank_low": 21,
"rank_up": 50,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 20000
},
{
"a": "attr",
"t": "diamond",
"n": 150
}
]
},
{
"id": 7,
"rank_low": 51,
"rank_up": 100,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 22000
},
{
"a": "attr",
"t": "diamond",
"n": 170
}
]
},
{
"id": 8,
"rank_low": 101,
"rank_up": 200,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 24000
},
{
"a": "attr",
"t": "diamond",
"n": 190
}
]
},
{
"id": 9,
"rank_low": 201,
"rank_up": 500,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 26000
},
{
"a": "attr",
"t": "diamond",
"n": 210
}
]
},
{
"id": 10,
"rank_low": 501,
"rank_up": 1000,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 28000
},
{
"a": "attr",
"t": "diamond",
"n": 230
}
]
},
{
"id": 11,
"rank_low": 1001,
"rank_up": 99999999,
"rank_reward": [
{
"a": "attr",
"t": "gold",
"n": 30000
},
{
"a": "attr",
"t": "diamond",
"n": 250
}
]
}
]

View File

@ -0,0 +1,98 @@
[
{
"id": 1,
"lv_id": 1,
"monsterformat_id": 301011,
"weight": 1000
},
{
"id": 2,
"lv_id": 1,
"monsterformat_id": 301012,
"weight": 1000
},
{
"id": 3,
"lv_id": 2,
"monsterformat_id": 301013,
"weight": 1000
},
{
"id": 4,
"lv_id": 2,
"monsterformat_id": 301014,
"weight": 1000
},
{
"id": 5,
"lv_id": 3,
"monsterformat_id": 301015,
"weight": 1000
},
{
"id": 6,
"lv_id": 3,
"monsterformat_id": 301016,
"weight": 1000
},
{
"id": 7,
"lv_id": 4,
"monsterformat_id": 301017,
"weight": 1000
},
{
"id": 8,
"lv_id": 4,
"monsterformat_id": 301018,
"weight": 1000
},
{
"id": 9,
"lv_id": 5,
"monsterformat_id": 301019,
"weight": 1000
},
{
"id": 10,
"lv_id": 5,
"monsterformat_id": 301020,
"weight": 1000
},
{
"id": 11,
"lv_id": 6,
"monsterformat_id": 301021,
"weight": 1000
},
{
"id": 12,
"lv_id": 6,
"monsterformat_id": 301022,
"weight": 1000
},
{
"id": 13,
"lv_id": 7,
"monsterformat_id": 301023,
"weight": 1000
},
{
"id": 14,
"lv_id": 7,
"monsterformat_id": 301024,
"weight": 1000
},
{
"id": 15,
"lv_id": 8,
"monsterformat_id": 301025,
"weight": 1000
},
{
"id": 16,
"lv_id": 8,
"monsterformat_id": 301026,
"weight": 1000
}
]

View File

@ -0,0 +1,78 @@
package arena
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/sys/mgo"
"go_dreamfactory/pb"
"time"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) ChallengeRewardCheck(session comm.IUserSession, req *pb.ArenaChallengeRewardReq) (code pb.ErrorCode) {
return
}
///挑战奖励领取
func (this *apiComp) ChallengeReward(session comm.IUserSession, req *pb.ArenaChallengeRewardReq) (code pb.ErrorCode, data proto.Message) {
var (
red *pb.DBArenaUser
bule *pb.DBArenaUser
err error
iswin bool
)
if code = this.ChallengeRewardCheck(session, req); code != pb.ErrorCode_Success {
return
}
if req.Iswin {
if code, iswin = this.module.battle.CheckBattleReport(session, req.Report); code != pb.ErrorCode_Success {
return
}
if !iswin {
code = pb.ErrorCode_BattleValidationFailed
return
}
}
if red, err = this.module.modelArena.queryPlayerInfo(req.Report.Info.RedCompId); err != nil && err != mgo.MongodbNil {
code = pb.ErrorCode_DBError
return
}
if bule, err = this.module.modelArena.queryPlayerInfo(req.Report.Info.BlueCompId); err != nil && err != mgo.MongodbNil {
code = pb.ErrorCode_DBError
return
}
if len(red.Record) > 10 {
red.Record = red.Record[1:]
}
if len(bule.Record) > 10 {
bule.Record = bule.Record[1:]
}
red.Record = append(red.Record, &pb.DBArenaBattleRecord{
Bid: req.Report.Info.Id,
Time: time.Now().Unix(),
Iswin: req.Iswin,
Isdefend: false,
Rivalid: bule.Uid,
Rivalname: bule.Name,
})
if err = this.module.modelArena.Change(red.Uid, map[string]interface{}{"record": red.Record}); err != nil {
code = pb.ErrorCode_DBError
return
}
bule.Record = append(red.Record, &pb.DBArenaBattleRecord{
Bid: req.Report.Info.Id,
Time: time.Now().Unix(),
Iswin: !req.Iswin,
Isdefend: true,
Rivalid: red.Uid,
Rivalname: red.Name,
})
if err = this.module.modelArena.Change(bule.Uid, map[string]interface{}{"record": bule.Record}); err != nil {
code = pb.ErrorCode_DBError
return
}
return
}

View File

@ -31,7 +31,7 @@ func (this *apiComp) Matche(session comm.IUserSession, req *pb.ArenaMatcheReq) (
}
if len(players) < 5 {
num := 5 - len(players)
if ai, err = this.module.modelArena.matcheAI(req.Minintegral, req.Maxintegral, int32(num)); err != nil && err != mgo.MongodbNil {
if ai, err = this.module.modelArena.matcheAI(req.Minintegral, int32(num)); err != nil && err != mgo.MongodbNil {
code = pb.ErrorCode_DBError
return
}

22
modules/arena/api_rank.go Normal file
View File

@ -0,0 +1,22 @@
package arena
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) RankCheck(session comm.IUserSession, req *pb.ArenaRankReq) (code pb.ErrorCode) {
return
}
///排行榜获取
func (this *apiComp) Rank(session comm.IUserSession, req *pb.ArenaRankReq) (code pb.ErrorCode, data proto.Message) {
if code = this.RankCheck(session, req); code != pb.ErrorCode_Success {
return
}
return
}

View File

@ -0,0 +1,33 @@
package arena
import (
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
cfg "go_dreamfactory/sys/configure/structs"
)
const (
game_arenabuychallenge = "game_arenabuychallenge.json" //购买挑战记录
game_arenaactivereward = "game_arenaactivereward.json" //挑战奖励
game_arenaarobot = "game_arenaarobot.json" //ai配置表
game_arenarankreward = "game_arenarankreward.json" //比赛奖励配置
game_arenachallengenpc = "game_arenachallengenpc.json" //剧情表
)
///竞技场配置管理组件
type configureComp struct {
modules.MCompConfigure
module *Arena
}
//组件初始化接口
func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
this.MCompConfigure.Init(service, module, comp, options)
this.module = module.(*Arena)
this.LoadConfigure(game_arenabuychallenge, cfg.NewGameArenaBuyChallenge)
this.LoadConfigure(game_arenaactivereward, cfg.NewGameArenaActiveReward)
this.LoadConfigure(game_arenaarobot, cfg.NewGameArenaRobot)
this.LoadConfigure(game_arenarankreward, cfg.NewGameArenaRankReward)
this.LoadConfigure(game_arenachallengenpc, cfg.NewGameArenaChallengeNpc)
return
}

View File

@ -84,7 +84,7 @@ func (this *modelArena) updateArenaUserInfo(info *pb.DBArenaUser) (err error) {
// }
//匹配机器人
func (this *modelArena) matcheAI(min, max, num int32) (results []*pb.DBArenaUser, err error) {
func (this *modelArena) matcheAI(duan, num int32) (results []*pb.DBArenaUser, err error) {
return
}

View File

@ -0,0 +1,28 @@
package arena
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/x/bsonx"
)
///竞技场 战斗记录
type modelRecord struct {
modules.MCompModel
module *Arena
}
//组件初始化接口
func (this *modelRecord) Init(service core.IService, module core.IModule, comp core.IModuleComp, opt core.IModuleOptions) (err error) {
this.TableName = comm.TableArena
this.MCompModel.Init(service, module, comp, opt)
this.module = module.(*Arena)
//创建uid索引
this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{
Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}},
})
return
}

View File

@ -223,6 +223,46 @@ func (this *modelBattleComp) createBattleRole(hero *pb.DBHero, tid, pos int) (ro
//创建pvp 战斗请求
func (this *modelBattleComp) createpvp(session comm.IUserSession, conn *db.DBConn, btype pb.BattleType, req *pb.BattlePVPReq) (record *pb.DBBattleRecord, code pb.ErrorCode) {
record = &pb.DBBattleRecord{
Id: primitive.NewObjectID().Hex(),
Title: req.Title,
Btype: btype,
Ptype: req.Ptype,
State: pb.BBattleState_in,
RedCompId: req.Redformat.Uid,
Redflist: make([]*pb.DBBattleFormt, 1),
BlueCompId: req.Buleformat.Uid,
Buleflist: make([]*pb.DBBattleFormt, 1),
}
record.Redflist[0] = &pb.DBBattleFormt{
Leadpos: req.Redformat.Leadpos,
Team: make([]*pb.BattleRole, len(req.Redformat.Format)),
}
//自己的英雄阵营
for i, v := range req.Redformat.Format {
if v != nil {
tid := 100 + i
if record.Redflist[0].Team[i], code = this.createBattleRole(v, tid, i); code != pb.ErrorCode_Success {
return
}
} else {
record.Redflist[0].Team[i] = nil
}
}
record.Buleflist[0] = &pb.DBBattleFormt{
Leadpos: req.Buleformat.Leadpos,
Team: make([]*pb.BattleRole, len(req.Buleformat.Format)),
}
//自己的英雄阵营
for i, v := range req.Buleformat.Format {
if v != nil {
tid := 100 + i
if record.Buleflist[0].Team[i], code = this.createBattleRole(v, tid, i); code != pb.ErrorCode_Success {
return
}
} else {
record.Buleflist[0].Team[i] = nil
}
}
return
}

View File

@ -2,7 +2,6 @@ package equipment
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/sys/log"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
"go_dreamfactory/utils"
@ -51,7 +50,7 @@ func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq)
if v != "" {
equipNum++
if equipments[i], err = this.module.modelEquipment.QueryUserEquipmentsById(session.GetUserId(), v); err != nil {
log.Errorf("Equip_Check err:%v", err)
this.module.Errorf("Equip_Check err:%v", err)
code = pb.ErrorCode_EquipmentOnFoundEquipment
return
}
@ -61,7 +60,7 @@ func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq)
}
equipLv[equipments[i].Lv]++
if confs[i], err = this.module.configure.GetEquipmentConfigureById(equipments[i].CId); err != nil {
log.Errorf("Equip_Check err:%v", err)
this.module.Errorf("Equip_Check err:%v", err)
code = pb.ErrorCode_ConfigNoFound
return
}
@ -92,7 +91,7 @@ func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq)
if v != "" {
if equipments[i] != nil && v != equipments[i].Id {
if equipment, err = this.module.modelEquipment.QueryUserEquipmentsById(session.GetUserId(), v); err != nil {
log.Errorf("Equip reader uid:%s equipment:%s err:%v", session.GetUserId(), v, err)
this.module.Errorf("Equip reader uid:%s equipment:%s err:%v", session.GetUserId(), v, err)
code = pb.ErrorCode_SystemError
return
}
@ -101,7 +100,7 @@ func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq)
updatequipment = append(updatequipment, equipment, equipments[i])
} else if equipments[i] == nil {
if equipment, err = this.module.modelEquipment.QueryUserEquipmentsById(session.GetUserId(), v); err != nil {
log.Errorf("Equip reader uid:%s equipment:%s err:%v", session.GetUserId(), v, err)
this.module.Errorf("Equip reader uid:%s equipment:%s err:%v", session.GetUserId(), v, err)
code = pb.ErrorCode_SystemError
return
}
@ -120,7 +119,7 @@ func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq)
for i, v := range equipments { //校验装备位置
if v != nil {
if i != int(confs[i].Pos) {
log.Errorf("Equip conf:%+v Target:%d Incorrect range!", confs[i], i)
this.module.Errorf("Equip conf:%+v Target:%d Incorrect range!", confs[i], i)
code = pb.ErrorCode_SystemError
return
}
@ -161,12 +160,12 @@ func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq)
}
//更新装备数据加成
if code = this.module.ModuleHero.UpdateEquipment(session, hero, equipments); code != pb.ErrorCode_Success {
log.Errorf("Equip ModuleHero UpdateEquipment code%v", code)
this.module.Errorf("Equip ModuleHero UpdateEquipment code%v", code)
return
}
//同步数据
if err = this.module.modelEquipment.UpdateByHeroId(session.GetUserId(), updatequipment...); err != nil {
log.Errorf("Equip err%v", err)
this.module.Errorf("Equip err%v", err)
code = pb.ErrorCode_SystemError
return
}
@ -183,7 +182,7 @@ func (this *apiComp) Equip(session comm.IUserSession, req *pb.EquipmentEquipReq)
if hero.SuiteExtId != 0 {
this.module.ModuleRtask.SendToRtask(session, comm.Rtype48, 1, hero.Suite2Star, hero.Suite2Lv)
}
session.SendMsg(string(this.module.GetType()), "equip", &pb.EquipmentEquipResp{Equipments: updatequipment})
return
}

View File

@ -2,7 +2,6 @@ package equipment
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/sys/log"
"go_dreamfactory/pb"
"google.golang.org/protobuf/proto"
@ -21,7 +20,7 @@ func (this *apiComp) Getlist(session comm.IUserSession, req *pb.EquipmentGetList
items []*pb.DB_Equipment
)
if items, err = this.module.modelEquipment.QueryUserEquipments(session.GetUserId()); err != nil {
log.Errorf("QueryUserPackReq err:%v", err)
this.module.Errorf("QueryUserPackReq err:%v", err)
code = pb.ErrorCode_CacheReadError
return
}

View File

@ -0,0 +1,62 @@
package equipment
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
"math/rand"
"time"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) WashCheck(session comm.IUserSession, req *pb.EquipmentWashReq) (code pb.ErrorCode) {
if req.Eid == "" {
code = pb.ErrorCode_ReqParameterError
}
return
}
//锻造
func (this *apiComp) Wash(session comm.IUserSession, req *pb.EquipmentWashReq) (code pb.ErrorCode, data proto.Message) {
var (
equip *pb.DB_Equipment
conf *cfg.GameEquipData
attrlibrarys []*cfg.GameEquipAttrlibraryData
adverbEntry []*pb.EquipmentAttributeEntry
err error
)
if code = this.WashCheck(session, req); code != pb.ErrorCode_Success {
return
}
if equip, err = this.module.modelEquipment.QueryUserEquipmentsById(session.GetUserId(), req.Eid); err != nil {
this.module.Errorf("Equip reader uid:%s equipment:%s err:%v", session.GetUserId(), req.Eid, err)
code = pb.ErrorCode_SystemError
return
}
if conf, err = this.module.configure.GetEquipmentConfigureById(equip.CId); err != nil {
this.module.Errorf("Equip_Check err:%v", err)
code = pb.ErrorCode_ConfigNoFound
return
}
if attrlibrarys, err = this.module.configure.GetEquipmentAttrlibraryConfigureById(conf.Addlibrary); err != nil || len(attrlibrarys) == 0 {
this.module.Errorf("升级服务错误 读取副词条配置错误!")
return
}
adverbEntry = make([]*pb.EquipmentAttributeEntry, len(equip.AdverbEntry))
r := rand.New(rand.NewSource(time.Now().Unix()))
for i, v := range r.Perm(len(attrlibrarys)) {
adverbEntry[i] = &pb.EquipmentAttributeEntry{
Id: attrlibrarys[v].Key,
Libraryid: attrlibrarys[v].Libraryid,
Lv: equip.AdverbEntry[i].Lv,
AttrName: attrlibrarys[v].Attrkey,
BaseValue: attrlibrarys[v].Attrvar,
Value: attrlibrarys[v].Attrvar + int32(float64(attrlibrarys[v].Addition[equip.AdverbEntry[i].Lv-1])/1000.0*float64(attrlibrarys[v].Attrvar)),
}
}
session.SendMsg(string(this.module.GetType()), "wash", &pb.EquipmentWashResp{Eid: req.Eid, AdverbEntry: adverbEntry})
return
}

View File

@ -0,0 +1,62 @@
package equipment
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/sys/log"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
"google.golang.org/protobuf/proto"
)
//参数校验
func (this *apiComp) WashConfirmCheck(session comm.IUserSession, req *pb.EquipmentWashConfirmReq) (code pb.ErrorCode) {
if req.Eid == "" || req.Pids == nil || len(req.Pids) == 0 {
code = pb.ErrorCode_ReqParameterError
}
return
}
//锻造
func (this *apiComp) WashConfirm(session comm.IUserSession, req *pb.EquipmentWashConfirmReq) (code pb.ErrorCode, data proto.Message) {
var (
equip *pb.DB_Equipment
attrlibrary *cfg.GameEquipAttrlibraryData
err error
)
if code = this.WashConfirmCheck(session, req); code != pb.ErrorCode_Success {
return
}
if equip, err = this.module.modelEquipment.QueryUserEquipmentsById(session.GetUserId(), req.Eid); err != nil {
this.module.Errorf("Equip reader uid:%s equipment:%s err:%v", session.GetUserId(), req.Eid, err)
code = pb.ErrorCode_SystemError
return
}
if len(equip.AdverbEntry) == len(req.Pids) {
code = pb.ErrorCode_ReqParameterError
return
}
for i, v := range equip.AdverbEntry {
if attrlibrary, err = this.module.configure.GetEquipmentAttrlibraryConfigureByKey(req.Pids[i]); err != nil {
return
}
equip.AdverbEntry[i] = &pb.EquipmentAttributeEntry{
Id: attrlibrary.Key,
Libraryid: attrlibrary.Libraryid,
Lv: v.Lv,
AttrName: attrlibrary.Attrkey,
BaseValue: attrlibrary.Attrvar,
Value: attrlibrary.Attrvar + int32(float64(attrlibrary.Addition[equip.AdverbEntry[i].Lv-1])/1000.0*float64(attrlibrary.Attrvar)),
}
}
if err = this.module.modelEquipment.ChangeList(session.GetUserId(), equip.Id, map[string]interface{}{
"adverbEntry": equip.AdverbEntry,
}); err != nil {
log.Errorf("Upgrade err:%v", err)
code = pb.ErrorCode_SystemError
return
}
session.SendMsg(string(this.module.GetType()), "wash", &pb.EquipmentWashConfirmResp{Issucc: true})
return
}

View File

@ -3,7 +3,6 @@ package equipment
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/lego/sys/log"
"go_dreamfactory/modules"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
@ -124,7 +123,7 @@ func (this *modelEquipmentComp) AddEquipments(session comm.IUserSession, cIds ma
}
if len(add) > 0 {
if err = this.AddLists(uId, add); err != nil {
log.Errorf("err:%v", err)
this.module.Errorf("err:%v", err)
return
}
}
@ -161,7 +160,7 @@ func (this *modelEquipmentComp) UpdateByHeroId(uid string, equipments ...*pb.DB_
if err = this.ChangeList(uid, v.Id, map[string]interface{}{
"heroId": v.HeroId,
}); err != nil {
log.Errorf("err:%v", err)
this.module.Errorf("err:%v", err)
return
}
}
@ -238,7 +237,7 @@ func (this *modelEquipmentComp) upgradeEquipment(equipment *pb.DB_Equipment, equ
var temp []*cfg.GameEquipAttrlibraryData
var sattr []*cfg.GameEquipAttrlibraryData
if temp, err = this.module.configure.GetEquipmentAttrlibraryConfigureById(equip.Addlibrary); err != nil || len(temp) == 0 {
log.Errorf("升级服务错误 读取副词条配置错误!")
this.module.Errorf("升级服务错误 读取副词条配置错误!")
return
}
//检索出未使用的词条

View File

@ -242,15 +242,16 @@ type DBArenaUser struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid"` //用户id
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name"` //玩家名称
Integral int32 `protobuf:"varint,3,opt,name=integral,proto3" json:"integral"` //积分
Attack *DBPlayerBattleFormt `protobuf:"bytes,4,opt,name=attack,proto3" json:"attack"` //进攻阵型
Defend *DBPlayerBattleFormt `protobuf:"bytes,5,opt,name=defend,proto3" json:"defend"` //防守阵型
Streak int32 `protobuf:"varint,6,opt,name=streak,proto3" json:"streak"` //连胜
Attackrate int32 `protobuf:"varint,7,opt,name=attackrate,proto3" json:"attackrate"` //进攻胜率
Defendrate int32 `protobuf:"varint,8,opt,name=defendrate,proto3" json:"defendrate"` //防守胜率
Rank int32 `protobuf:"varint,9,opt,name=rank,proto3" json:"rank"` //排名
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid"` //用户id
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name"` //玩家名称
Integral int32 `protobuf:"varint,3,opt,name=integral,proto3" json:"integral"` //积分
Attack *DBPlayerBattleFormt `protobuf:"bytes,4,opt,name=attack,proto3" json:"attack"` //进攻阵型
Defend *DBPlayerBattleFormt `protobuf:"bytes,5,opt,name=defend,proto3" json:"defend"` //防守阵型
Streak int32 `protobuf:"varint,6,opt,name=streak,proto3" json:"streak"` //连胜
Attackrate int32 `protobuf:"varint,7,opt,name=attackrate,proto3" json:"attackrate"` //进攻胜率
Defendrate int32 `protobuf:"varint,8,opt,name=defendrate,proto3" json:"defendrate"` //防守胜率
Rank int32 `protobuf:"varint,9,opt,name=rank,proto3" json:"rank"` //排名
Record []*DBArenaBattleRecord `protobuf:"bytes,10,rep,name=record,proto3" json:"record"` //战斗记录
}
func (x *DBArenaUser) Reset() {
@ -348,6 +349,13 @@ func (x *DBArenaUser) GetRank() int32 {
return 0
}
func (x *DBArenaUser) GetRecord() []*DBArenaBattleRecord {
if x != nil {
return x.Record
}
return nil
}
var File_arena_arena_db_proto protoreflect.FileDescriptor
var file_arena_arena_db_proto_rawDesc = []byte{
@ -377,7 +385,7 @@ var file_arena_arena_db_proto_rawDesc = []byte{
0x61, 0x6c, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x69, 0x76, 0x61,
0x6c, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x69, 0x76, 0x61, 0x6c, 0x6e, 0x61, 0x6d, 0x65,
0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x69, 0x76, 0x61, 0x6c, 0x6e, 0x61, 0x6d,
0x65, 0x22, 0x97, 0x02, 0x0a, 0x0b, 0x44, 0x42, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x55, 0x73, 0x65,
0x65, 0x22, 0xc5, 0x02, 0x0a, 0x0b, 0x44, 0x42, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x55, 0x73, 0x65,
0x72, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x67,
@ -394,8 +402,11 @@ var file_arena_arena_db_proto_rawDesc = []byte{
0x61, 0x63, 0x6b, 0x72, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x66, 0x65, 0x6e,
0x64, 0x72, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x64, 0x65, 0x66,
0x65, 0x6e, 0x64, 0x72, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x18,
0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x42, 0x06, 0x5a, 0x04, 0x2e,
0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x12, 0x2c, 0x0a, 0x06, 0x72,
0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x44, 0x42,
0x41, 0x72, 0x65, 0x6e, 0x61, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72,
0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70,
0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@ -423,11 +434,12 @@ var file_arena_arena_db_proto_depIdxs = []int32{
0, // 1: ArenaPlayer.defend:type_name -> DBPlayerBattleFormt
0, // 2: DBArenaUser.attack:type_name -> DBPlayerBattleFormt
0, // 3: DBArenaUser.defend:type_name -> DBPlayerBattleFormt
4, // [4:4] is the sub-list for method output_type
4, // [4:4] is the sub-list for method input_type
4, // [4:4] is the sub-list for extension type_name
4, // [4:4] is the sub-list for extension extendee
0, // [0:4] is the sub-list for field type_name
2, // 4: DBArenaUser.record:type_name -> DBArenaBattleRecord
5, // [5:5] is the sub-list for method output_type
5, // [5:5] is the sub-list for method input_type
5, // [5:5] is the sub-list for extension type_name
5, // [5:5] is the sub-list for extension extendee
0, // [0:5] is the sub-list for field type_name
}
func init() { file_arena_arena_db_proto_init() }

View File

@ -537,7 +537,8 @@ type ArenaChallengeRewardReq struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Report *BattleReport `protobuf:"bytes,1,opt,name=report,proto3" json:"report"` //战报
Iswin bool `protobuf:"varint,1,opt,name=iswin,proto3" json:"iswin"` //是否胜利
Report *BattleReport `protobuf:"bytes,2,opt,name=report,proto3" json:"report"` //战报
}
func (x *ArenaChallengeRewardReq) Reset() {
@ -572,6 +573,13 @@ func (*ArenaChallengeRewardReq) Descriptor() ([]byte, []int) {
return file_arena_arena_msg_proto_rawDescGZIP(), []int{10}
}
func (x *ArenaChallengeRewardReq) GetIswin() bool {
if x != nil {
return x.Iswin
}
return false
}
func (x *ArenaChallengeRewardReq) GetReport() *BattleReport {
if x != nil {
return x.Report
@ -751,18 +759,19 @@ var file_arena_arena_msg_proto_rawDesc = []byte{
0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0a, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72,
0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x04, 0x69, 0x6e,
0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c,
0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x40, 0x0a, 0x17, 0x41,
0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x56, 0x0a, 0x17, 0x41,
0x72, 0x65, 0x6e, 0x61, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x77,
0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52,
0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x32, 0x0a,
0x18, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52,
0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73,
0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63,
0x63, 0x22, 0x0e, 0x0a, 0x0c, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65,
0x71, 0x22, 0x0f, 0x0a, 0x0d, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65,
0x73, 0x70, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x33,
0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x73, 0x77, 0x69, 0x6e, 0x18,
0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x69, 0x73, 0x77, 0x69, 0x6e, 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, 0x32, 0x0a, 0x18, 0x41, 0x72, 0x65, 0x6e, 0x61, 0x43, 0x68, 0x61, 0x6c,
0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12,
0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x22, 0x0e, 0x0a, 0x0c, 0x41, 0x72, 0x65, 0x6e, 0x61,
0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x22, 0x0f, 0x0a, 0x0d, 0x41, 0x72, 0x65, 0x6e, 0x61,
0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (

View File

@ -684,6 +684,212 @@ func (x *EquipmentForgResp) GetIssucc() bool {
return false
}
//洗练
type EquipmentWashReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Eid string `protobuf:"bytes,1,opt,name=eid,proto3" json:"eid"`
}
func (x *EquipmentWashReq) Reset() {
*x = EquipmentWashReq{}
if protoimpl.UnsafeEnabled {
mi := &file_equipment_equipment_msg_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EquipmentWashReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EquipmentWashReq) ProtoMessage() {}
func (x *EquipmentWashReq) ProtoReflect() protoreflect.Message {
mi := &file_equipment_equipment_msg_proto_msgTypes[13]
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 EquipmentWashReq.ProtoReflect.Descriptor instead.
func (*EquipmentWashReq) Descriptor() ([]byte, []int) {
return file_equipment_equipment_msg_proto_rawDescGZIP(), []int{13}
}
func (x *EquipmentWashReq) GetEid() string {
if x != nil {
return x.Eid
}
return ""
}
type EquipmentWashResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Eid string `protobuf:"bytes,1,opt,name=eid,proto3" json:"eid"`
AdverbEntry []*EquipmentAttributeEntry `protobuf:"bytes,2,rep,name=adverbEntry,proto3" json:"adverbEntry"`
}
func (x *EquipmentWashResp) Reset() {
*x = EquipmentWashResp{}
if protoimpl.UnsafeEnabled {
mi := &file_equipment_equipment_msg_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EquipmentWashResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EquipmentWashResp) ProtoMessage() {}
func (x *EquipmentWashResp) ProtoReflect() protoreflect.Message {
mi := &file_equipment_equipment_msg_proto_msgTypes[14]
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 EquipmentWashResp.ProtoReflect.Descriptor instead.
func (*EquipmentWashResp) Descriptor() ([]byte, []int) {
return file_equipment_equipment_msg_proto_rawDescGZIP(), []int{14}
}
func (x *EquipmentWashResp) GetEid() string {
if x != nil {
return x.Eid
}
return ""
}
func (x *EquipmentWashResp) GetAdverbEntry() []*EquipmentAttributeEntry {
if x != nil {
return x.AdverbEntry
}
return nil
}
//谢怜确认
type EquipmentWashConfirmReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Eid string `protobuf:"bytes,1,opt,name=eid,proto3" json:"eid"`
Pids []int32 `protobuf:"varint,2,rep,packed,name=pids,proto3" json:"pids"`
}
func (x *EquipmentWashConfirmReq) Reset() {
*x = EquipmentWashConfirmReq{}
if protoimpl.UnsafeEnabled {
mi := &file_equipment_equipment_msg_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EquipmentWashConfirmReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EquipmentWashConfirmReq) ProtoMessage() {}
func (x *EquipmentWashConfirmReq) ProtoReflect() protoreflect.Message {
mi := &file_equipment_equipment_msg_proto_msgTypes[15]
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 EquipmentWashConfirmReq.ProtoReflect.Descriptor instead.
func (*EquipmentWashConfirmReq) Descriptor() ([]byte, []int) {
return file_equipment_equipment_msg_proto_rawDescGZIP(), []int{15}
}
func (x *EquipmentWashConfirmReq) GetEid() string {
if x != nil {
return x.Eid
}
return ""
}
func (x *EquipmentWashConfirmReq) GetPids() []int32 {
if x != nil {
return x.Pids
}
return nil
}
type EquipmentWashConfirmResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Issucc bool `protobuf:"varint,1,opt,name=issucc,proto3" json:"issucc"`
}
func (x *EquipmentWashConfirmResp) Reset() {
*x = EquipmentWashConfirmResp{}
if protoimpl.UnsafeEnabled {
mi := &file_equipment_equipment_msg_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EquipmentWashConfirmResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EquipmentWashConfirmResp) ProtoMessage() {}
func (x *EquipmentWashConfirmResp) ProtoReflect() protoreflect.Message {
mi := &file_equipment_equipment_msg_proto_msgTypes[16]
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 EquipmentWashConfirmResp.ProtoReflect.Descriptor instead.
func (*EquipmentWashConfirmResp) Descriptor() ([]byte, []int) {
return file_equipment_equipment_msg_proto_rawDescGZIP(), []int{16}
}
func (x *EquipmentWashConfirmResp) GetIssucc() bool {
if x != nil {
return x.Issucc
}
return false
}
var File_equipment_equipment_msg_proto protoreflect.FileDescriptor
var file_equipment_equipment_msg_proto_rawDesc = []byte{
@ -744,7 +950,23 @@ var file_equipment_equipment_msg_proto_rawDesc = []byte{
0x6e, 0x75, 0x6d, 0x22, 0x2b, 0x0a, 0x11, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74,
0x46, 0x6f, 0x72, 0x67, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75,
0x63, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63,
0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x22, 0x24, 0x0a, 0x10, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x57, 0x61, 0x73,
0x68, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x03, 0x65, 0x69, 0x64, 0x22, 0x61, 0x0a, 0x11, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d,
0x65, 0x6e, 0x74, 0x57, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x65,
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x65, 0x69, 0x64, 0x12, 0x3a, 0x0a,
0x0b, 0x61, 0x64, 0x76, 0x65, 0x72, 0x62, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x18, 0x02, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x18, 0x2e, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x74,
0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61, 0x64,
0x76, 0x65, 0x72, 0x62, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x22, 0x3f, 0x0a, 0x17, 0x45, 0x71, 0x75,
0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x57, 0x61, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72,
0x6d, 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x03, 0x65, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x69, 0x64, 0x73, 0x18, 0x02,
0x20, 0x03, 0x28, 0x05, 0x52, 0x04, 0x70, 0x69, 0x64, 0x73, 0x22, 0x32, 0x0a, 0x18, 0x45, 0x71,
0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x57, 0x61, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69,
0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63,
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x63, 0x63, 0x42, 0x06,
0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@ -759,33 +981,39 @@ func file_equipment_equipment_msg_proto_rawDescGZIP() []byte {
return file_equipment_equipment_msg_proto_rawDescData
}
var file_equipment_equipment_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
var file_equipment_equipment_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 17)
var file_equipment_equipment_msg_proto_goTypes = []interface{}{
(*EquipmentGetListReq)(nil), // 0: EquipmentGetListReq
(*EquipmentGetListResp)(nil), // 1: EquipmentGetListResp
(*EquipmentChangePush)(nil), // 2: EquipmentChangePush
(*EquipmentEquipReq)(nil), // 3: EquipmentEquipReq
(*EquipmentEquipResp)(nil), // 4: EquipmentEquipResp
(*EquipmentUpgradeReq)(nil), // 5: EquipmentUpgradeReq
(*EquipmentUpgradeResp)(nil), // 6: EquipmentUpgradeResp
(*EquipmentLockReq)(nil), // 7: EquipmentLockReq
(*EquipmentLockResp)(nil), // 8: EquipmentLockResp
(*EquipmentSellReq)(nil), // 9: EquipmentSellReq
(*EquipmentSellResp)(nil), // 10: EquipmentSellResp
(*EquipmentForgReq)(nil), // 11: EquipmentForgReq
(*EquipmentForgResp)(nil), // 12: EquipmentForgResp
(*DB_Equipment)(nil), // 13: DB_Equipment
(*EquipmentGetListReq)(nil), // 0: EquipmentGetListReq
(*EquipmentGetListResp)(nil), // 1: EquipmentGetListResp
(*EquipmentChangePush)(nil), // 2: EquipmentChangePush
(*EquipmentEquipReq)(nil), // 3: EquipmentEquipReq
(*EquipmentEquipResp)(nil), // 4: EquipmentEquipResp
(*EquipmentUpgradeReq)(nil), // 5: EquipmentUpgradeReq
(*EquipmentUpgradeResp)(nil), // 6: EquipmentUpgradeResp
(*EquipmentLockReq)(nil), // 7: EquipmentLockReq
(*EquipmentLockResp)(nil), // 8: EquipmentLockResp
(*EquipmentSellReq)(nil), // 9: EquipmentSellReq
(*EquipmentSellResp)(nil), // 10: EquipmentSellResp
(*EquipmentForgReq)(nil), // 11: EquipmentForgReq
(*EquipmentForgResp)(nil), // 12: EquipmentForgResp
(*EquipmentWashReq)(nil), // 13: EquipmentWashReq
(*EquipmentWashResp)(nil), // 14: EquipmentWashResp
(*EquipmentWashConfirmReq)(nil), // 15: EquipmentWashConfirmReq
(*EquipmentWashConfirmResp)(nil), // 16: EquipmentWashConfirmResp
(*DB_Equipment)(nil), // 17: DB_Equipment
(*EquipmentAttributeEntry)(nil), // 18: EquipmentAttributeEntry
}
var file_equipment_equipment_msg_proto_depIdxs = []int32{
13, // 0: EquipmentGetListResp.Equipments:type_name -> DB_Equipment
13, // 1: EquipmentChangePush.Equipments:type_name -> DB_Equipment
13, // 2: EquipmentEquipResp.Equipments:type_name -> DB_Equipment
13, // 3: EquipmentUpgradeResp.Equipment:type_name -> DB_Equipment
4, // [4:4] is the sub-list for method output_type
4, // [4:4] is the sub-list for method input_type
4, // [4:4] is the sub-list for extension type_name
4, // [4:4] is the sub-list for extension extendee
0, // [0:4] is the sub-list for field type_name
17, // 0: EquipmentGetListResp.Equipments:type_name -> DB_Equipment
17, // 1: EquipmentChangePush.Equipments:type_name -> DB_Equipment
17, // 2: EquipmentEquipResp.Equipments:type_name -> DB_Equipment
17, // 3: EquipmentUpgradeResp.Equipment:type_name -> DB_Equipment
18, // 4: EquipmentWashResp.adverbEntry:type_name -> EquipmentAttributeEntry
5, // [5:5] is the sub-list for method output_type
5, // [5:5] is the sub-list for method input_type
5, // [5:5] is the sub-list for extension type_name
5, // [5:5] is the sub-list for extension extendee
0, // [0:5] is the sub-list for field type_name
}
func init() { file_equipment_equipment_msg_proto_init() }
@ -951,6 +1179,54 @@ func file_equipment_equipment_msg_proto_init() {
return nil
}
}
file_equipment_equipment_msg_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*EquipmentWashReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_equipment_equipment_msg_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*EquipmentWashResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_equipment_equipment_msg_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*EquipmentWashConfirmReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_equipment_equipment_msg_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*EquipmentWashConfirmResp); 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{
@ -958,7 +1234,7 @@ func file_equipment_equipment_msg_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_equipment_equipment_msg_proto_rawDesc,
NumEnums: 0,
NumMessages: 13,
NumMessages: 17,
NumExtensions: 0,
NumServices: 0,
},

View File

@ -195,6 +195,8 @@ const (
ErrorCode_LibraryActivation ErrorCode = 2803 // 已经是激活状态
ErrorCode_LibraryReward ErrorCode = 2804 // 已经领取奖励
ErrorCode_LibraryLvReward ErrorCode = 2805 // 领奖等级没达到
// Battle
ErrorCode_BattleValidationFailed ErrorCode = 2901 //战斗校验失败
)
// Enum value maps for ErrorCode.
@ -355,6 +357,7 @@ var (
2803: "LibraryActivation",
2804: "LibraryReward",
2805: "LibraryLvReward",
2901: "BattleValidationFailed",
}
ErrorCode_value = map[string]int32{
"Success": 0,
@ -512,6 +515,7 @@ var (
"LibraryActivation": 2803,
"LibraryReward": 2804,
"LibraryLvReward": 2805,
"BattleValidationFailed": 2901,
}
)
@ -546,7 +550,7 @@ var File_errorcode_proto protoreflect.FileDescriptor
var file_errorcode_proto_rawDesc = []byte{
0x0a, 0x0f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x63, 0x6f, 0x64, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x2a, 0xf9, 0x1a, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12,
0x6f, 0x2a, 0x96, 0x1b, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12,
0x0b, 0x0a, 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d,
0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x10, 0x0a, 0x12,
0x1b, 0x0a, 0x17, 0x4e, 0x6f, 0x46, 0x69, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
@ -761,8 +765,10 @@ var file_errorcode_proto_rawDesc = []byte{
0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x10, 0xf3, 0x15, 0x12, 0x12, 0x0a, 0x0d, 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x52, 0x65,
0x77, 0x61, 0x72, 0x64, 0x10, 0xf4, 0x15, 0x12, 0x14, 0x0a, 0x0f, 0x4c, 0x69, 0x62, 0x72, 0x61,
0x72, 0x79, 0x4c, 0x76, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xf5, 0x15, 0x42, 0x06, 0x5a,
0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x72, 0x79, 0x4c, 0x76, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0xf5, 0x15, 0x12, 0x1b, 0x0a,
0x16, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10, 0xd5, 0x16, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b,
0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GameArenaActiveReward struct {
_dataMap map[int32]*GameArenaActiveRewardData
_dataList []*GameArenaActiveRewardData
}
func NewGameArenaActiveReward(_buf []map[string]interface{}) (*GameArenaActiveReward, error) {
_dataList := make([]*GameArenaActiveRewardData, 0, len(_buf))
dataMap := make(map[int32]*GameArenaActiveRewardData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameArenaActiveRewardData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.LvId] = _v
}
}
return &GameArenaActiveReward{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameArenaActiveReward) GetDataMap() map[int32]*GameArenaActiveRewardData {
return table._dataMap
}
func (table *GameArenaActiveReward) GetDataList() []*GameArenaActiveRewardData {
return table._dataList
}
func (table *GameArenaActiveReward) Get(key int32) *GameArenaActiveRewardData {
return table._dataMap[key]
}

View File

@ -0,0 +1,58 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameArenaActiveRewardData struct {
LvId int32
ScoreLow int32
ScoreUp int32
HumanNum int32
Name string
WinReward []*Gameatn
}
const TypeId_GameArenaActiveRewardData = 869812042
func (*GameArenaActiveRewardData) GetTypeId() int32 {
return 869812042
}
func (_v *GameArenaActiveRewardData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["lv_id"].(float64); !_ok_ { err = errors.New("lv_id error"); return }; _v.LvId = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["score_low"].(float64); !_ok_ { err = errors.New("score_low error"); return }; _v.ScoreLow = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["score_up"].(float64); !_ok_ { err = errors.New("score_up error"); return }; _v.ScoreUp = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["human_num"].(float64); !_ok_ { err = errors.New("human_num error"); return }; _v.HumanNum = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Name, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["win_reward"].([]interface{}); !_ok_ { err = errors.New("win_reward error"); return }
_v.WinReward = make([]*Gameatn, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatn
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } }
_v.WinReward = append(_v.WinReward, _list_v_)
}
}
return
}
func DeserializeGameArenaActiveRewardData(_buf map[string]interface{}) (*GameArenaActiveRewardData, error) {
v := &GameArenaActiveRewardData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GameArenaBuyChallenge struct {
_dataMap map[int32]*GameArenaBuyChallengeData
_dataList []*GameArenaBuyChallengeData
}
func NewGameArenaBuyChallenge(_buf []map[string]interface{}) (*GameArenaBuyChallenge, error) {
_dataList := make([]*GameArenaBuyChallengeData, 0, len(_buf))
dataMap := make(map[int32]*GameArenaBuyChallengeData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameArenaBuyChallengeData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Num] = _v
}
}
return &GameArenaBuyChallenge{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameArenaBuyChallenge) GetDataMap() map[int32]*GameArenaBuyChallengeData {
return table._dataMap
}
func (table *GameArenaBuyChallenge) GetDataList() []*GameArenaBuyChallengeData {
return table._dataList
}
func (table *GameArenaBuyChallenge) Get(key int32) *GameArenaBuyChallengeData {
return table._dataMap[key]
}

View File

@ -0,0 +1,50 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameArenaBuyChallengeData struct {
Num int32
Need []*Gameatn
}
const TypeId_GameArenaBuyChallengeData = -706156046
func (*GameArenaBuyChallengeData) GetTypeId() int32 {
return -706156046
}
func (_v *GameArenaBuyChallengeData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["num"].(float64); !_ok_ { err = errors.New("num error"); return }; _v.Num = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["need"].([]interface{}); !_ok_ { err = errors.New("need error"); return }
_v.Need = make([]*Gameatn, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatn
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } }
_v.Need = append(_v.Need, _list_v_)
}
}
return
}
func DeserializeGameArenaBuyChallengeData(_buf map[string]interface{}) (*GameArenaBuyChallengeData, error) {
v := &GameArenaBuyChallengeData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GameArenaChallengeNpc struct {
_dataMap map[int32]*GameArenaChallengeNpcData
_dataList []*GameArenaChallengeNpcData
}
func NewGameArenaChallengeNpc(_buf []map[string]interface{}) (*GameArenaChallengeNpc, error) {
_dataList := make([]*GameArenaChallengeNpcData, 0, len(_buf))
dataMap := make(map[int32]*GameArenaChallengeNpcData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameArenaChallengeNpcData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GameArenaChallengeNpc{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameArenaChallengeNpc) GetDataMap() map[int32]*GameArenaChallengeNpcData {
return table._dataMap
}
func (table *GameArenaChallengeNpc) GetDataList() []*GameArenaChallengeNpcData {
return table._dataList
}
func (table *GameArenaChallengeNpc) Get(key int32) *GameArenaChallengeNpcData {
return table._dataMap[key]
}

View File

@ -0,0 +1,66 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameArenaChallengeNpcData struct {
Id int32
OpenCond int32
OpenValue int32
MonsterformatId int32
StroyIdFront int32
StroyIdAfter int32
Name string
ReviveCd int32
ReviveMonsterformatId int32
NpcReward []*Gameatn
}
const TypeId_GameArenaChallengeNpcData = 362128499
func (*GameArenaChallengeNpcData) GetTypeId() int32 {
return 362128499
}
func (_v *GameArenaChallengeNpcData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["open_cond"].(float64); !_ok_ { err = errors.New("open_cond error"); return }; _v.OpenCond = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["open_value"].(float64); !_ok_ { err = errors.New("open_value error"); return }; _v.OpenValue = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["monsterformat_id"].(float64); !_ok_ { err = errors.New("monsterformat_id error"); return }; _v.MonsterformatId = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["stroy_id_front"].(float64); !_ok_ { err = errors.New("stroy_id_front error"); return }; _v.StroyIdFront = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["stroy_id_after"].(float64); !_ok_ { err = errors.New("stroy_id_after error"); return }; _v.StroyIdAfter = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Name, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["revive_cd"].(float64); !_ok_ { err = errors.New("revive_cd error"); return }; _v.ReviveCd = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["revive_monsterformat_id"].(float64); !_ok_ { err = errors.New("revive_monsterformat_id error"); return }; _v.ReviveMonsterformatId = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["npc_reward"].([]interface{}); !_ok_ { err = errors.New("npc_reward error"); return }
_v.NpcReward = make([]*Gameatn, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatn
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } }
_v.NpcReward = append(_v.NpcReward, _list_v_)
}
}
return
}
func DeserializeGameArenaChallengeNpcData(_buf map[string]interface{}) (*GameArenaChallengeNpcData, error) {
v := &GameArenaChallengeNpcData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GameArenaRankReward struct {
_dataMap map[int32]*GameArenaRankRewardData
_dataList []*GameArenaRankRewardData
}
func NewGameArenaRankReward(_buf []map[string]interface{}) (*GameArenaRankReward, error) {
_dataList := make([]*GameArenaRankRewardData, 0, len(_buf))
dataMap := make(map[int32]*GameArenaRankRewardData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameArenaRankRewardData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GameArenaRankReward{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameArenaRankReward) GetDataMap() map[int32]*GameArenaRankRewardData {
return table._dataMap
}
func (table *GameArenaRankReward) GetDataList() []*GameArenaRankRewardData {
return table._dataList
}
func (table *GameArenaRankReward) Get(key int32) *GameArenaRankRewardData {
return table._dataMap[key]
}

View File

@ -0,0 +1,54 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameArenaRankRewardData struct {
Id int32
RankLow int32
RankUp int32
RankReward []*Gameatn
}
const TypeId_GameArenaRankRewardData = -1965397072
func (*GameArenaRankRewardData) GetTypeId() int32 {
return -1965397072
}
func (_v *GameArenaRankRewardData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["rank_low"].(float64); !_ok_ { err = errors.New("rank_low error"); return }; _v.RankLow = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["rank_up"].(float64); !_ok_ { err = errors.New("rank_up error"); return }; _v.RankUp = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["rank_reward"].([]interface{}); !_ok_ { err = errors.New("rank_reward error"); return }
_v.RankReward = make([]*Gameatn, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatn
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } }
_v.RankReward = append(_v.RankReward, _list_v_)
}
}
return
}
func DeserializeGameArenaRankRewardData(_buf map[string]interface{}) (*GameArenaRankRewardData, error) {
v := &GameArenaRankRewardData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,42 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
type GameArenaRobot struct {
_dataMap map[int32]*GameArenaRobotData
_dataList []*GameArenaRobotData
}
func NewGameArenaRobot(_buf []map[string]interface{}) (*GameArenaRobot, error) {
_dataList := make([]*GameArenaRobotData, 0, len(_buf))
dataMap := make(map[int32]*GameArenaRobotData)
for _, _ele_ := range _buf {
if _v, err2 := DeserializeGameArenaRobotData(_ele_); err2 != nil {
return nil, err2
} else {
_dataList = append(_dataList, _v)
dataMap[_v.Id] = _v
}
}
return &GameArenaRobot{_dataList:_dataList, _dataMap:dataMap}, nil
}
func (table *GameArenaRobot) GetDataMap() map[int32]*GameArenaRobotData {
return table._dataMap
}
func (table *GameArenaRobot) GetDataList() []*GameArenaRobotData {
return table._dataList
}
func (table *GameArenaRobot) Get(key int32) *GameArenaRobotData {
return table._dataMap[key]
}

View File

@ -0,0 +1,41 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameArenaRobotData struct {
Id int32
LvId int32
MonsterformatId int32
Weight int32
}
const TypeId_GameArenaRobotData = -1320510615
func (*GameArenaRobotData) GetTypeId() int32 {
return -1320510615
}
func (_v *GameArenaRobotData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["lv_id"].(float64); !_ok_ { err = errors.New("lv_id error"); return }; _v.LvId = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["monsterformat_id"].(float64); !_ok_ { err = errors.New("monsterformat_id error"); return }; _v.MonsterformatId = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["weight"].(float64); !_ok_ { err = errors.New("weight error"); return }; _v.Weight = int32(_tempNum_) }
return
}
func DeserializeGameArenaRobotData(_buf map[string]interface{}) (*GameArenaRobotData, error) {
v := &GameArenaRobotData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}