diff --git a/bin/json/game_gamesummary.json b/bin/json/game_gamesummary.json
index e148425f3..ec4090a92 100644
--- a/bin/json/game_gamesummary.json
+++ b/bin/json/game_gamesummary.json
@@ -581,5 +581,38 @@
"n": 1
}
]
+ },
+ {
+ "id": 19,
+ "name": {
+ "key": "gamesummary_node_name_19",
+ "text": "缤纷乐声"
+ },
+ "tabId": 13,
+ "mapPos": {
+ "x": 4695,
+ "y": 2242
+ },
+ "type": 4,
+ "params": "",
+ "jumpId": 10062,
+ "introduce": {
+ "key": "gamesummary_node_introdunce_20",
+ "text": "缤纷乐声"
+ },
+ "bg": "hkz_wftj_zxgk",
+ "icon": "hkz_tx_zxgk",
+ "dropshow": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1
+ },
+ {
+ "a": "attr",
+ "t": "diamond",
+ "n": 1
+ }
+ ]
}
]
\ No newline at end of file
diff --git a/bin/json/game_gamesummarytab.json b/bin/json/game_gamesummarytab.json
index acd9f2721..e3ae0bf6c 100644
--- a/bin/json/game_gamesummarytab.json
+++ b/bin/json/game_gamesummarytab.json
@@ -208,7 +208,7 @@
"layer": 0,
"name": {
"key": "gamesummary_fathernode_name_13",
- "text": "扑克对决"
+ "text": "小游戏合集"
},
"mapPos": {
"x": -1121,
@@ -217,7 +217,7 @@
"scale": 0.4,
"usetext": {
"key": "gamesummary_fathernode_usetext_13",
- "text": "扑克对决"
+ "text": "小游戏合集"
}
}
]
\ No newline at end of file
diff --git a/bin/json/game_mainstage.json b/bin/json/game_mainstage.json
index 338920788..eb8fc8247 100644
--- a/bin/json/game_mainstage.json
+++ b/bin/json/game_mainstage.json
@@ -17770,8 +17770,8 @@
"herocolor": 1,
"heroimg": "zxgq_qp_icon_gth",
"bubbletext": {
- "key": "main_stage_bubbletext_169",
- "text": "哪里来的豚鼠!"
+ "key": "",
+ "text": ""
},
"animation": [],
"hide": 0,
@@ -17785,77 +17785,31 @@
"text": ""
},
"mainlineName": {
- "key": "mainchapter_main_stage_mainlineName_121",
- "text": "3-6"
+ "key": "",
+ "text": ""
},
"title": {
- "key": "mainchapter_main_stage_title_171",
- "text": "进击的豚鼠"
+ "key": "",
+ "text": ""
},
"desc": {
- "key": "mainchapter_main_stage_desc_93",
- "text": "坏蛋联盟被一群小豚鼠团团围住,快去帮帮他们!"
+ "key": "",
+ "text": ""
},
"exp": 0,
- "hero_exp": 360,
- "ps_consume": [
- {
- "a": "attr",
- "t": "ps",
- "n": 9
- }
- ],
- "ps_mg": [
- {
- "a": "attr",
- "t": "ps",
- "n": 1
- }
- ],
- "firstaward": [
- {
- "a": "attr",
- "t": "gold",
- "n": 7200
- },
- {
- "a": "equi",
- "t": "11015",
- "n": 1
- }
- ],
- "lotteryward": 17111010,
- "commonaward": [
- {
- "a": "attr",
- "t": "gold",
- "n": 7200
- },
- {
- "a": "equi",
- "t": "11025",
- "n": 1
- }
- ],
+ "hero_exp": 0,
+ "ps_consume": [],
+ "ps_mg": [],
+ "firstaward": [],
+ "lotteryward": 0,
+ "commonaward": [],
"BattleReadyID": 0,
"FormatList": [],
"helphero": [],
"banhero": [],
- "star": [
- 1,
- 1,
- 1
- ],
- "star_type": [
- 1,
- 2,
- 2
- ],
- "star_value": [
- 0,
- 2,
- 1
- ],
+ "star": [],
+ "star_type": [],
+ "star_value": [],
"challengeward": 0
},
{
@@ -17891,8 +17845,8 @@
"herocolor": 1,
"heroimg": "zxgq_qp_icon_gth",
"bubbletext": {
- "key": "main_stage_bubbletext_170",
- "text": "哼!打月光原石主意的人我们可见多了!"
+ "key": "main_stage_bubbletext_169",
+ "text": "哪里来的豚鼠!"
},
"animation": [],
"hide": 0,
@@ -17911,11 +17865,11 @@
},
"title": {
"key": "mainchapter_main_stage_title_172",
- "text": "不打不相识"
+ "text": "进击的豚鼠"
},
"desc": {
"key": "mainchapter_main_stage_desc_94",
- "text": "被坏蛋联盟误会成了觊觎原石的小偷,得赶快解开误会才行。"
+ "text": "坏蛋联盟被一群小豚鼠团团围住,快去帮帮他们!"
},
"exp": 0,
"hero_exp": 360,
@@ -18014,8 +17968,8 @@
"herocolor": 1,
"heroimg": "zxgq_qp_icon_gth",
"bubbletext": {
- "key": "main_stage_bubbletext_171",
- "text": "前面的车辆靠边接受检查!"
+ "key": "main_stage_bubbletext_170",
+ "text": "哼!打月光原石主意的人我们可见多了!"
},
"animation": [],
"hide": 0,
@@ -18034,11 +17988,11 @@
},
"title": {
"key": "mainchapter_main_stage_title_173",
- "text": "伏击"
+ "text": "不打不相识"
},
"desc": {
"key": "mainchapter_main_stage_desc_95",
- "text": "运送月光原石要紧,警长你就委屈一下吧!"
+ "text": "被坏蛋联盟误会成了觊觎原石的小偷,得赶快解开误会才行。"
},
"exp": 0,
"hero_exp": 360,
@@ -18137,8 +18091,8 @@
"herocolor": 1,
"heroimg": "zxgq_qp_icon_gth",
"bubbletext": {
- "key": "",
- "text": ""
+ "key": "main_stage_bubbletext_171",
+ "text": "前面的车辆靠边接受检查!"
},
"animation": [],
"hide": 0,
@@ -18164,27 +18118,67 @@
"text": ""
},
"exp": 0,
- "hero_exp": 0,
- "ps_consume": [],
- "ps_mg": [],
+ "hero_exp": 360,
+ "ps_consume": [
+ {
+ "a": "attr",
+ "t": "ps",
+ "n": 9
+ }
+ ],
+ "ps_mg": [
+ {
+ "a": "attr",
+ "t": "ps",
+ "n": 1
+ }
+ ],
"firstaward": [
{
"a": "attr",
"t": "gold",
"n": 7201
+ },
+ {
+ "a": "equi",
+ "t": "11015",
+ "n": 1
+ }
+ ],
+ "lotteryward": 17111010,
+ "commonaward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 7200
+ },
+ {
+ "a": "equi",
+ "t": "11025",
+ "n": 1
}
],
- "lotteryward": 0,
- "commonaward": [],
"BattleReadyID": 116,
"FormatList": [
103041
],
"helphero": [],
"banhero": [],
- "star": [],
- "star_type": [],
- "star_value": [],
+ "star": [
+ 1,
+ 1,
+ 1
+ ],
+ "star_type": [
+ 1,
+ 2,
+ 2
+ ],
+ "star_value": [
+ 0,
+ 2,
+ 1
+ ],
"challengeward": 0
},
{
diff --git a/bin/json/game_msgdistrib.json b/bin/json/game_msgdistrib.json
index 61c763669..2681ae9cf 100644
--- a/bin/json/game_msgdistrib.json
+++ b/bin/json/game_msgdistrib.json
@@ -154,17 +154,5 @@
"open": true,
"routrules": "~/worker",
"describe": "三消"
- },
- {
- "msgid": "gameinvite",
- "open": true,
- "routrules": "~/worker",
- "describe": "游戏邀请"
- },
- {
- "msgid": "caninerabbit",
- "open": true,
- "routrules": "~/worker",
- "describe": "犬兔大战"
}
]
\ No newline at end of file
diff --git a/bin/json/game_playingmethod.json b/bin/json/game_playingmethod.json
index 0a6ac999d..f86cfc57c 100644
--- a/bin/json/game_playingmethod.json
+++ b/bin/json/game_playingmethod.json
@@ -15,22 +15,6 @@
"detail": 1,
"weight": 0
},
- {
- "key": 2,
- "open": 999999,
- "icon": "",
- "name": {
- "key": "consume_consume_playingmethod_name_02",
- "text": "3分模式"
- },
- "txt": {
- "key": "consume_consume_playingmethod_txt_02",
- "text": "额外新增3分方块,独立于普通6色方块之外,消除后可以获得3分。"
- },
- "type": 2,
- "detail": 1,
- "weight": 2000
- },
{
"key": 3,
"open": 999999,
@@ -62,53 +46,5 @@
"type": 2,
"detail": 1,
"weight": 2000
- },
- {
- "key": 5,
- "open": 999999,
- "icon": "",
- "name": {
- "key": "consume_consume_playingmethod_name_05",
- "text": "锣鼓喧天"
- },
- "txt": {
- "key": "consume_consume_playingmethod_txt_05",
- "text": "中央格子被改造为锣鼓,消除锣鼓内的方块会获得额外积分,每次操作如果没有触发锣鼓内的方块消除,积分可以被累计。"
- },
- "type": 2,
- "detail": 2,
- "weight": 2000
- },
- {
- "key": 6,
- "open": 999999,
- "icon": "",
- "name": {
- "key": "consume_consume_playingmethod_name_06",
- "text": "电闪雷鸣"
- },
- "txt": {
- "key": "consume_consume_playingmethod_txt_06",
- "text": "每名玩家行动开始会随机生成2个雷电格子,消除雷电格子内的方块会获得一次行动步骤。"
- },
- "type": 2,
- "detail": 2,
- "weight": 2000
- },
- {
- "key": 7,
- "open": 999999,
- "icon": "",
- "name": {
- "key": "consume_consume_playingmethod_name_07",
- "text": "飞天舞女"
- },
- "txt": {
- "key": "consume_consume_playingmethod_txt_07",
- "text": "每名玩家行动开始会随机生成2个飞天舞女格子,消除飞天舞女格子内的方块会消除周围所有方块。"
- },
- "type": 2,
- "detail": 2,
- "weight": 2000
}
]
\ No newline at end of file
diff --git a/bin/json/game_tdmonsterappear.json b/bin/json/game_tdmonsterappear.json
index 7b463c69d..2f91290c9 100644
--- a/bin/json/game_tdmonsterappear.json
+++ b/bin/json/game_tdmonsterappear.json
@@ -22,7 +22,7 @@
"copy_id": 1,
"num": 2,
"time": 20,
- "count": 1,
+ "count": 2,
"monster_id": 1021,
"hp_multiple": 1000
},
diff --git a/modules/entertainment/api_getlist.go b/modules/entertainment/api_getlist.go
index aa65f6af3..5503530c3 100644
--- a/modules/entertainment/api_getlist.go
+++ b/modules/entertainment/api_getlist.go
@@ -3,6 +3,7 @@ package entertainment
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
+ "go_dreamfactory/sys/configure"
)
//参数校验
@@ -25,6 +26,10 @@ func (this *apiComp) GetList(session comm.IUserSession, req *pb.EntertainGetList
}
return
}
+ for _, v := range this.module.configure.GetGameConsumeIntegral() {
+ list.Playtype = append(list.Playtype, v.Key) // 配置读取一个玩法
+ }
+ list.Rtime = configure.Now().Unix()
session.SendMsg(string(this.module.GetType()), "getlist", &pb.EntertainGetListResp{
Data: list,
})
diff --git a/modules/entertainment/configure.go b/modules/entertainment/configure.go
index 266b337ab..ac9ed0529 100644
--- a/modules/entertainment/configure.go
+++ b/modules/entertainment/configure.go
@@ -12,9 +12,11 @@ import (
)
const (
- game_block = "game_block.json"
- game_consumehero = "game_consumehero.json"
- game_integral = "game_integral.json"
+ game_block = "game_block.json"
+ game_consumehero = "game_consumehero.json"
+ game_integral = "game_integral.json"
+ game_consumeIntegral = "game_consumeIntegral.json"
+ game_playingmethod = "game_playingmethod.json"
)
// /配置管理组件
@@ -31,8 +33,10 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
err = this.MCompConfigure.Init(service, module, comp, options)
this.module = module.(*Entertainment)
err = this.LoadMultiConfigure(map[string]interface{}{
- game_consumehero: cfg.NewGameConsumeHero,
- game_integral: cfg.NewGameIntegral,
+ game_consumehero: cfg.NewGameConsumeHero,
+ game_integral: cfg.NewGameIntegral,
+ game_consumeIntegral: cfg.NewGameConsumeIntegral,
+ game_playingmethod: cfg.NewGamePlayingMethod,
})
configure.RegisterConfigure(game_block, cfg.NewGameBlock, this.LoadGameBlock)
@@ -165,3 +169,31 @@ func (this *configureComp) GetInitGameConsumeHero() (cardid []string) {
return
}
+
+func (this *configureComp) GetGameConsumeIntegral() (itype []*cfg.GamePlayingMethodData) {
+ if v, err := this.GetConfigure(game_playingmethod); err == nil {
+ if configure, ok := v.(*cfg.GamePlayingMethod); ok {
+ for _, v := range configure.GetDataList() {
+ if v.Type == 2 {
+ itype = append(itype, v)
+ }
+ }
+ }
+ }
+ return
+}
+
+func (this *configureComp) GetGameConsumeIntegralByKey(key int32) (conf *cfg.GamePlayingMethodData, err error) {
+ var (
+ v interface{}
+ )
+ if v, err = this.GetConfigure(game_playingmethod); err == nil {
+ if configure, ok := v.(*cfg.GamePlayingMethod); ok {
+ if conf = configure.Get(key); conf != nil {
+ return
+ }
+ }
+ }
+ err = comm.NewNotFoundConfErr(moduleName, game_playingmethod, key)
+ return
+}
diff --git a/modules/entertainment/room.go b/modules/entertainment/room.go
index ec673efeb..f4c24ca87 100644
--- a/modules/entertainment/room.go
+++ b/modules/entertainment/room.go
@@ -408,23 +408,13 @@ func (this *Room) ReceiveMessage(session comm.IUserSession, stype string, msg pr
this.AiOperator()
}
case "ready":
+ var bStartGame bool // 可以开始游戏
if len(this.szSession) == 1 { // AI对战的话直接开始游戏
this.NexPower = this.player1.Userinfo.Uid
this.curPower = this.player1.Userinfo.Uid
this.player1.Ps = MaxPs
this.player2.Ps = 0
- this.module.Debugf("match ai")
- if err := this.module.SendMsgSyncToSession(string(this.module.GetType()), "startgame", &pb.EntertainStartGamePush{
- User1: this.player1,
- User2: this.player2,
- Mpadata: &pb.MapData{Data: this.chessboard.Plat},
- Power: this.NexPower,
- Round: this.round,
- Roomid: this.Id, // 房间ID
- }, this.szSession...); err != nil {
- this.Errorln(err)
- }
- this.operatetimer = timewheel.Add(time.Second*MaxTime, this.operateTimeOut)
+ bStartGame = true
} else {
if this.player1.Userinfo.Uid == session.GetUserId() {
this.rd1 = true
@@ -433,24 +423,31 @@ func (this *Room) ReceiveMessage(session comm.IUserSession, stype string, msg pr
}
this.module.Debugf("match user1ready:%v,ready2:%v", this.rd1, this.rd2)
if this.rd1 && this.rd2 { // 两个玩家都准备好了 那么就开始游戏
- this.NexPower = this.player1.Userinfo.Uid
- this.curPower = this.player1.Userinfo.Uid
- this.player1.Ps = MaxPs
- this.player2.Ps = 0
- if err := this.module.SendMsgSyncToSession(string(this.module.GetType()), "startgame", &pb.EntertainStartGamePush{
- User1: this.player1,
- User2: this.player2,
- Mpadata: &pb.MapData{Data: this.chessboard.Plat},
- Power: this.NexPower,
- Round: this.round,
- Roomid: this.Id,
- }, this.szSession...); err != nil {
- this.Errorln(err)
- }
-
- this.operatetimer = timewheel.Add(time.Second*MaxTime, this.operateTimeOut)
+ bStartGame = true
}
}
+ if bStartGame {
+ var weight []int32 // 权重
+ // 开始随机玩法
+ list := this.module.configure.GetGameConsumeIntegral()
+ for _, v := range list {
+ weight = append(weight, v.Weight)
+ }
+
+ if err := this.module.SendMsgSyncToSession(string(this.module.GetType()), "startgame", &pb.EntertainStartGamePush{
+ User1: this.player1,
+ User2: this.player2,
+ Mpadata: &pb.MapData{Data: this.chessboard.Plat},
+ Power: this.NexPower,
+ Round: this.round,
+ Roomid: this.Id, // 房间ID
+ Playtype: list[comm.GetRandW(weight)].Key, // 通过权重随机一个玩法
+ }, this.szSession...); err != nil {
+ this.Errorln(err)
+ }
+ this.operatetimer = timewheel.Add(time.Second*MaxTime, this.operateTimeOut)
+ }
+
case "reconnect": // 重连
session.SendMsg(string(this.module.GetType()), "reconnect", &pb.EntertainReconnectResp{
Roomid: this.Id,
diff --git a/pb/entertain_db.pb.go b/pb/entertain_db.pb.go
index 063d39d8d..e0e5a8cec 100644
--- a/pb/entertain_db.pb.go
+++ b/pb/entertain_db.pb.go
@@ -312,10 +312,12 @@ type DBXXLData struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID
- Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID
- Reward map[int32]int32 `protobuf:"bytes,3,rep,name=reward,proto3" json:"reward" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key 配置表唯一ID
- Card map[string]int32 `protobuf:"bytes,4,rep,name=card,proto3" json:"card" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key 卡id value 数量(可为0)
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID
+ Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID
+ Reward map[int32]int32 `protobuf:"bytes,3,rep,name=reward,proto3" json:"reward" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key 配置表唯一ID
+ Card map[string]int32 `protobuf:"bytes,4,rep,name=card,proto3" json:"card" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // key 卡id value 数量(可为0)
+ Rtime int64 `protobuf:"varint,5,opt,name=rtime,proto3" json:"rtime"` // 刷新时间 (客户端不用)
+ Playtype []int32 `protobuf:"varint,6,rep,packed,name=playtype,proto3" json:"playtype"` // 每天随机玩法
}
func (x *DBXXLData) Reset() {
@@ -378,6 +380,20 @@ func (x *DBXXLData) GetCard() map[string]int32 {
return nil
}
+func (x *DBXXLData) GetRtime() int64 {
+ if x != nil {
+ return x.Rtime
+ }
+ return 0
+}
+
+func (x *DBXXLData) GetPlaytype() []int32 {
+ if x != nil {
+ return x.Playtype
+ }
+ return nil
+}
+
var File_entertain_entertain_db_proto protoreflect.FileDescriptor
var file_entertain_entertain_db_proto_rawDesc = []byte{
@@ -413,7 +429,7 @@ var file_entertain_entertain_db_proto_rawDesc = []byte{
0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x73, 0x65, 0x55, 0x73,
0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x69, 0x6e, 0x66, 0x6f,
0x12, 0x16, 0x0a, 0x06, 0x63, 0x61, 0x72, 0x64, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x06, 0x63, 0x61, 0x72, 0x64, 0x69, 0x64, 0x22, 0xfb, 0x01, 0x0a, 0x09, 0x44, 0x42, 0x58,
+ 0x52, 0x06, 0x63, 0x61, 0x72, 0x64, 0x69, 0x64, 0x22, 0xad, 0x02, 0x0a, 0x09, 0x44, 0x42, 0x58,
0x58, 0x4c, 0x44, 0x61, 0x74, 0x61, 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, 0x2e, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61,
@@ -422,15 +438,18 @@ var file_entertain_entertain_db_proto_rawDesc = []byte{
0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x63, 0x61, 0x72, 0x64,
0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x44, 0x61,
0x74, 0x61, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x63, 0x61,
- 0x72, 0x64, 0x1a, 0x39, 0x0a, 0x0b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72,
- 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03,
- 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a,
- 0x09, 0x43, 0x61, 0x72, 0x64, 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, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06,
- 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x03, 0x52, 0x05, 0x72, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79,
+ 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79,
+ 0x74, 0x79, 0x70, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x45, 0x6e,
+ 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
+ 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a,
+ 0x37, 0x0a, 0x09, 0x43, 0x61, 0x72, 0x64, 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, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62,
+ 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
diff --git a/pb/entertain_msg.pb.go b/pb/entertain_msg.pb.go
index 2c3bece3c..ee6b2f9d1 100644
--- a/pb/entertain_msg.pb.go
+++ b/pb/entertain_msg.pb.go
@@ -304,12 +304,13 @@ type EntertainStartGamePush struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- User1 *PlayerData `protobuf:"bytes,1,opt,name=user1,proto3" json:"user1"`
- User2 *PlayerData `protobuf:"bytes,2,opt,name=user2,proto3" json:"user2"`
- Mpadata *MapData `protobuf:"bytes,3,opt,name=mpadata,proto3" json:"mpadata"` // 地图数据
- Power string `protobuf:"bytes,4,opt,name=power,proto3" json:"power"` // 操作权
- Round int32 `protobuf:"varint,5,opt,name=round,proto3" json:"round"` // 回合数
- Roomid string `protobuf:"bytes,6,opt,name=roomid,proto3" json:"roomid"` // 房间id
+ User1 *PlayerData `protobuf:"bytes,1,opt,name=user1,proto3" json:"user1"`
+ User2 *PlayerData `protobuf:"bytes,2,opt,name=user2,proto3" json:"user2"`
+ Mpadata *MapData `protobuf:"bytes,3,opt,name=mpadata,proto3" json:"mpadata"` // 地图数据
+ Power string `protobuf:"bytes,4,opt,name=power,proto3" json:"power"` // 操作权
+ Round int32 `protobuf:"varint,5,opt,name=round,proto3" json:"round"` // 回合数
+ Roomid string `protobuf:"bytes,6,opt,name=roomid,proto3" json:"roomid"` // 房间id
+ Playtype int32 `protobuf:"varint,7,opt,name=playtype,proto3" json:"playtype"` // 随机的玩法类型
}
func (x *EntertainStartGamePush) Reset() {
@@ -386,6 +387,13 @@ func (x *EntertainStartGamePush) GetRoomid() string {
return ""
}
+func (x *EntertainStartGamePush) GetPlaytype() int32 {
+ if x != nil {
+ return x.Playtype
+ }
+ return 0
+}
+
// 操作
type EntertainOperatorReq struct {
state protoimpl.MessageState
@@ -1346,7 +1354,7 @@ var file_entertain_entertain_msg_proto_rawDesc = []byte{
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x22, 0x2a, 0x0a, 0x12,
0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x61, 0x64, 0x79, 0x52, 0x65,
0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x61, 0x64, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x05, 0x72, 0x65, 0x61, 0x64, 0x79, 0x22, 0xc6, 0x01, 0x0a, 0x16, 0x45, 0x6e, 0x74,
+ 0x08, 0x52, 0x05, 0x72, 0x65, 0x61, 0x64, 0x79, 0x22, 0xe2, 0x01, 0x0a, 0x16, 0x45, 0x6e, 0x74,
0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x47, 0x61, 0x6d, 0x65, 0x50,
0x75, 0x73, 0x68, 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x31, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52,
@@ -1359,112 +1367,113 @@ var file_entertain_entertain_msg_proto_rawDesc = []byte{
0x77, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01,
0x28, 0x05, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f,
0x6d, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69,
- 0x64, 0x22, 0x76, 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4f, 0x70,
- 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f,
- 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69,
- 0x64, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
- 0x52, 0x05, 0x69, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x75, 0x72, 0x69, 0x64,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x75, 0x72, 0x69, 0x64, 0x12, 0x1a, 0x0a,
- 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52,
- 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x64, 0x22, 0x31, 0x0a, 0x15, 0x45, 0x6e, 0x74,
- 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65,
- 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0xaa, 0x02, 0x0a,
- 0x18, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
- 0x6f, 0x72, 0x52, 0x73, 0x74, 0x50, 0x75, 0x73, 0x68, 0x12, 0x22, 0x0a, 0x07, 0x6d, 0x70, 0x61,
- 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x4d, 0x61, 0x70,
- 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a,
- 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f,
- 0x77, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x75, 0x72, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12,
- 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
- 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x05,
- 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x05, 0x75,
- 0x73, 0x65, 0x72, 0x31, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61,
- 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x31, 0x12, 0x21,
- 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x32, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
- 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72,
- 0x32, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05,
- 0x52, 0x05, 0x69, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x75, 0x72, 0x69, 0x64,
- 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x75, 0x72, 0x69, 0x64, 0x12, 0x1a, 0x0a,
- 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52,
- 0x08, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69, 0x64, 0x22, 0xe2, 0x01, 0x0a, 0x15, 0x45, 0x6e,
- 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x50,
- 0x75, 0x73, 0x68, 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x31, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52,
- 0x05, 0x75, 0x73, 0x65, 0x72, 0x31, 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x32, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61,
- 0x74, 0x61, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x32, 0x12, 0x22, 0x0a, 0x07, 0x6d, 0x70, 0x61,
- 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x4d, 0x61, 0x70,
- 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a,
- 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f,
- 0x77, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x77, 0x69, 0x6e,
- 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x77, 0x69, 0x6e, 0x12, 0x21, 0x0a, 0x06, 0x72,
- 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73,
- 0x65, 0x72, 0x41, 0x74, 0x6e, 0x6f, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x92,
- 0x01, 0x0a, 0x16, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x65,
- 0x72, 0x52, 0x6f, 0x6f, 0x6d, 0x50, 0x75, 0x73, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x6f,
- 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x6f, 0x6f, 0x69, 0x64, 0x12,
- 0x1c, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x70, 0x61, 0x74, 0x68, 0x12, 0x21, 0x0a,
- 0x05, 0x75, 0x73, 0x65, 0x72, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50,
- 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x31,
- 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x75, 0x73,
- 0x65, 0x72, 0x32, 0x22, 0x2f, 0x0a, 0x15, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e,
- 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06,
- 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f,
- 0x6f, 0x6d, 0x69, 0x64, 0x22, 0xf8, 0x01, 0x0a, 0x16, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61,
- 0x69, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12,
- 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
- 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61,
- 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x4d, 0x61, 0x70, 0x44, 0x61,
- 0x74, 0x61, 0x52, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x70,
- 0x6f, 0x77, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65,
- 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x75, 0x72, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x14, 0x0a,
- 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x63,
- 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x06, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65,
- 0x72, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65,
+ 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x79, 0x74, 0x79, 0x70, 0x65, 0x22, 0x76, 0x0a,
+ 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
+ 0x6f, 0x72, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x12, 0x14, 0x0a,
+ 0x05, 0x69, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74,
+ 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x75, 0x72, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x05, 0x52, 0x05, 0x63, 0x75, 0x72, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x61, 0x72,
+ 0x67, 0x65, 0x74, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x61, 0x72,
+ 0x67, 0x65, 0x74, 0x69, 0x64, 0x22, 0x31, 0x0a, 0x15, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61,
+ 0x69, 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18,
+ 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0xaa, 0x02, 0x0a, 0x18, 0x45, 0x6e, 0x74,
+ 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x73,
+ 0x74, 0x50, 0x75, 0x73, 0x68, 0x12, 0x22, 0x0a, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x4d, 0x61, 0x70, 0x44, 0x61, 0x74, 0x61,
+ 0x52, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77,
+ 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12,
+ 0x1a, 0x0a, 0x08, 0x63, 0x75, 0x72, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x08, 0x63, 0x75, 0x72, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x73,
+ 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72,
+ 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05,
+ 0x52, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x31,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44,
+ 0x61, 0x74, 0x61, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x31, 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73,
+ 0x65, 0x72, 0x32, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79,
+ 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x32, 0x12, 0x14, 0x0a,
+ 0x05, 0x69, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x74,
+ 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x75, 0x72, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01,
+ 0x28, 0x05, 0x52, 0x05, 0x63, 0x75, 0x72, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x61, 0x72,
+ 0x67, 0x65, 0x74, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x74, 0x61, 0x72,
+ 0x67, 0x65, 0x74, 0x69, 0x64, 0x22, 0xe2, 0x01, 0x0a, 0x15, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74,
+ 0x61, 0x69, 0x6e, 0x47, 0x61, 0x6d, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x50, 0x75, 0x73, 0x68, 0x12,
+ 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x31, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
+ 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x75, 0x73, 0x65,
+ 0x72, 0x31, 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05,
+ 0x75, 0x73, 0x65, 0x72, 0x32, 0x12, 0x22, 0x0a, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x4d, 0x61, 0x70, 0x44, 0x61, 0x74, 0x61,
+ 0x52, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77,
+ 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12,
+ 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
+ 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x77, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x03, 0x77, 0x69, 0x6e, 0x12, 0x21, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72,
+ 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41, 0x74,
+ 0x6e, 0x6f, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x92, 0x01, 0x0a, 0x16, 0x45,
+ 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x52, 0x6f, 0x6f,
+ 0x6d, 0x50, 0x75, 0x73, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x6f, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x6f, 0x6f, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x73,
+ 0x65, 0x72, 0x76, 0x65, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x70, 0x61, 0x74, 0x68, 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65,
+ 0x72, 0x31, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65,
0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x31, 0x12, 0x21, 0x0a, 0x05,
- 0x75, 0x73, 0x65, 0x72, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c,
+ 0x75, 0x73, 0x65, 0x72, 0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c,
0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x32, 0x22,
- 0x31, 0x0a, 0x17, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x72,
- 0x65, 0x73, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f,
- 0x6f, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d,
- 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x18, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52,
- 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x22,
- 0x0a, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x08, 0x2e, 0x4d, 0x61, 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61,
- 0x74, 0x61, 0x22, 0x3a, 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52,
- 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x50, 0x75, 0x73, 0x68, 0x12, 0x22, 0x0a, 0x07, 0x6d, 0x70,
+ 0x2f, 0x0a, 0x15, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x63, 0x6f,
+ 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64,
+ 0x22, 0xf8, 0x01, 0x0a, 0x16, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65,
+ 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x72,
+ 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f,
+ 0x6d, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x4d, 0x61, 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07,
+ 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x1a, 0x0a,
+ 0x08, 0x63, 0x75, 0x72, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x08, 0x63, 0x75, 0x72, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f,
+ 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12,
+ 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
+ 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72, 0x31, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x44, 0x61, 0x74,
+ 0x61, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x31, 0x12, 0x21, 0x0a, 0x05, 0x75, 0x73, 0x65, 0x72,
+ 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72,
+ 0x44, 0x61, 0x74, 0x61, 0x52, 0x05, 0x75, 0x73, 0x65, 0x72, 0x32, 0x22, 0x31, 0x0a, 0x17, 0x45,
+ 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x50,
+ 0x6c, 0x61, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x69, 0x64, 0x22, 0x3e,
+ 0x0a, 0x18, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x72, 0x65,
+ 0x73, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x22, 0x0a, 0x07, 0x6d, 0x70,
0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x4d, 0x61,
- 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x15,
- 0x0a, 0x13, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x47, 0x65, 0x74, 0x4c, 0x69,
- 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x36, 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61,
- 0x69, 0x6e, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a,
- 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x44, 0x42,
- 0x58, 0x58, 0x4c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x26, 0x0a,
- 0x12, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64,
- 0x52, 0x65, 0x71, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
- 0x52, 0x03, 0x6b, 0x65, 0x79, 0x22, 0x58, 0x0a, 0x13, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61,
- 0x69, 0x6e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04,
- 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x44, 0x42, 0x58,
- 0x58, 0x4c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x06,
- 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55,
- 0x73, 0x65, 0x72, 0x41, 0x74, 0x6e, 0x6f, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22,
- 0x82, 0x01, 0x0a, 0x13, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61,
- 0x6e, 0x67, 0x65, 0x50, 0x75, 0x73, 0x68, 0x12, 0x32, 0x0a, 0x04, 0x63, 0x61, 0x72, 0x64, 0x18,
- 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69,
- 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x75, 0x73, 0x68, 0x2e, 0x43, 0x61, 0x72, 0x64,
- 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x63, 0x61, 0x72, 0x64, 0x1a, 0x37, 0x0a, 0x09, 0x43,
- 0x61, 0x72, 0x64, 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, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x33,
+ 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3a,
+ 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x66, 0x72, 0x65,
+ 0x73, 0x68, 0x50, 0x75, 0x73, 0x68, 0x12, 0x22, 0x0a, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x4d, 0x61, 0x70, 0x44, 0x61, 0x74,
+ 0x61, 0x52, 0x07, 0x6d, 0x70, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x15, 0x0a, 0x13, 0x45, 0x6e,
+ 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
+ 0x71, 0x22, 0x36, 0x0a, 0x14, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x47, 0x65,
+ 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04, 0x64, 0x61, 0x74,
+ 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x44,
+ 0x61, 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x26, 0x0a, 0x12, 0x45, 0x6e, 0x74,
+ 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12,
+ 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65,
+ 0x79, 0x22, 0x58, 0x0a, 0x13, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x52, 0x65,
+ 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x44, 0x42, 0x58, 0x58, 0x4c, 0x44, 0x61,
+ 0x74, 0x61, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x21, 0x0a, 0x06, 0x72, 0x65, 0x77, 0x61,
+ 0x72, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x41,
+ 0x74, 0x6e, 0x6f, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x82, 0x01, 0x0a, 0x13,
+ 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50,
+ 0x75, 0x73, 0x68, 0x12, 0x32, 0x0a, 0x04, 0x63, 0x61, 0x72, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x1e, 0x2e, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61,
+ 0x6e, 0x67, 0x65, 0x50, 0x75, 0x73, 0x68, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x45, 0x6e, 0x74, 0x72,
+ 0x79, 0x52, 0x04, 0x63, 0x61, 0x72, 0x64, 0x1a, 0x37, 0x0a, 0x09, 0x43, 0x61, 0x72, 0x64, 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,
+ 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
diff --git a/sys/configure/structs/Game.RepeatAll.go b/sys/configure/structs/Game.RepeatAll.go
new file mode 100644
index 000000000..4d43b3ff8
--- /dev/null
+++ b/sys/configure/structs/Game.RepeatAll.go
@@ -0,0 +1,42 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+type GameRepeatAll struct {
+ _dataMap map[int32]*GameRepeatAllData
+ _dataList []*GameRepeatAllData
+}
+
+func NewGameRepeatAll(_buf []map[string]interface{}) (*GameRepeatAll, error) {
+ _dataList := make([]*GameRepeatAllData, 0, len(_buf))
+ dataMap := make(map[int32]*GameRepeatAllData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameRepeatAllData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Key] = _v
+ }
+ }
+ return &GameRepeatAll{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameRepeatAll) GetDataMap() map[int32]*GameRepeatAllData {
+ return table._dataMap
+}
+
+func (table *GameRepeatAll) GetDataList() []*GameRepeatAllData {
+ return table._dataList
+}
+
+func (table *GameRepeatAll) Get(key int32) *GameRepeatAllData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.RepeatAllData.go b/sys/configure/structs/Game.RepeatAllData.go
new file mode 100644
index 000000000..eea80b3f7
--- /dev/null
+++ b/sys/configure/structs/Game.RepeatAllData.go
@@ -0,0 +1,64 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+import "errors"
+
+type GameRepeatAllData struct {
+ Key int32
+ Model string
+ Num int32
+ Thing string
+ Upthing int32
+ Detailthing int32
+ Cdtxt string
+ Cdtime int32
+ Reward []*Gameatn
+}
+
+const TypeId_GameRepeatAllData = -1975992876
+
+func (*GameRepeatAllData) GetTypeId() int32 {
+ return -1975992876
+}
+
+func (_v *GameRepeatAllData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["key"].(float64); !_ok_ { err = errors.New("key error"); return }; _v.Key = int32(_tempNum_) }
+ { var _ok_ bool; if _v.Model, _ok_ = _buf["model"].(string); !_ok_ { err = errors.New("model error"); return } }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["num"].(float64); !_ok_ { err = errors.New("num error"); return }; _v.Num = int32(_tempNum_) }
+ { var _ok_ bool; if _v.Thing, _ok_ = _buf["thing"].(string); !_ok_ { err = errors.New("thing error"); return } }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["upthing"].(float64); !_ok_ { err = errors.New("upthing error"); return }; _v.Upthing = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["detailthing"].(float64); !_ok_ { err = errors.New("detailthing error"); return }; _v.Detailthing = int32(_tempNum_) }
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["cdtxt"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Cdtxt error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Cdtxt, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["cdtime"].(float64); !_ok_ { err = errors.New("cdtime error"); return }; _v.Cdtime = int32(_tempNum_) }
+ {
+ var _arr_ []interface{}
+ var _ok_ bool
+ if _arr_, _ok_ = _buf["reward"].([]interface{}); !_ok_ { err = errors.New("reward error"); return }
+
+ _v.Reward = 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.Reward = append(_v.Reward, _list_v_)
+ }
+ }
+
+ return
+}
+
+func DeserializeGameRepeatAllData(_buf map[string]interface{}) (*GameRepeatAllData, error) {
+ v := &GameRepeatAllData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.TDMonster.go b/sys/configure/structs/Game.TDMonster.go
new file mode 100644
index 000000000..bf57c9592
--- /dev/null
+++ b/sys/configure/structs/Game.TDMonster.go
@@ -0,0 +1,42 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+type GameTDMonster struct {
+ _dataMap map[int32]*GameTDMonsterData
+ _dataList []*GameTDMonsterData
+}
+
+func NewGameTDMonster(_buf []map[string]interface{}) (*GameTDMonster, error) {
+ _dataList := make([]*GameTDMonsterData, 0, len(_buf))
+ dataMap := make(map[int32]*GameTDMonsterData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameTDMonsterData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.NpcId] = _v
+ }
+ }
+ return &GameTDMonster{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameTDMonster) GetDataMap() map[int32]*GameTDMonsterData {
+ return table._dataMap
+}
+
+func (table *GameTDMonster) GetDataList() []*GameTDMonsterData {
+ return table._dataList
+}
+
+func (table *GameTDMonster) Get(key int32) *GameTDMonsterData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.TDMonsterAppear.go b/sys/configure/structs/Game.TDMonsterAppear.go
new file mode 100644
index 000000000..1b573be96
--- /dev/null
+++ b/sys/configure/structs/Game.TDMonsterAppear.go
@@ -0,0 +1,42 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+type GameTDMonsterAppear struct {
+ _dataMap map[int32]*GameTDMonsterAppearData
+ _dataList []*GameTDMonsterAppearData
+}
+
+func NewGameTDMonsterAppear(_buf []map[string]interface{}) (*GameTDMonsterAppear, error) {
+ _dataList := make([]*GameTDMonsterAppearData, 0, len(_buf))
+ dataMap := make(map[int32]*GameTDMonsterAppearData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameTDMonsterAppearData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Id] = _v
+ }
+ }
+ return &GameTDMonsterAppear{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameTDMonsterAppear) GetDataMap() map[int32]*GameTDMonsterAppearData {
+ return table._dataMap
+}
+
+func (table *GameTDMonsterAppear) GetDataList() []*GameTDMonsterAppearData {
+ return table._dataList
+}
+
+func (table *GameTDMonsterAppear) Get(key int32) *GameTDMonsterAppearData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.TDMonsterAppearData.go b/sys/configure/structs/Game.TDMonsterAppearData.go
new file mode 100644
index 000000000..df9225ab1
--- /dev/null
+++ b/sys/configure/structs/Game.TDMonsterAppearData.go
@@ -0,0 +1,47 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+import "errors"
+
+type GameTDMonsterAppearData struct {
+ Id int32
+ CopyId int32
+ Num int32
+ Time int32
+ Count int32
+ MonsterId int32
+ HpMultiple int32
+}
+
+const TypeId_GameTDMonsterAppearData = 44623341
+
+func (*GameTDMonsterAppearData) GetTypeId() int32 {
+ return 44623341
+}
+
+func (_v *GameTDMonsterAppearData)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["copy_id"].(float64); !_ok_ { err = errors.New("copy_id error"); return }; _v.CopyId = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["num"].(float64); !_ok_ { err = errors.New("num error"); return }; _v.Num = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["time"].(float64); !_ok_ { err = errors.New("time error"); return }; _v.Time = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["count"].(float64); !_ok_ { err = errors.New("count error"); return }; _v.Count = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["monster_id"].(float64); !_ok_ { err = errors.New("monster_id error"); return }; _v.MonsterId = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hp_multiple"].(float64); !_ok_ { err = errors.New("hp_multiple error"); return }; _v.HpMultiple = int32(_tempNum_) }
+ return
+}
+
+func DeserializeGameTDMonsterAppearData(_buf map[string]interface{}) (*GameTDMonsterAppearData, error) {
+ v := &GameTDMonsterAppearData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.TDMonsterData.go b/sys/configure/structs/Game.TDMonsterData.go
new file mode 100644
index 000000000..abf765321
--- /dev/null
+++ b/sys/configure/structs/Game.TDMonsterData.go
@@ -0,0 +1,55 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+package cfg
+
+import "errors"
+
+type GameTDMonsterData struct {
+ NpcId int32
+ Name string
+ MonsterSkillid int32
+ Model string
+ Multiple int32
+ Hp int32
+ Dis int32
+ Atk int32
+ AtkSpeed int32
+ MoveSpeed float32
+ Exp int32
+}
+
+const TypeId_GameTDMonsterData = 919296312
+
+func (*GameTDMonsterData) GetTypeId() int32 {
+ return 919296312
+}
+
+func (_v *GameTDMonsterData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["npc_id"].(float64); !_ok_ { err = errors.New("npc_id error"); return }; _v.NpcId = 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["monster_skillid"].(float64); !_ok_ { err = errors.New("monster_skillid error"); return }; _v.MonsterSkillid = int32(_tempNum_) }
+ { var _ok_ bool; if _v.Model, _ok_ = _buf["model"].(string); !_ok_ { err = errors.New("model error"); return } }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["multiple"].(float64); !_ok_ { err = errors.New("multiple error"); return }; _v.Multiple = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hp"].(float64); !_ok_ { err = errors.New("hp error"); return }; _v.Hp = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["dis"].(float64); !_ok_ { err = errors.New("dis error"); return }; _v.Dis = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["atk"].(float64); !_ok_ { err = errors.New("atk error"); return }; _v.Atk = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["atk_speed"].(float64); !_ok_ { err = errors.New("atk_speed error"); return }; _v.AtkSpeed = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["move_speed"].(float64); !_ok_ { err = errors.New("move_speed error"); return }; _v.MoveSpeed = float32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["exp"].(float64); !_ok_ { err = errors.New("exp error"); return }; _v.Exp = int32(_tempNum_) }
+ return
+}
+
+func DeserializeGameTDMonsterData(_buf map[string]interface{}) (*GameTDMonsterData, error) {
+ v := &GameTDMonsterData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Tables.go b/sys/configure/structs/Tables.go
index 1f19daa94..3189299f9 100644
--- a/sys/configure/structs/Tables.go
+++ b/sys/configure/structs/Tables.go
@@ -280,7 +280,9 @@ type Tables struct {
TreasureMap *GameTreasureMap
ConsumeIntegral *GameConsumeIntegral
TDReward *GameTDReward
- Catchrabbitreward *GameCatchrabbitreward
+ RepeatAll *GameRepeatAll
+ TDMonster *GameTDMonster
+ TDMonsterAppear *GameTDMonsterAppear
}
func NewTables(loader JsonLoader) (*Tables, error) {
@@ -1902,10 +1904,22 @@ func NewTables(loader JsonLoader) (*Tables, error) {
if tables.TDReward, err = NewGameTDReward(buf) ; err != nil {
return nil, err
}
- if buf, err = loader("game_catchrabbitreward") ; err != nil {
+ if buf, err = loader("game_repeatall") ; err != nil {
return nil, err
}
- if tables.Catchrabbitreward, err = NewGameCatchrabbitreward(buf) ; err != nil {
+ if tables.RepeatAll, err = NewGameRepeatAll(buf) ; err != nil {
+ return nil, err
+ }
+ if buf, err = loader("game_tdmonster") ; err != nil {
+ return nil, err
+ }
+ if tables.TDMonster, err = NewGameTDMonster(buf) ; err != nil {
+ return nil, err
+ }
+ if buf, err = loader("game_tdmonsterappear") ; err != nil {
+ return nil, err
+ }
+ if tables.TDMonsterAppear, err = NewGameTDMonsterAppear(buf) ; err != nil {
return nil, err
}
return tables, nil
diff --git a/sys/configure/structs/game.globalData.go b/sys/configure/structs/game.globalData.go
index ceabd3ba8..195e7ba02 100644
--- a/sys/configure/structs/game.globalData.go
+++ b/sys/configure/structs/game.globalData.go
@@ -300,6 +300,7 @@ type GameGlobalData struct {
ConsumePvpTime int32
ConsumePveTime int32
ConsumeRounds int32
+ ConsumeIntegralnums *Gameatn
}
const TypeId_GameGlobalData = 477542761
@@ -1183,6 +1184,7 @@ func (_v *GameGlobalData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["consume_pvp_time"].(float64); !_ok_ { err = errors.New("consume_pvp_time error"); return }; _v.ConsumePvpTime = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["consume_pve_time"].(float64); !_ok_ { err = errors.New("consume_pve_time error"); return }; _v.ConsumePveTime = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["consume_rounds"].(float64); !_ok_ { err = errors.New("consume_rounds error"); return }; _v.ConsumeRounds = int32(_tempNum_) }
+ { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["consume_integralnums"].(map[string]interface{}); !_ok_ { err = errors.New("consume_integralnums error"); return }; if _v.ConsumeIntegralnums, err = DeserializeGameatn(_x_); err != nil { return } }
return
}