diff --git a/bin/json/game_global.json b/bin/json/game_global.json
index d89cf2d23..89e959207 100644
--- a/bin/json/game_global.json
+++ b/bin/json/game_global.json
@@ -659,6 +659,7 @@
"t": "gold",
"n": 30000
}
- ]
+ ],
+ "game_make_TunkNum": 5
}
]
\ No newline at end of file
diff --git a/bin/json/game_initial.json b/bin/json/game_initial.json
index 14072c400..36be58ee6 100644
--- a/bin/json/game_initial.json
+++ b/bin/json/game_initial.json
@@ -344,7 +344,7 @@
"var": [
{
"a": "item",
- "t": "10012",
+ "t": "100001",
"n": 60
}
]
diff --git a/bin/json/game_skillafteratk.json b/bin/json/game_skillafteratk.json
index 95c44c911..0306ca3c1 100644
--- a/bin/json/game_skillafteratk.json
+++ b/bin/json/game_skillafteratk.json
@@ -16956,7 +16956,7 @@
"Order": "",
"Limit": 10,
"ExecuteCnt": 1,
- "Type": 2,
+ "Type": 3,
"Argu": [
390001326,
-1,
@@ -17712,7 +17712,7 @@
"ExecuteCnt": 1,
"Type": 2,
"Argu": [
- 443006311,
+ 443006211,
-1,
1
],
@@ -20301,7 +20301,7 @@
"From": 4,
"Where": [],
"Order": "",
- "Limit": 1,
+ "Limit": 10,
"ExecuteCnt": 1,
"Type": 3,
"Argu": [
@@ -23350,6 +23350,30 @@
"RevisiCondition": "",
"RevisiParams": []
},
+ {
+ "Id": 224007011,
+ "EmitPR": 0,
+ "From": 1,
+ "Where": [],
+ "Order": "",
+ "Limit": 10,
+ "ExecuteCnt": 1,
+ "Type": 3,
+ "Argu": [
+ 390001321,
+ 1000,
+ 1,
+ -1
+ ],
+ "FollowSK": [],
+ "SucFollowSK": [],
+ "FailFollowSK": [],
+ "MustHit": false,
+ "DpsRevisiType": 0,
+ "DpsCondition": "",
+ "RevisiCondition": "",
+ "RevisiParams": []
+ },
{
"Id": 224007111,
"EmitPR": 1000,
@@ -27124,7 +27148,7 @@
"ExecuteCnt": 1,
"Type": 2,
"Argu": [
- 434005212,
+ 434005211,
1,
1
],
diff --git a/bin/json/game_skillatk.json b/bin/json/game_skillatk.json
index 17ea1d83b..9a089e55e 100644
--- a/bin/json/game_skillatk.json
+++ b/bin/json/game_skillatk.json
@@ -1178,7 +1178,7 @@
"CorrectPos": 0,
"IsMelee": 0,
"act": "Skill_2",
- "Type": 2,
+ "Type": 1,
"CD": 4,
"Target": 1,
"ChildSkill": {
@@ -1207,7 +1207,7 @@
"CorrectPos": 0,
"IsMelee": 0,
"act": "Skill_2",
- "Type": 2,
+ "Type": 1,
"CD": 3,
"Target": 1,
"ChildSkill": {
@@ -10869,7 +10869,7 @@
"CorrectPos": 0,
"IsMelee": 0,
"act": "",
- "Type": 1,
+ "Type": 3,
"CD": 0,
"Target": 1,
"ChildSkill": {
@@ -10988,7 +10988,7 @@
"CorrectPos": 0,
"IsMelee": 0,
"act": "",
- "Type": 1,
+ "Type": 3,
"CD": 0,
"Target": 1,
"ChildSkill": {
@@ -12626,7 +12626,7 @@
"act": "Skill_2",
"Type": 2,
"CD": 0,
- "Target": 3,
+ "Target": 0,
"ChildSkill": {
"Id": [
243007211
diff --git a/bin/json/game_smithymake.json b/bin/json/game_smithymake.json
new file mode 100644
index 000000000..290f53ed0
--- /dev/null
+++ b/bin/json/game_smithymake.json
@@ -0,0 +1,26 @@
+[
+ {
+ "make_take": 1,
+ "make_text": {
+ "key": "newsmithy_game_make_text1",
+ "text": "未命中"
+ },
+ "probability": 0
+ },
+ {
+ "make_take": 2,
+ "make_text": {
+ "key": "newsmithy_game_make_text2",
+ "text": "普通打造"
+ },
+ "probability": 25
+ },
+ {
+ "make_take": 3,
+ "make_text": {
+ "key": "newsmithy_game_make_text3",
+ "text": "完美打造!"
+ },
+ "probability": 50
+ }
+]
\ No newline at end of file
diff --git a/modules/smithy/api_forgeequip.go b/modules/smithy/api_forgeequip.go
index 344447a00..d7ebb0abd 100644
--- a/modules/smithy/api_forgeequip.go
+++ b/modules/smithy/api_forgeequip.go
@@ -21,10 +21,10 @@ func (this *apiComp) ForgeEquipCheck(session comm.IUserSession, req *pb.SmithyFo
// 打造装备
func (this *apiComp) ForgeEquip(session comm.IUserSession, req *pb.SmithyForgeEquipReq) (code pb.ErrorCode, data proto.Message) {
var (
- stove *pb.DBStove
- err error
- update map[string]interface{}
-
+ stove *pb.DBStove
+ err error
+ update map[string]interface{}
+ addProbability int32
costRes []*cfg.Gameatn
customLv int32 // 定制装备的等级
rsp *pb.SmithyForgeEquipResp
@@ -88,9 +88,8 @@ func (this *apiComp) ForgeEquip(session comm.IUserSession, req *pb.SmithyForgeEq
if req.Lava > 0 { // 是否是熔岩打造
exemption := this.module.configure.GetGlobalConf().ExemptionTemperatureCos // 预计消耗温度
- exemption_TemperatureCosNum := this.module.configure.GetGlobalConf().ExemptionTemperatureCosNum
- exemption_TemperatureCosNum = req.Lava * exemption_TemperatureCosNum
- if needTemperatureCos > exemption_TemperatureCosNum {
+ gloabNum := this.module.configure.GetGlobalConf().ExemptionTemperatureCosNum
+ if needTemperatureCos > req.Lava*gloabNum {
code = pb.ErrorCode_SmithyLackLava // 缺少熔岩
return
}
@@ -132,7 +131,30 @@ func (this *apiComp) ForgeEquip(session comm.IUserSession, req *pb.SmithyForgeEq
if code = this.module.ConsumeRes(session, costRes, true); code != pb.ErrorCode_Success {
return
}
+ // 玩小游戏增加双倍产出校验
+ if req.SuiteId != 0 { // 定制才有
+ var (
+ hitLen int32
+ )
+ for k, v := range req.Hit {
+ confMake := this.module.configure.GetSmithyMake(k)
+ if confMake == nil {
+ code = pb.ErrorCode_ConfigNoFound
+ this.module.Errorf("GetSmithyMake配置没找到:%d", k)
+ return
+ }
+ hitLen += v
+ addProbability += v * confMake.Probability
+ }
+ // 总次数校验
+ maxHitCount := this.module.configure.GetGlobalConf().GameMakeTunkNum
+ if hitLen > maxHitCount {
+ code = pb.ErrorCode_ReqParameterError
+ this.module.Errorf("铁匠铺小游戏打造次数超过上限,当前打造次数:%d, 配置总次数:%d", hitLen, maxHitCount)
+ }
+
+ }
// 装备资源分发
if customLv > 0 {
sz := make([]int32, 4) // 最高 4个品质
@@ -149,7 +171,7 @@ func (this *apiComp) ForgeEquip(session comm.IUserSession, req *pb.SmithyForgeEq
newdrop := this.module.modelStove.CheckUnlockSuid(req.ReelId, stove.Data[req.ReelId].Lv, reelcfg.BasicDrop)
res := this.module.configure.GetDropReward(newdrop)
// 检查是否命中双倍打造
- if ok := this.module.modelStove.CheckForgetwoEquip(req.ReelId, stove.Data[req.ReelId].Lv); ok {
+ if ok := this.module.modelStove.CheckForgetwoEquip(req.ReelId, stove.Data[req.ReelId].Lv, addProbability); ok {
if err, atno := this.module.DispenseAtno(session, res, true); err == pb.ErrorCode_Success {
for _, v := range atno {
if eq, err1 := this.module.ModuleEquipment.QueryEquipment(session.GetUserId(), v.O); err1 == pb.ErrorCode_Success {
diff --git a/modules/smithy/comp_configure.go b/modules/smithy/comp_configure.go
index 5b13cf373..7996a1471 100644
--- a/modules/smithy/comp_configure.go
+++ b/modules/smithy/comp_configure.go
@@ -22,6 +22,7 @@ const (
game_smithyatlaslv = "game_smithyatlaslv.json" // 收藏等级积分
game_smithyatlasscore = "game_smithyatlasscore.json" // 图鉴积分
game_smithytask = "game_smithytask.json" //图鉴任务
+ game_smithymake = "game_smithymake.json" //打铁小游戏
//game_smithyDrop = "game_smithydrop.json" //装备掉落
)
@@ -56,6 +57,7 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
err = this.LoadConfigure(game_smithyatlas, cfg.NewGameSmithyAtlas)
err = this.LoadConfigure(game_smithyatlaslv, cfg.NewGameSmithyAtlasLv)
err = this.LoadConfigure(game_smithytask, cfg.NewGameSmithyTask)
+ err = this.LoadConfigure(game_smithymake, cfg.NewGameSmithyMake)
return
}
@@ -92,7 +94,7 @@ func (this *configureComp) CheckSmithyFirstReelConfigData(etype int32, id int32)
if v, err := this.GetConfigure(game_smithyreel); err == nil {
if configure, ok := v.(*cfg.GameNewSmithy); ok {
for _, v := range configure.GetDataList() {
- if v.Type == etype{
+ if v.Type == etype {
if v.Id == id {
return true
} else {
@@ -258,3 +260,14 @@ func (this *configureComp) GetSmithyTask(taskId int32) (data *cfg.GameSmithyTask
this.module.Errorf("GetSmithyTask notfound taskId:%d", taskId)
return
}
+
+func (this *configureComp) GetSmithyMake(cid int32) (data *cfg.GameSmithyMakeData) {
+ if v, err := this.GetConfigure(game_smithymake); err == nil {
+ if configure, ok := v.(*cfg.GameSmithyMake); ok {
+ data = configure.Get(cid)
+ return
+ }
+ }
+ this.module.Errorf("GetSmithyMake notfound taskId:%d", cid)
+ return
+}
diff --git a/modules/smithy/model_stove.go b/modules/smithy/model_stove.go
index a2b674239..e567153ef 100644
--- a/modules/smithy/model_stove.go
+++ b/modules/smithy/model_stove.go
@@ -81,7 +81,7 @@ func (this *modelStove) CheckTemperature(reelId int32, lv int32) (t int32) {
}
// 限定 普通打造的时候检查额外概率制造两件装备
-func (this *modelStove) CheckForgetwoEquip(reelId int32, lv int32) (b bool) {
+func (this *modelStove) CheckForgetwoEquip(reelId int32, lv int32, addProbability int32) (b bool) {
var (
index int32
value int32
@@ -93,11 +93,11 @@ func (this *modelStove) CheckForgetwoEquip(reelId int32, lv int32) (b bool) {
}
}
}
- if value > 0 {
- n, _ := rand.Int(rand.Reader, big.NewInt(1000)) // 千分比
- if value < int32(n.Int64()) {
- return true
- }
+ value += addProbability
+
+ n, _ := rand.Int(rand.Reader, big.NewInt(1000)) // 千分比
+ if value > int32(n.Int64()) {
+ return true
}
return false
diff --git a/pb/gourmet_msg.pb.go b/pb/gourmet_msg.pb.go
index 571e7e259..d3b8b0eeb 100644
--- a/pb/gourmet_msg.pb.go
+++ b/pb/gourmet_msg.pb.go
@@ -25,7 +25,7 @@ type GourmetCreateFoodReq struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Cid string `protobuf:"bytes,1,opt,name=cid,proto3" json:"cid"`
+ Cid string `protobuf:"bytes,1,opt,name=cid,proto3" json:"cid"` // 食谱ID
Material map[string]int32 `protobuf:"bytes,2,rep,name=material,proto3" json:"material" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
}
@@ -80,7 +80,7 @@ type GourmetCreateFoodResp struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Cid string `protobuf:"bytes,1,opt,name=cid,proto3" json:"cid"`
+ Cid string `protobuf:"bytes,1,opt,name=cid,proto3" json:"cid"` // 获得的食谱
FirstGet bool `protobuf:"varint,2,opt,name=firstGet,proto3" json:"firstGet"` // 是否首次获得
}
diff --git a/pb/smithy_msg.pb.go b/pb/smithy_msg.pb.go
index ee88615c8..5df349f28 100644
--- a/pb/smithy_msg.pb.go
+++ b/pb/smithy_msg.pb.go
@@ -112,11 +112,12 @@ type SmithyForgeEquipReq struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- ReelId int32 `protobuf:"varint,1,opt,name=reelId,proto3" json:"reelId"` // 卷轴ID
- Lava int32 `protobuf:"varint,2,opt,name=lava,proto3" json:"lava"` // 添加熔岩
- Quality int32 `protobuf:"varint,3,opt,name=quality,proto3" json:"quality"` // 精益制造
- SuiteId int32 `protobuf:"varint,4,opt,name=suiteId,proto3" json:"suiteId"` // 套装ID (非定制传0 )
- Position int32 `protobuf:"varint,5,opt,name=position,proto3" json:"position"` // 装备位置(没有指定位置传 -1)
+ ReelId int32 `protobuf:"varint,1,opt,name=reelId,proto3" json:"reelId"` // 卷轴ID
+ Lava int32 `protobuf:"varint,2,opt,name=lava,proto3" json:"lava"` // 添加熔岩
+ Quality int32 `protobuf:"varint,3,opt,name=quality,proto3" json:"quality"` // 精益制造
+ SuiteId int32 `protobuf:"varint,4,opt,name=suiteId,proto3" json:"suiteId"` // 套装ID (非定制传0 )
+ Position int32 `protobuf:"varint,5,opt,name=position,proto3" json:"position"` // 装备位置(没有指定位置传 -1)
+ Hit map[int32]int32 `protobuf:"bytes,6,rep,name=hit,proto3" json:"hit" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 敲击数据 key 敲打 cid value 敲打次数
}
func (x *SmithyForgeEquipReq) Reset() {
@@ -186,6 +187,13 @@ func (x *SmithyForgeEquipReq) GetPosition() int32 {
return 0
}
+func (x *SmithyForgeEquipReq) GetHit() map[int32]int32 {
+ if x != nil {
+ return x.Hit
+ }
+ return nil
+}
+
type SmithyForgeEquipResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -1286,7 +1294,7 @@ var file_smithy_smithy_msg_proto_rawDesc = []byte{
0x68, 0x79, 0x47, 0x65, 0x74, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65,
0x73, 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x08, 0x2e, 0x44, 0x42, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61,
- 0x22, 0x91, 0x01, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x46, 0x6f, 0x72, 0x67, 0x65,
+ 0x22, 0xfa, 0x01, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x46, 0x6f, 0x72, 0x67, 0x65,
0x45, 0x71, 0x75, 0x69, 0x70, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x65, 0x6c,
0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x65, 0x65, 0x6c, 0x49, 0x64,
0x12, 0x12, 0x0a, 0x04, 0x6c, 0x61, 0x76, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
@@ -1295,82 +1303,88 @@ var file_smithy_smithy_msg_proto_rawDesc = []byte{
0x0a, 0x07, 0x73, 0x75, 0x69, 0x74, 0x65, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52,
0x07, 0x73, 0x75, 0x69, 0x74, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69,
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69,
- 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x59, 0x0a, 0x14, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x46, 0x6f,
- 0x72, 0x67, 0x65, 0x45, 0x71, 0x75, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x23, 0x0a, 0x05,
- 0x65, 0x71, 0x75, 0x69, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42,
- 0x5f, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x71, 0x75, 0x69,
- 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x03, 0x68, 0x69, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x1d, 0x2e, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x46, 0x6f, 0x72, 0x67, 0x65, 0x45,
+ 0x71, 0x75, 0x69, 0x70, 0x52, 0x65, 0x71, 0x2e, 0x48, 0x69, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79,
+ 0x52, 0x03, 0x68, 0x69, 0x74, 0x1a, 0x36, 0x0a, 0x08, 0x48, 0x69, 0x74, 0x45, 0x6e, 0x74, 0x72,
+ 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03,
+ 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x59, 0x0a,
+ 0x14, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x46, 0x6f, 0x72, 0x67, 0x65, 0x45, 0x71, 0x75, 0x69,
+ 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x23, 0x0a, 0x05, 0x65, 0x71, 0x75, 0x69, 0x70, 0x18, 0x01,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x5f, 0x45, 0x71, 0x75, 0x69, 0x70, 0x6d,
+ 0x65, 0x6e, 0x74, 0x52, 0x05, 0x65, 0x71, 0x75, 0x69, 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61,
+ 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x44, 0x42, 0x53, 0x74, 0x6f,
+ 0x76, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x12, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74,
+ 0x68, 0x79, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x55, 0x70, 0x52, 0x65, 0x71, 0x22, 0x31, 0x0a, 0x11,
+ 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x55, 0x70, 0x52, 0x65, 0x73,
+ 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x08, 0x2e, 0x44, 0x42, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22,
- 0x12, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x55, 0x70,
- 0x52, 0x65, 0x71, 0x22, 0x31, 0x0a, 0x11, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x53, 0x74, 0x6f,
- 0x76, 0x65, 0x55, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x44, 0x42, 0x53, 0x74, 0x6f, 0x76, 0x65,
- 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3d, 0x0a, 0x0d, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79,
- 0x52, 0x69, 0x73, 0x65, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49,
- 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12,
- 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
- 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2e, 0x0a, 0x0e, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x52,
- 0x69, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x44, 0x42, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x52,
- 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x22, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54,
- 0x6f, 0x6f, 0x6c, 0x73, 0x55, 0x70, 0x52, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x22, 0x31, 0x0a, 0x11, 0x53, 0x6d, 0x69,
- 0x74, 0x68, 0x79, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x55, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c,
- 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x44,
- 0x42, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x13, 0x0a, 0x11,
- 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x52, 0x65,
- 0x71, 0x22, 0x41, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x43, 0x75, 0x73, 0x74, 0x6f,
- 0x6d, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x09, 0x63, 0x75, 0x73, 0x74, 0x6f,
- 0x6d, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x75, 0x73,
- 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x63, 0x75, 0x73, 0x74, 0x6f,
- 0x6d, 0x65, 0x72, 0x73, 0x22, 0x4b, 0x0a, 0x0d, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x53, 0x65,
- 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x71, 0x75, 0x69, 0x70, 0x49, 0x64,
- 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x65, 0x71, 0x75, 0x69, 0x70, 0x49, 0x64,
- 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49,
- 0x64, 0x22, 0x79, 0x0a, 0x0e, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x53, 0x65, 0x6c, 0x6c, 0x52,
- 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49,
- 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65,
- 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x71, 0x75, 0x69, 0x70, 0x49, 0x64, 0x73, 0x18,
- 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x65, 0x71, 0x75, 0x69, 0x70, 0x49, 0x64, 0x73, 0x12,
- 0x2b, 0x0a, 0x09, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03,
- 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x6e, 0x66,
- 0x6f, 0x52, 0x09, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x73, 0x22, 0x31, 0x0a, 0x0f,
- 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x52, 0x65, 0x66, 0x75, 0x73, 0x65, 0x52, 0x65, 0x71, 0x12,
- 0x1e, 0x0a, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x22,
- 0x3f, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x52, 0x65, 0x66, 0x75, 0x73, 0x65, 0x52,
- 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x09, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x73,
- 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65,
- 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x73,
- 0x22, 0x14, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4c,
- 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x33, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79,
- 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a,
- 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x44, 0x42,
- 0x41, 0x74, 0x6c, 0x61, 0x73, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x28, 0x0a, 0x16, 0x53,
- 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61,
- 0x74, 0x65, 0x52, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x37, 0x0a, 0x17, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41,
- 0x74, 0x6c, 0x61, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70,
+ 0x3d, 0x0a, 0x0d, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x52, 0x69, 0x73, 0x65, 0x52, 0x65, 0x71,
+ 0x12, 0x16, 0x0a, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e,
+ 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2e,
+ 0x0a, 0x0e, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x52, 0x69, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70,
0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08,
- 0x2e, 0x44, 0x42, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x15,
- 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x41, 0x77, 0x61,
- 0x72, 0x64, 0x52, 0x65, 0x71, 0x22, 0x34, 0x0a, 0x14, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41,
- 0x74, 0x6c, 0x61, 0x73, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a,
- 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x44, 0x42,
- 0x41, 0x74, 0x6c, 0x61, 0x73, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x2c, 0x0a, 0x12, 0x53,
- 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65,
- 0x71, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x2d, 0x0a, 0x13, 0x53, 0x6d, 0x69,
- 0x74, 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70,
- 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
- 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x13, 0x0a, 0x11, 0x53, 0x6d, 0x69, 0x74,
- 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x37, 0x0a,
- 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x52,
- 0x65, 0x73, 0x70, 0x12, 0x21, 0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03,
- 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x54, 0x75, 0x6a, 0x69, 0x61, 0x6e, 0x54, 0x61, 0x73, 0x6b, 0x52,
- 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06,
- 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x2e, 0x44, 0x42, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x22,
+ 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x55, 0x70, 0x52,
+ 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02,
+ 0x69, 0x64, 0x22, 0x31, 0x0a, 0x11, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x6f, 0x6f, 0x6c,
+ 0x73, 0x55, 0x70, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x44, 0x42, 0x53, 0x74, 0x6f, 0x76, 0x65, 0x52,
+ 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x13, 0x0a, 0x11, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x43,
+ 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x52, 0x65, 0x71, 0x22, 0x41, 0x0a, 0x12, 0x53, 0x6d,
+ 0x69, 0x74, 0x68, 0x79, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
+ 0x12, 0x2b, 0x0a, 0x09, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x6e,
+ 0x66, 0x6f, 0x52, 0x09, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x73, 0x22, 0x4b, 0x0a,
+ 0x0d, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x53, 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x1a,
+ 0x0a, 0x08, 0x65, 0x71, 0x75, 0x69, 0x70, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09,
+ 0x52, 0x08, 0x65, 0x71, 0x75, 0x69, 0x70, 0x49, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x75,
+ 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a,
+ 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x22, 0x79, 0x0a, 0x0e, 0x53, 0x6d,
+ 0x69, 0x74, 0x68, 0x79, 0x53, 0x65, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a,
+ 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
+ 0x52, 0x0a, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08,
+ 0x65, 0x71, 0x75, 0x69, 0x70, 0x49, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08,
+ 0x65, 0x71, 0x75, 0x69, 0x70, 0x49, 0x64, 0x73, 0x12, 0x2b, 0x0a, 0x09, 0x63, 0x75, 0x73, 0x74,
+ 0x6f, 0x6d, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x43, 0x75,
+ 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x63, 0x75, 0x73, 0x74,
+ 0x6f, 0x6d, 0x65, 0x72, 0x73, 0x22, 0x31, 0x0a, 0x0f, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x52,
+ 0x65, 0x66, 0x75, 0x73, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x75, 0x73, 0x74,
+ 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x75,
+ 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x64, 0x22, 0x3f, 0x0a, 0x10, 0x53, 0x6d, 0x69, 0x74,
+ 0x68, 0x79, 0x52, 0x65, 0x66, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x09,
+ 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x0d, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09,
+ 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x73, 0x22, 0x14, 0x0a, 0x12, 0x53, 0x6d, 0x69,
+ 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22,
+ 0x33, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x4c, 0x69,
+ 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x44, 0x42, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x52, 0x04,
+ 0x64, 0x61, 0x74, 0x61, 0x22, 0x28, 0x0a, 0x16, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74,
+ 0x6c, 0x61, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x12, 0x0e,
+ 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x37,
+ 0x0a, 0x17, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x41, 0x63, 0x74,
+ 0x69, 0x76, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74,
+ 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x44, 0x42, 0x41, 0x74, 0x6c, 0x61,
+ 0x73, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68,
+ 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x22, 0x34,
+ 0x0a, 0x14, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x41, 0x77, 0x61,
+ 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x44, 0x42, 0x41, 0x74, 0x6c, 0x61, 0x73, 0x52, 0x04,
+ 0x64, 0x61, 0x74, 0x61, 0x22, 0x2c, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x61,
+ 0x73, 0x6b, 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61,
+ 0x73, 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b,
+ 0x49, 0x64, 0x22, 0x2d, 0x0a, 0x13, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b,
+ 0x41, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73,
+ 0x6b, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49,
+ 0x64, 0x22, 0x13, 0x0a, 0x11, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x6c,
+ 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x37, 0x0a, 0x12, 0x53, 0x6d, 0x69, 0x74, 0x68, 0x79,
+ 0x54, 0x61, 0x73, 0x6b, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x21, 0x0a, 0x05,
+ 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x54, 0x75,
+ 0x6a, 0x69, 0x61, 0x6e, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x42,
+ 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -1385,7 +1399,7 @@ func file_smithy_smithy_msg_proto_rawDescGZIP() []byte {
return file_smithy_smithy_msg_proto_rawDescData
}
-var file_smithy_smithy_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 26)
+var file_smithy_smithy_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 27)
var file_smithy_smithy_msg_proto_goTypes = []interface{}{
(*SmithyGetStoveInfoReq)(nil), // 0: SmithyGetStoveInfoReq
(*SmithyGetStoveInfoResp)(nil), // 1: SmithyGetStoveInfoResp
@@ -1413,31 +1427,33 @@ var file_smithy_smithy_msg_proto_goTypes = []interface{}{
(*SmithyTaskAwardResp)(nil), // 23: SmithyTaskAwardResp
(*SmithyTasklistReq)(nil), // 24: SmithyTasklistReq
(*SmithyTasklistResp)(nil), // 25: SmithyTasklistResp
- (*DBStove)(nil), // 26: DBStove
- (*DB_Equipment)(nil), // 27: DB_Equipment
- (*CustomerInfo)(nil), // 28: CustomerInfo
- (*DBAtlas)(nil), // 29: DBAtlas
- (*TujianTask)(nil), // 30: TujianTask
+ nil, // 26: SmithyForgeEquipReq.HitEntry
+ (*DBStove)(nil), // 27: DBStove
+ (*DB_Equipment)(nil), // 28: DB_Equipment
+ (*CustomerInfo)(nil), // 29: CustomerInfo
+ (*DBAtlas)(nil), // 30: DBAtlas
+ (*TujianTask)(nil), // 31: TujianTask
}
var file_smithy_smithy_msg_proto_depIdxs = []int32{
- 26, // 0: SmithyGetStoveInfoResp.data:type_name -> DBStove
- 27, // 1: SmithyForgeEquipResp.equip:type_name -> DB_Equipment
- 26, // 2: SmithyForgeEquipResp.data:type_name -> DBStove
- 26, // 3: SmithyStoveUpResp.data:type_name -> DBStove
- 26, // 4: SmithyRiseResp.data:type_name -> DBStove
- 26, // 5: SmithyToolsUpResp.data:type_name -> DBStove
- 28, // 6: SmithyCustomerResp.customers:type_name -> CustomerInfo
- 28, // 7: SmithySellResp.customers:type_name -> CustomerInfo
- 28, // 8: SmithyRefuseResp.customers:type_name -> CustomerInfo
- 29, // 9: SmithyAtlasListResp.data:type_name -> DBAtlas
- 29, // 10: SmithyAtlasActivateResp.data:type_name -> DBAtlas
- 29, // 11: SmithyAtlasAwardResp.data:type_name -> DBAtlas
- 30, // 12: SmithyTasklistResp.tasks:type_name -> TujianTask
- 13, // [13:13] is the sub-list for method output_type
- 13, // [13:13] is the sub-list for method input_type
- 13, // [13:13] is the sub-list for extension type_name
- 13, // [13:13] is the sub-list for extension extendee
- 0, // [0:13] is the sub-list for field type_name
+ 27, // 0: SmithyGetStoveInfoResp.data:type_name -> DBStove
+ 26, // 1: SmithyForgeEquipReq.hit:type_name -> SmithyForgeEquipReq.HitEntry
+ 28, // 2: SmithyForgeEquipResp.equip:type_name -> DB_Equipment
+ 27, // 3: SmithyForgeEquipResp.data:type_name -> DBStove
+ 27, // 4: SmithyStoveUpResp.data:type_name -> DBStove
+ 27, // 5: SmithyRiseResp.data:type_name -> DBStove
+ 27, // 6: SmithyToolsUpResp.data:type_name -> DBStove
+ 29, // 7: SmithyCustomerResp.customers:type_name -> CustomerInfo
+ 29, // 8: SmithySellResp.customers:type_name -> CustomerInfo
+ 29, // 9: SmithyRefuseResp.customers:type_name -> CustomerInfo
+ 30, // 10: SmithyAtlasListResp.data:type_name -> DBAtlas
+ 30, // 11: SmithyAtlasActivateResp.data:type_name -> DBAtlas
+ 30, // 12: SmithyAtlasAwardResp.data:type_name -> DBAtlas
+ 31, // 13: SmithyTasklistResp.tasks:type_name -> TujianTask
+ 14, // [14:14] is the sub-list for method output_type
+ 14, // [14:14] is the sub-list for method input_type
+ 14, // [14:14] is the sub-list for extension type_name
+ 14, // [14:14] is the sub-list for extension extendee
+ 0, // [0:14] is the sub-list for field type_name
}
func init() { file_smithy_smithy_msg_proto_init() }
@@ -1767,7 +1783,7 @@ func file_smithy_smithy_msg_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_smithy_smithy_msg_proto_rawDesc,
NumEnums: 0,
- NumMessages: 26,
+ NumMessages: 27,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/sys/configure/structs/Game.SmithyMake.go b/sys/configure/structs/Game.SmithyMake.go
new file mode 100644
index 000000000..12d5db3f0
--- /dev/null
+++ b/sys/configure/structs/Game.SmithyMake.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 GameSmithyMake struct {
+ _dataMap map[int32]*GameSmithyMakeData
+ _dataList []*GameSmithyMakeData
+}
+
+func NewGameSmithyMake(_buf []map[string]interface{}) (*GameSmithyMake, error) {
+ _dataList := make([]*GameSmithyMakeData, 0, len(_buf))
+ dataMap := make(map[int32]*GameSmithyMakeData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameSmithyMakeData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.MakeTake] = _v
+ }
+ }
+ return &GameSmithyMake{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameSmithyMake) GetDataMap() map[int32]*GameSmithyMakeData {
+ return table._dataMap
+}
+
+func (table *GameSmithyMake) GetDataList() []*GameSmithyMakeData {
+ return table._dataList
+}
+
+func (table *GameSmithyMake) Get(key int32) *GameSmithyMakeData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.SmithyMakeData.go b/sys/configure/structs/Game.SmithyMakeData.go
new file mode 100644
index 000000000..c3f5df360
--- /dev/null
+++ b/sys/configure/structs/Game.SmithyMakeData.go
@@ -0,0 +1,39 @@
+//------------------------------------------------------------------------------
+//
+// 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 GameSmithyMakeData struct {
+ MakeTake int32
+ MakeText string
+ Probability int32
+}
+
+const TypeId_GameSmithyMakeData = -1032815830
+
+func (*GameSmithyMakeData) GetTypeId() int32 {
+ return -1032815830
+}
+
+func (_v *GameSmithyMakeData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["make_take"].(float64); !_ok_ { err = errors.New("make_take error"); return }; _v.MakeTake = int32(_tempNum_) }
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["make_text"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.MakeText error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.MakeText, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["probability"].(float64); !_ok_ { err = errors.New("probability error"); return }; _v.Probability = int32(_tempNum_) }
+ return
+}
+
+func DeserializeGameSmithyMakeData(_buf map[string]interface{}) (*GameSmithyMakeData, error) {
+ v := &GameSmithyMakeData{}
+ 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 5d555fa86..368662754 100644
--- a/sys/configure/structs/Tables.go
+++ b/sys/configure/structs/Tables.go
@@ -164,6 +164,7 @@ type Tables struct {
SmithyAtlas *GameSmithyAtlas
SmithyAtlasLv *GameSmithyAtlasLv
SmithyAtlasScore *GameSmithyAtlasScore
+ SmithyMake *GameSmithyMake
SmithyTask *GameSmithyTask
Dispatch_Task *GameDispatch_Task
Dispatch_Lv *GameDispatch_Lv
@@ -1103,6 +1104,12 @@ func NewTables(loader JsonLoader) (*Tables, error) {
if tables.SmithyAtlasScore, err = NewGameSmithyAtlasScore(buf) ; err != nil {
return nil, err
}
+ if buf, err = loader("game_smithymake") ; err != nil {
+ return nil, err
+ }
+ if tables.SmithyMake, err = NewGameSmithyMake(buf) ; err != nil {
+ return nil, err
+ }
if buf, err = loader("game_smithytask") ; err != nil {
return nil, err
}
diff --git a/sys/configure/structs/game.globalData.go b/sys/configure/structs/game.globalData.go
index e0361e6f2..fe75b0360 100644
--- a/sys/configure/structs/game.globalData.go
+++ b/sys/configure/structs/game.globalData.go
@@ -195,6 +195,7 @@ type GameGlobalData struct {
PandamasRankAbove50 int32
PandamasRankedBelow50 int32
MrylFlushed []*Gameatn
+ GameMakeTunkNum int32
}
const TypeId_GameGlobalData = 477542761
@@ -817,6 +818,7 @@ func (_v *GameGlobalData)Deserialize(_buf map[string]interface{}) (err error) {
}
}
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["game_make_TunkNum"].(float64); !_ok_ { err = errors.New("game_make_TunkNum error"); return }; _v.GameMakeTunkNum = int32(_tempNum_) }
return
}