From 3dd386a6fe8e971ffe28ef1b8df9f30484b4aeef Mon Sep 17 00:00:00 2001
From: meixiongfeng <766881921@qq.com>
Date: Fri, 21 Jul 2023 20:41:18 +0800
Subject: [PATCH] =?UTF-8?q?=E5=B7=A8=E7=9F=B3=E7=A7=98=E5=A2=83?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
bin/json/game_asklibrary.json | 19 +
bin/json/game_guildbosstask.json | 152 +++++
bin/json/game_mainstage.json | 14 +-
bin/json/game_robotdata.json | 322 ++++++++++
bin/json/game_stronebuff.json | 242 +++++++
bin/json/game_stroneroom.json | 242 +++++++
modules/pagoda/api_getrace.go | 12 +
modules/shop/api_getlist.go | 15 +
.../{api_selecthero.go => api_enterlevel.go} | 10 +-
modules/stonehenge/configure.go | 606 +++++++++++++++++-
modules/tools/comp_configure.go | 25 +-
modules/user/comp_configure.go | 2 +
pb/stonehenge_msg.pb.go | 368 ++++-------
services/worker/main.go | 2 +
sys/configure/structs/Game.AskLibraryData.go | 2 +
sys/configure/structs/Game.GuildBossTask.go | 42 ++
.../structs/Game.GuildBossTaskData.go | 54 ++
sys/configure/structs/Game.RobotDataData.go | 45 ++
sys/configure/structs/Game.StroneBuff.go | 42 ++
sys/configure/structs/Game.StroneBuffData.go | 55 ++
sys/configure/structs/Game.StroneRoom.go | 42 ++
sys/configure/structs/Game.StroneRoomData.go | 55 ++
sys/configure/structs/Tables.go | 14 +
23 files changed, 2119 insertions(+), 263 deletions(-)
create mode 100644 bin/json/game_guildbosstask.json
create mode 100644 bin/json/game_robotdata.json
create mode 100644 bin/json/game_stronebuff.json
create mode 100644 bin/json/game_stroneroom.json
rename modules/stonehenge/{api_selecthero.go => api_enterlevel.go} (73%)
create mode 100644 sys/configure/structs/Game.GuildBossTask.go
create mode 100644 sys/configure/structs/Game.GuildBossTaskData.go
create mode 100644 sys/configure/structs/Game.RobotDataData.go
create mode 100644 sys/configure/structs/Game.StroneBuff.go
create mode 100644 sys/configure/structs/Game.StroneBuffData.go
create mode 100644 sys/configure/structs/Game.StroneRoom.go
create mode 100644 sys/configure/structs/Game.StroneRoomData.go
diff --git a/bin/json/game_asklibrary.json b/bin/json/game_asklibrary.json
index 7a6588bae..c49431d74 100644
--- a/bin/json/game_asklibrary.json
+++ b/bin/json/game_asklibrary.json
@@ -23,6 +23,7 @@
"key": "English_01",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -55,6 +56,7 @@
"key": "English_02",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -87,6 +89,7 @@
"key": "English_03",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -119,6 +122,7 @@
"key": "English_04",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -151,6 +155,7 @@
"key": "English_05",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -183,6 +188,7 @@
"key": "English_06",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -215,6 +221,7 @@
"key": "English_07",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -247,6 +254,7 @@
"key": "English_08",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -279,6 +287,7 @@
"key": "English_09",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -311,6 +320,7 @@
"key": "English_10",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -343,6 +353,7 @@
"key": "English_11",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -376,6 +387,7 @@
"key": "English_12",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -409,6 +421,7 @@
"key": "English_13",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -442,6 +455,7 @@
"key": "English_14",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -475,6 +489,7 @@
"key": "English_15",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -508,6 +523,7 @@
"key": "English_16",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -541,6 +557,7 @@
"key": "English_17",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -574,6 +591,7 @@
"key": "English_18",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
@@ -607,6 +625,7 @@
"key": "English_19",
"text": "乌龟大师"
},
+ "weight": 1000,
"pic": "",
"True": "",
"flase": "",
diff --git a/bin/json/game_guildbosstask.json b/bin/json/game_guildbosstask.json
new file mode 100644
index 000000000..18dd5f9eb
--- /dev/null
+++ b/bin/json/game_guildbosstask.json
@@ -0,0 +1,152 @@
+[
+ {
+ "id": 1,
+ "score": 1500000,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ],
+ "task_describe": {
+ "key": "guildboss_task_task_describe_1",
+ "text": "总积分达到1500000分"
+ }
+ },
+ {
+ "id": 2,
+ "score": 3000000,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ],
+ "task_describe": {
+ "key": "guildboss_task_task_describe_2",
+ "text": "总积分达到3000000分"
+ }
+ },
+ {
+ "id": 3,
+ "score": 4500000,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ],
+ "task_describe": {
+ "key": "guildboss_task_task_describe_3",
+ "text": "总积分达到4500000分"
+ }
+ },
+ {
+ "id": 4,
+ "score": 6000000,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ],
+ "task_describe": {
+ "key": "guildboss_task_task_describe_4",
+ "text": "总积分达到6000000分"
+ }
+ },
+ {
+ "id": 5,
+ "score": 9000000,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ],
+ "task_describe": {
+ "key": "guildboss_task_task_describe_5",
+ "text": "总积分达到9000000分"
+ }
+ },
+ {
+ "id": 6,
+ "score": 12000000,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ],
+ "task_describe": {
+ "key": "guildboss_task_task_describe_6",
+ "text": "总积分达到12000000分"
+ }
+ },
+ {
+ "id": 7,
+ "score": 15000000,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ],
+ "task_describe": {
+ "key": "guildboss_task_task_describe_7",
+ "text": "总积分达到15000000分"
+ }
+ },
+ {
+ "id": 8,
+ "score": 18000000,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ],
+ "task_describe": {
+ "key": "guildboss_task_task_describe_8",
+ "text": "总积分达到18000000分"
+ }
+ },
+ {
+ "id": 9,
+ "score": 21000000,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ],
+ "task_describe": {
+ "key": "guildboss_task_task_describe_9",
+ "text": "总积分达到21000000分"
+ }
+ },
+ {
+ "id": 10,
+ "score": 24000000,
+ "reward": [
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 1000
+ }
+ ],
+ "task_describe": {
+ "key": "guildboss_task_task_describe_10",
+ "text": "总积分达到24000000分"
+ }
+ }
+]
\ No newline at end of file
diff --git a/bin/json/game_mainstage.json b/bin/json/game_mainstage.json
index 41b79e12c..fc188f11c 100644
--- a/bin/json/game_mainstage.json
+++ b/bin/json/game_mainstage.json
@@ -10,7 +10,9 @@
"EditorStage": 0,
"venturemodel": "Person/10000/10000M.prefab",
"ventureavatar": [
- "zxgq_js_44005"
+ "zxgq_js_44005",
+ "zxgq_js_44006",
+ "zxgq_js_44004"
],
"heroimg": "zxgq_js_34004",
"bubbletext": {
@@ -107,7 +109,8 @@
"EditorStage": 0,
"venturemodel": "Person/10000/10000W.prefab",
"ventureavatar": [
- "zxgq_js_44005"
+ "zxgq_js_44005",
+ "zxgq_js_44004"
],
"heroimg": "attr_diamond",
"bubbletext": {
@@ -204,7 +207,8 @@
"EditorStage": 0,
"venturemodel": "Person/10000/10000M.prefab",
"ventureavatar": [
- "zxgq_js_44005"
+ "zxgq_js_44005",
+ "zxgq_js_44006"
],
"heroimg": "attr_diamond",
"bubbletext": {
@@ -301,7 +305,9 @@
"EditorStage": 0,
"venturemodel": "Person/10000/10000W.prefab",
"ventureavatar": [
- "zxgq_js_44005"
+ "zxgq_js_44005",
+ "zxgq_js_44006",
+ "zxgq_js_44004"
],
"heroimg": "zxgq_js_34004",
"bubbletext": {
diff --git a/bin/json/game_robotdata.json b/bin/json/game_robotdata.json
new file mode 100644
index 000000000..a039d2ed3
--- /dev/null
+++ b/bin/json/game_robotdata.json
@@ -0,0 +1,322 @@
+[
+ {
+ "robotid": 10001,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "激奋的布卢尔",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10002,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "快乐的艾丽莎",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10003,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "朴素的希伯来",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10004,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "庄重的布卢姆",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10005,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "和谐的哈莉特",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10006,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "坦然的乔伊斯",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10007,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "苗条的赫瑟尔",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10008,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "可人的博斯韦",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10009,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "青春的罗瑞尔",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10010,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "开心的茉莉",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10011,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "幸运的蒂安娜",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10012,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "踊跃的波伊尔",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10013,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "愉快的爱罗拉",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10014,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "神奇的塔利娅",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10015,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "不凡的埃达",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10016,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "进步的汉塞尔",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10017,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "业余的桃乐丝",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10018,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "整洁的薇薇安",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10019,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "认真的塞尔特",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10020,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "友爱的白雪",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10021,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "聪明的玛娅",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10022,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "细心的阿拉丁",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10023,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "娇美的布赖特",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10024,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "无知的伊凡",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10025,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "冷魅的梅根",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10026,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "雍容的布罗德",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10027,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "害羞的夏洛特",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10028,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "热情的海洛伊",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10029,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "开朗的克莱儿",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10030,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "唠叨的巴比特",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10031,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "娇媚的波比",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10032,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "绝美的艾薇",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10033,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "职业的艾尔玛",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10034,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "佩服的布鲁克",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10035,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "迷茫的鲍德温",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10036,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "摩登的鲁思",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10037,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "火红的巴纳德",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10038,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "好动的杰奎琳",
+ "sex": 1,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10039,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "娇艳的丝特勒",
+ "sex": 0,
+ "showid": "16010101"
+ },
+ {
+ "robotid": 10040,
+ "icon": "hbkp_js_24003",
+ "lvshow": 60,
+ "name": "欢闹的妮莉雅",
+ "sex": 1,
+ "showid": "16010101"
+ }
+]
\ No newline at end of file
diff --git a/bin/json/game_stronebuff.json b/bin/json/game_stronebuff.json
new file mode 100644
index 000000000..f02faeea4
--- /dev/null
+++ b/bin/json/game_stronebuff.json
@@ -0,0 +1,242 @@
+[
+ {
+ "BuffId": 251023111,
+ "BuffGroupId": 1001,
+ "Type": 1,
+ "BuffLevel": 1,
+ "Quality": 1,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_1",
+ "text": "攻击buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_1",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_1",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 1
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 2
+ }
+ },
+ {
+ "BuffId": 251023112,
+ "BuffGroupId": 1001,
+ "Type": 1,
+ "BuffLevel": 2,
+ "Quality": 1,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_2",
+ "text": "攻击buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_2",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_2",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 1
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 2
+ }
+ },
+ {
+ "BuffId": 200000001,
+ "BuffGroupId": 1002,
+ "Type": 2,
+ "BuffLevel": 1,
+ "Quality": 2,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_3",
+ "text": "防御buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_3",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_3",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 2
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 3
+ }
+ },
+ {
+ "BuffId": 200000002,
+ "BuffGroupId": 1002,
+ "Type": 2,
+ "BuffLevel": 2,
+ "Quality": 2,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_4",
+ "text": "防御buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_4",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_4",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 3
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 4
+ }
+ },
+ {
+ "BuffId": 253005111,
+ "BuffGroupId": 1003,
+ "Type": 3,
+ "BuffLevel": 1,
+ "Quality": 1,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_5",
+ "text": "辅助buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_5",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_5",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 4
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 5
+ }
+ },
+ {
+ "BuffId": 253005112,
+ "BuffGroupId": 1003,
+ "Type": 3,
+ "BuffLevel": 2,
+ "Quality": 1,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_6",
+ "text": "辅助buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_6",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_6",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 5
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 6
+ }
+ },
+ {
+ "BuffId": 225002011,
+ "BuffGroupId": 1004,
+ "Type": 4,
+ "BuffLevel": 1,
+ "Quality": 2,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_7",
+ "text": "控制buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_7",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_7",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 6
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 7
+ }
+ },
+ {
+ "BuffId": 225002012,
+ "BuffGroupId": 1004,
+ "Type": 4,
+ "BuffLevel": 2,
+ "Quality": 2,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_8",
+ "text": "控制buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_8",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_8",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 7
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 8
+ }
+ }
+]
\ No newline at end of file
diff --git a/bin/json/game_stroneroom.json b/bin/json/game_stroneroom.json
new file mode 100644
index 000000000..f02faeea4
--- /dev/null
+++ b/bin/json/game_stroneroom.json
@@ -0,0 +1,242 @@
+[
+ {
+ "BuffId": 251023111,
+ "BuffGroupId": 1001,
+ "Type": 1,
+ "BuffLevel": 1,
+ "Quality": 1,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_1",
+ "text": "攻击buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_1",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_1",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 1
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 2
+ }
+ },
+ {
+ "BuffId": 251023112,
+ "BuffGroupId": 1001,
+ "Type": 1,
+ "BuffLevel": 2,
+ "Quality": 1,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_2",
+ "text": "攻击buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_2",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_2",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 1
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 2
+ }
+ },
+ {
+ "BuffId": 200000001,
+ "BuffGroupId": 1002,
+ "Type": 2,
+ "BuffLevel": 1,
+ "Quality": 2,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_3",
+ "text": "防御buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_3",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_3",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 2
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 3
+ }
+ },
+ {
+ "BuffId": 200000002,
+ "BuffGroupId": 1002,
+ "Type": 2,
+ "BuffLevel": 2,
+ "Quality": 2,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_4",
+ "text": "防御buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_4",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_4",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 3
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 4
+ }
+ },
+ {
+ "BuffId": 253005111,
+ "BuffGroupId": 1003,
+ "Type": 3,
+ "BuffLevel": 1,
+ "Quality": 1,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_5",
+ "text": "辅助buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_5",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_5",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 4
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 5
+ }
+ },
+ {
+ "BuffId": 253005112,
+ "BuffGroupId": 1003,
+ "Type": 3,
+ "BuffLevel": 2,
+ "Quality": 1,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_6",
+ "text": "辅助buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_6",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_6",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 5
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 6
+ }
+ },
+ {
+ "BuffId": 225002011,
+ "BuffGroupId": 1004,
+ "Type": 4,
+ "BuffLevel": 1,
+ "Quality": 2,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_7",
+ "text": "控制buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_7",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_7",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 6
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 7
+ }
+ },
+ {
+ "BuffId": 225002012,
+ "BuffGroupId": 1004,
+ "Type": 4,
+ "BuffLevel": 2,
+ "Quality": 2,
+ "BuffIcon": "",
+ "buffName": {
+ "key": "stonehenge_eventconfig_buffName_8",
+ "text": "控制buff"
+ },
+ "BuffDescription": {
+ "key": "stonehenge_buffconfig_BuffDescription_8",
+ "text": "描述描述描述"
+ },
+ "BuffStory": {
+ "key": "stonehenge_buffconfig_BuffStory_8",
+ "text": "描述描述描述"
+ },
+ "BuffUpgradeCost": {
+ "a": "attr",
+ "t": "gold",
+ "n": 7
+ },
+ "BuffSell": {
+ "a": "attr",
+ "t": "gold",
+ "n": 8
+ }
+ }
+]
\ No newline at end of file
diff --git a/modules/pagoda/api_getrace.go b/modules/pagoda/api_getrace.go
index ed69bbe60..88dcc5058 100644
--- a/modules/pagoda/api_getrace.go
+++ b/modules/pagoda/api_getrace.go
@@ -40,6 +40,18 @@ func (this *apiComp) GetRace(session comm.IUserSession, req *pb.PagodaGetRaceReq
if k >= 10 {
bSesaon = true
}
+ // 校验循环塔是否过期
+ if v.Endtime < configure.Now().Unix() {
+ list.Race[k] = &pb.RaceData{
+ Race: 10,
+ Task: []int32{},
+ Rtime: configure.Now().Unix(),
+ Defeat: 0,
+ Endtime: this.module.GetSeasonData(),
+ Curfloor: 0,
+ }
+ bChange = true
+ }
}
if !bSesaon {
list.Race[10] = &pb.RaceData{ // 第一赛季阵营id默认就是10
diff --git a/modules/shop/api_getlist.go b/modules/shop/api_getlist.go
index 0863dd5fe..995159f06 100644
--- a/modules/shop/api_getlist.go
+++ b/modules/shop/api_getlist.go
@@ -245,6 +245,7 @@ func (this *apiComp) Getlist(session comm.IUserSession, req *pb.ShopGetListReq)
keys := make([]int32, len(sdata.Items))
for i, v := range sdata.Items {
keys[i] = v.Gid
+
}
if items, err = this.module.configure.GetShopItemsConfigureByIds(keys...); err != nil {
errdata = &pb.ErrorData{
@@ -254,6 +255,20 @@ func (this *apiComp) Getlist(session comm.IUserSession, req *pb.ShopGetListReq)
}
return
}
+ sdata.Preview = make(map[int32]*pb.DB_Equipment)
+ for i, v := range items {
+ id := v.Key*100 + int32(i)
+ sdata.Items[i] = &pb.UserShopGood{
+ Id: id,
+ Gid: v.Key,
+ Buy: 0,
+ }
+ if v.Preview { //是否预览
+ if errdata, sdata.Preview[id] = this.module.equip.NewEquipment(session.GetUserId(), v.Iteminfo[0].T); errdata != nil {
+ return
+ }
+ }
+ }
goods = transGoods(items, sdata)
}
} else {
diff --git a/modules/stonehenge/api_selecthero.go b/modules/stonehenge/api_enterlevel.go
similarity index 73%
rename from modules/stonehenge/api_selecthero.go
rename to modules/stonehenge/api_enterlevel.go
index f25ef4fdf..79f662375 100644
--- a/modules/stonehenge/api_selecthero.go
+++ b/modules/stonehenge/api_enterlevel.go
@@ -6,20 +6,20 @@ import (
)
//参数校验
-func (this *apiComp) SelectHeroCheck(session comm.IUserSession, req *pb.StonehengeSelectHeroReq) (errdata *pb.ErrorData) {
+func (this *apiComp) EnterLevelCheck(session comm.IUserSession, req *pb.StonehengeEnterLevelReq) (errdata *pb.ErrorData) {
return
}
// 选择英雄
-func (this *apiComp) SelectHero(session comm.IUserSession, req *pb.StonehengeSelectHeroReq) (errdata *pb.ErrorData) {
+func (this *apiComp) EnterLevel(session comm.IUserSession, req *pb.StonehengeEnterLevelReq) (errdata *pb.ErrorData) {
var (
stone *pb.DBStonehenge
update map[string]interface{}
heros []*pb.DBHero
)
update = make(map[string]interface{})
- if errdata = this.SelectHeroCheck(session, req); errdata != nil {
+ if errdata = this.EnterLevelCheck(session, req); errdata != nil {
return
}
@@ -35,10 +35,6 @@ func (this *apiComp) SelectHero(session comm.IUserSession, req *pb.StonehengeSel
return
} else {
heros = append(heros, hero)
- // newHero := new(pb.DBHero)
- // *newHero = *hero
- // //stone.Hero[hero.HeroID] = newHero
- // CreateBattleServer()
}
}
if stone.Hero, errdata = this.module.battle.CreateRolesByHeros(heros); errdata != nil {
diff --git a/modules/stonehenge/configure.go b/modules/stonehenge/configure.go
index fad47eb56..5cb62ff4b 100644
--- a/modules/stonehenge/configure.go
+++ b/modules/stonehenge/configure.go
@@ -1,27 +1,625 @@
package stonehenge
import (
+ "fmt"
+ "go_dreamfactory/comm"
"go_dreamfactory/lego/core"
+ "go_dreamfactory/lego/sys/log"
"go_dreamfactory/modules"
+ "go_dreamfactory/sys/configure"
cfg "go_dreamfactory/sys/configure/structs"
+ "sync"
)
const (
- game_teaching = "game_teaching.json"
- game_herostrategy = "game_herostrategy.json"
+ game_bufflottery = "game_bufflottery.json"
+ game_eventlottery = "game_eventlottery.json"
+ game_roomlottery = "game_roomlottery.json"
)
///背包配置管理组件
type configureComp struct {
modules.MCompConfigure
module *Stonehenge
+ hlock sync.RWMutex
+ // 房间随机
+ _groupR map[int64][]int32 // key 小组ID value cid
+ // 类型为1 的数据 该大组中的小组为权重掉落,必定从N个小组中随机出1个小组
+ _lotteryType1R map[int32][]int32 // key 大组ID value cid
+ // 类型为2 的数据 有多个小组ID
+ _lotteryType2R map[int32][]int32 // key 大组ID value 小组ID
+ // 小组类型为1
+ _groupType1R map[int64][]int32 //value cid
+ // 小组类型为2
+ _groupType2R map[int64][]int32 //value cid
+ BtypeR map[int32]int32
+ StypeR map[int64]int32 // subtype
+ SNumR map[int64]int32 // 小组产出数量
+
+ // event 随机
+ _groupE map[int64][]int32 // key 小组ID value cid
+ // 类型为1 的数据 该大组中的小组为权重掉落,必定从N个小组中随机出1个小组
+ _lotteryType1E map[int32][]int32 // key 大组ID value cid
+ // 类型为2 的数据 有多个小组ID
+ _lotteryType2E map[int32][]int32 // key 大组ID value 小组ID
+ // 小组类型为1
+ _groupType1E map[int64][]int32 //value cid
+ // 小组类型为2
+ _groupType2E map[int64][]int32 //value cid
+ BtypeE map[int32]int32
+ StypeE map[int64]int32 // subtype
+ SNumE map[int64]int32 // 小组产出数量
+
+ // buff 随机
+ _group map[int64][]int32 // key 小组ID value cid
+ // 类型为1 的数据 该大组中的小组为权重掉落,必定从N个小组中随机出1个小组
+ _lotteryType1 map[int32][]int32 // key 大组ID value cid
+ // 类型为2 的数据 有多个小组ID
+ _lotteryType2 map[int32][]int32 // key 大组ID value 小组ID
+ // 小组类型为1
+ _groupType1 map[int64][]int32 //value cid
+ // 小组类型为2
+ _groupType2 map[int64][]int32 //value cid
+ Btype map[int32]int32
+ Stype map[int64]int32 // subtype
+ SNum map[int64]int32 // 小组产出数量
}
//组件初始化接口
func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
this.MCompConfigure.Init(service, module, comp, options)
this.module = module.(*Stonehenge)
- this.LoadConfigure(game_teaching, cfg.NewGameTeaching)
- this.LoadConfigure(game_herostrategy, cfg.NewGameHeroStrategy)
+ err = this.LoadConfigure(game_bufflottery, cfg.NewGameBufflottery)
+ configure.RegisterConfigure(game_bufflottery, cfg.NewGameBufflottery, this.LoadBUffGroupData)
+
+ err = this.LoadConfigure(game_eventlottery, cfg.NewGameEventlottery)
+ configure.RegisterConfigure(game_eventlottery, cfg.NewGameEventlottery, this.LoadEventGroupData)
+
+ err = this.LoadConfigure(game_roomlottery, cfg.NewGameRoomlottery)
+ configure.RegisterConfigure(game_roomlottery, cfg.NewGameRoomlottery, this.LoadRoomGroupData)
+
+ //测试 接口
+ _d := this.GetBuffGroupDataByLottery(100001)
+ _d = this.GetEventGroupDataByLottery(1001001)
+ _d = this.GetRoomGroupDataByLottery(100001)
+
+ _d = this.GetBuffGroupDataByLottery(100002)
+ _d = this.GetRoomGroupDataByLottery(100002)
+
+ fmt.Printf("%v", _d)
+ return
+}
+
+func (this *configureComp) LoadEventGroupData() {
+ if v, err := this.GetConfigure(game_eventlottery); err == nil {
+ if configure, ok := v.(*cfg.GameEventlottery); ok {
+ this.hlock.Lock()
+ defer this.hlock.Unlock()
+ this._groupE = make(map[int64][]int32, 0)
+ this._lotteryType1E = make(map[int32][]int32, 0)
+ this._lotteryType2E = make(map[int32][]int32, 0)
+ this._groupType1E = make(map[int64][]int32, 0)
+ this._groupType2E = make(map[int64][]int32, 0)
+ this.BtypeE = make(map[int32]int32, 0)
+ this.StypeE = make(map[int64]int32, 0)
+ this.SNumE = make(map[int64]int32, 0)
+ for _, value := range configure.GetDataList() {
+ key := int64(value.GroupId)<<31 + int64(value.SubGroupId)
+ this._groupE[key] = append(this._groupE[key], value.Id)
+
+ if _, ok := this.BtypeE[value.GroupId]; !ok {
+ this.BtypeE[value.GroupId] = value.GroupType
+ }
+
+ if _, ok := this.StypeE[key]; !ok {
+ this.StypeE[key] = value.SubGroupType
+ }
+ if _, ok := this.SNumE[key]; !ok {
+ this.SNumE[key] = value.SubGroupNum
+ }
+ if this.BtypeE[value.GroupId] == 1 {
+ this._lotteryType1E[value.GroupId] = append(this._lotteryType1E[value.GroupId], value.Id)
+ } else if this.BtypeE[value.GroupId] == 2 {
+ this._lotteryType2E[value.GroupId] = append(this._lotteryType2E[value.GroupId], value.Id)
+ }
+
+ if this.StypeE[key] == 1 { // 小组ID为1
+ this._groupType1E[key] = append(this._groupType1E[key], value.Id)
+ } else if this.StypeE[key] == 2 {
+ this._groupType2E[key] = append(this._groupType2E[key], value.Id)
+ }
+ }
+ return
+ }
+ } else {
+ log.Errorf("get NewGameBufflottery conf err:%v", err)
+ }
+ return
+}
+func (this *configureComp) GetEventLotterConfById(id int32) (data *cfg.GameEventlotteryData) {
+ if v, err := this.GetConfigure(game_eventlottery); err == nil {
+ if configure, ok := v.(*cfg.GameEventlottery); ok {
+ return configure.Get(id)
+ }
+ }
+ return
+}
+
+// 实际掉落逻辑 (传入 掉落组ID vip等级 玩家等级 返回获得的道具)
+func (this *configureComp) GetEventGroupDataByLottery(lotteryId int32) (buff []int32) {
+
+ if _, ok := this._lotteryType1E[lotteryId]; !ok {
+ if _, ok := this._lotteryType2E[lotteryId]; !ok {
+ fmt.Printf("not found config lotterId:%d", lotteryId)
+ return
+ }
+ }
+ // 优先校验大组ID 的类型
+ if this.BtypeE[lotteryId] == 1 { // 该大组中的小组为权重掉落,必定从N个小组中随机出1个小组
+ var (
+ szW []int32 // 权重数组
+ szID []int32 // 小组ID 数组
+ groupID int32
+ gourp map[int32]int32 // key 小组ID value 权重
+ )
+
+ gourp = make(map[int32]int32, 0)
+ // 随机小组id
+ for _, v := range this._lotteryType1E[lotteryId] {
+ if _data := this.GetEventLotterConfById(v); _data != nil {
+ if _, ok := gourp[_data.SubGroupId]; !ok {
+ gourp[_data.SubGroupId] = _data.SubGroupWt // 小组ID 权重赋值
+ szW = append(szW, _data.SubGroupWt)
+ szID = append(szID, _data.SubGroupId)
+ }
+ }
+ }
+
+ groupID = szID[comm.GetRandW(szW)] // 获得小组ID
+ //fmt.Printf("大组类型为1的,获得小组ID :%d,dropID:%d", groupID, lotteryId)
+ key := int64(lotteryId)<<31 + int64(groupID)
+ // 小组ID 类型判断
+ if this.StypeE[key] == 1 { // 该小组的道具为权重掉落,必定从N个道具中随机出1个道具
+ for i := 0; i < int(this.SNumE[key]); i++ {
+ szW = make([]int32, 0)
+ szID = make([]int32, 0)
+ gourp = make(map[int32]int32, 0)
+ for _, v := range this._groupType1E[key] {
+ if _data := this.GetEventLotterConfById(v); _data != nil { // 权重赋值
+ if _, ok := gourp[_data.SubGroupId]; !ok {
+ szW = append(szW, _data.EventWt)
+ szID = append(szID, _data.Id)
+ }
+ }
+ }
+ index := comm.GetRandW(szW)
+ _data := this.GetEventLotterConfById(szID[index])
+ buff = append(buff, _data.EventID)
+ }
+ return
+ } else if this.StypeE[key] == 2 { // 该小组中的道具为概率掉落,每个道具都会随机一次是否会掉落(单位为千分比)
+ var wt int32
+ for _, v := range this._groupType2E[key] {
+ if _data := this.GetEventLotterConfById(v); _data != nil { // 权重赋值
+ if _data.EventWt != 0 {
+ wt = _data.EventWt
+ }
+ //fmt.Printf("大组类型1小组类型2获得道具 :%v, 该道具Cid:%d", _data.Itemid, v)
+ if wt >= comm.GetRandNum(0, 1000) { // 命中
+ buff = append(buff, _data.EventID)
+ }
+ }
+ }
+ return
+ }
+ } else if this.BtypeE[lotteryId] == 2 { // 该大组中的小组为概率掉落,每个小组都会随机一次是否会掉落(单位为千分比)
+ // 每个小组id 都随机取一次
+ var szGroupID []int32 // 获得的权重数组
+ gourp := make([]*cfg.GameEventlotteryData, 0) // key 小组ID value 权重
+ for _, v := range this._lotteryType2E[lotteryId] {
+ if _data := this.GetEventLotterConfById(v); _data != nil {
+ gourp = append(gourp, _data)
+ }
+ }
+ var wt int32
+ // 类型为2 可能会同时获得多个组id
+ for _, v := range gourp {
+ if v.SubGroupWt != 0 {
+ wt = v.SubGroupWt
+ }
+ k := v.SubGroupId
+ //fmt.Printf("大组类型为2的,获得小组ID :%d,dropID:%d", k, v.Id)
+ if wt >= comm.GetRandNum(0, 1000) { // 命中
+ szGroupID = append(szGroupID, k)
+ key := int64(lotteryId)<<31 + int64(k)
+ if this.StypeE[key] == 1 { // 随机一组数据
+ for i := 0; i < int(this.SNumE[key]); i++ {
+ szW := make([]int32, 0)
+ szID := make([]int32, 0)
+ gourp := make(map[int32]int32, 0)
+ for _, v := range this._groupType1E[key] {
+ if _data := this.GetEventLotterConfById(v); _data != nil { // 权重赋值
+ if _, ok := gourp[_data.SubGroupId]; !ok {
+ szW = append(szW, _data.EventWt)
+ szID = append(szID, _data.Id)
+ }
+ }
+ }
+ index := comm.GetRandW(szW)
+ _data := this.GetEventLotterConfById(szID[index])
+ buff = append(buff, _data.EventID)
+ }
+ } else if this.StypeE[key] == 2 {
+ for _, v := range this._groupType2E[key] {
+ var wt int32
+ if _data := this.GetEventLotterConfById(v); _data != nil { // 权重赋值
+ if _data.EventWt != 0 {
+ wt = _data.EventWt
+ }
+ if wt >= comm.GetRandNum(1, 1000) { // 命中
+ buff = append(buff, _data.EventID)
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ return
+}
+
+func (this *configureComp) LoadRoomGroupData() {
+ if v, err := this.GetConfigure(game_roomlottery); err == nil {
+ if configure, ok := v.(*cfg.GameRoomlottery); ok {
+ this.hlock.Lock()
+ defer this.hlock.Unlock()
+ this._groupR = make(map[int64][]int32, 0)
+ this._lotteryType1R = make(map[int32][]int32, 0)
+ this._lotteryType2R = make(map[int32][]int32, 0)
+ this._groupType1R = make(map[int64][]int32, 0)
+ this._groupType2R = make(map[int64][]int32, 0)
+ this.BtypeR = make(map[int32]int32, 0)
+ this.StypeR = make(map[int64]int32, 0)
+ this.SNumR = make(map[int64]int32, 0)
+ for _, value := range configure.GetDataList() {
+ key := int64(value.GroupId)<<31 + int64(value.SubGroupId)
+ this._groupR[key] = append(this._groupR[key], value.Id)
+
+ if _, ok := this.BtypeR[value.GroupId]; !ok {
+ this.BtypeR[value.GroupId] = value.GroupType
+ }
+
+ if _, ok := this.StypeR[key]; !ok {
+ this.StypeR[key] = value.SubGroupType
+ }
+ if _, ok := this.SNumR[key]; !ok {
+ this.SNumR[key] = value.SubGroupNum
+ }
+ if this.BtypeR[value.GroupId] == 1 {
+ this._lotteryType1R[value.GroupId] = append(this._lotteryType1R[value.GroupId], value.Id)
+ } else if this.BtypeR[value.GroupId] == 2 {
+ this._lotteryType2R[value.GroupId] = append(this._lotteryType2R[value.GroupId], value.Id)
+ }
+
+ if this.StypeR[key] == 1 { // 小组ID为1
+ this._groupType1R[key] = append(this._groupType1R[key], value.Id)
+ } else if this.StypeR[key] == 2 {
+ this._groupType2R[key] = append(this._groupType2R[key], value.Id)
+ }
+ }
+ return
+ }
+ } else {
+ log.Errorf("get NewGameBufflottery conf err:%v", err)
+ }
+ return
+}
+func (this *configureComp) GetRoomLotterConfById(id int32) (data *cfg.GameRoomlotteryData) {
+ if v, err := this.GetConfigure(game_roomlottery); err == nil {
+ if configure, ok := v.(*cfg.GameRoomlottery); ok {
+ return configure.Get(id)
+ }
+ }
+ return
+}
+
+// 实际掉落逻辑 (传入 掉落组ID vip等级 玩家等级 返回获得的道具)
+func (this *configureComp) GetRoomGroupDataByLottery(lotteryId int32) (buff []int32) {
+
+ if _, ok := this._lotteryType1R[lotteryId]; !ok {
+ if _, ok := this._lotteryType2R[lotteryId]; !ok {
+ fmt.Printf("not found config lotterId:%d", lotteryId)
+ return
+ }
+ }
+ // 优先校验大组ID 的类型
+ if this.BtypeR[lotteryId] == 1 { // 该大组中的小组为权重掉落,必定从N个小组中随机出1个小组
+ var (
+ szW []int32 // 权重数组
+ szID []int32 // 小组ID 数组
+ groupID int32
+ gourp map[int32]int32 // key 小组ID value 权重
+ )
+
+ gourp = make(map[int32]int32, 0)
+ // 随机小组id
+ for _, v := range this._lotteryType1R[lotteryId] {
+ if _data := this.GetRoomLotterConfById(v); _data != nil {
+ if _, ok := gourp[_data.SubGroupId]; !ok {
+ gourp[_data.SubGroupId] = _data.SubGroupWt // 小组ID 权重赋值
+ szW = append(szW, _data.SubGroupWt)
+ szID = append(szID, _data.SubGroupId)
+ }
+ }
+ }
+
+ groupID = szID[comm.GetRandW(szW)] // 获得小组ID
+ //fmt.Printf("大组类型为1的,获得小组ID :%d,dropID:%d", groupID, lotteryId)
+ key := int64(lotteryId)<<31 + int64(groupID)
+ // 小组ID 类型判断
+ if this.StypeR[key] == 1 { // 该小组的道具为权重掉落,必定从N个道具中随机出1个道具
+ for i := 0; i < int(this.SNumR[key]); i++ {
+ szW = make([]int32, 0)
+ szID = make([]int32, 0)
+ gourp = make(map[int32]int32, 0)
+ for _, v := range this._groupType1R[key] {
+ if _data := this.GetRoomLotterConfById(v); _data != nil { // 权重赋值
+ if _, ok := gourp[_data.SubGroupId]; !ok {
+ szW = append(szW, _data.RoomWt)
+ szID = append(szID, _data.Id)
+ }
+ }
+ }
+ index := comm.GetRandW(szW)
+ _data := this.GetRoomLotterConfById(szID[index])
+ buff = append(buff, _data.RoomID)
+ }
+ return
+ } else if this.StypeR[key] == 2 { // 该小组中的道具为概率掉落,每个道具都会随机一次是否会掉落(单位为千分比)
+ var wt int32
+ for _, v := range this._groupType2R[key] {
+ if _data := this.GetRoomLotterConfById(v); _data != nil { // 权重赋值
+ if _data.RoomWt != 0 {
+ wt = _data.RoomWt
+ }
+ //fmt.Printf("大组类型1小组类型2获得道具 :%v, 该道具Cid:%d", _data.Itemid, v)
+ if wt >= comm.GetRandNum(0, 1000) { // 命中
+ buff = append(buff, _data.RoomID)
+ }
+ }
+ }
+ return
+ }
+ } else if this.BtypeR[lotteryId] == 2 { // 该大组中的小组为概率掉落,每个小组都会随机一次是否会掉落(单位为千分比)
+ // 每个小组id 都随机取一次
+ var szGroupID []int32 // 获得的权重数组
+ gourp := make([]*cfg.GameRoomlotteryData, 0) // key 小组ID value 权重
+ for _, v := range this._lotteryType2R[lotteryId] {
+ if _data := this.GetRoomLotterConfById(v); _data != nil {
+ gourp = append(gourp, _data)
+ }
+ }
+ var wt int32
+ // 类型为2 可能会同时获得多个组id
+ for _, v := range gourp {
+ if v.SubGroupWt != 0 {
+ wt = v.SubGroupWt
+ }
+ k := v.SubGroupId
+ //fmt.Printf("大组类型为2的,获得小组ID :%d,dropID:%d", k, v.Id)
+ if wt >= comm.GetRandNum(0, 1000) { // 命中
+ szGroupID = append(szGroupID, k)
+ key := int64(lotteryId)<<31 + int64(k)
+ if this.StypeR[key] == 1 { // 随机一组数据
+ for i := 0; i < int(this.SNumR[key]); i++ {
+ szW := make([]int32, 0)
+ szID := make([]int32, 0)
+ gourp := make(map[int32]int32, 0)
+ for _, v := range this._groupType1R[key] {
+ if _data := this.GetRoomLotterConfById(v); _data != nil { // 权重赋值
+ if _, ok := gourp[_data.SubGroupId]; !ok {
+ szW = append(szW, _data.RoomWt)
+ szID = append(szID, _data.Id)
+ }
+ }
+ }
+ index := comm.GetRandW(szW)
+ _data := this.GetRoomLotterConfById(szID[index])
+ buff = append(buff, _data.RoomID)
+ }
+ } else if this.StypeR[key] == 2 {
+ for _, v := range this._groupType2R[key] {
+ var wt int32
+ if _data := this.GetRoomLotterConfById(v); _data != nil { // 权重赋值
+ if _data.RoomWt != 0 {
+ wt = _data.RoomWt
+ }
+ if wt >= comm.GetRandNum(1, 1000) { // 命中
+ buff = append(buff, _data.RoomID)
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ return
+}
+
+func (this *configureComp) LoadBUffGroupData() {
+ if v, err := this.GetConfigure(game_bufflottery); err == nil {
+ if configure, ok := v.(*cfg.GameBufflottery); ok {
+ this.hlock.Lock()
+ defer this.hlock.Unlock()
+ this._group = make(map[int64][]int32, 0)
+ this._lotteryType1 = make(map[int32][]int32, 0)
+ this._lotteryType2 = make(map[int32][]int32, 0)
+ this._groupType1 = make(map[int64][]int32, 0)
+ this._groupType2 = make(map[int64][]int32, 0)
+ this.Btype = make(map[int32]int32, 0)
+ this.Stype = make(map[int64]int32, 0)
+ this.SNum = make(map[int64]int32, 0)
+ for _, value := range configure.GetDataList() {
+ key := int64(value.GroupId)<<31 + int64(value.SubGroupId)
+ this._group[key] = append(this._group[key], value.Id)
+
+ if _, ok := this.Btype[value.GroupId]; !ok {
+ this.Btype[value.GroupId] = value.GroupType
+ }
+
+ if _, ok := this.Stype[key]; !ok {
+ this.Stype[key] = value.SubGroupType
+ }
+ if _, ok := this.SNum[key]; !ok {
+ this.SNum[key] = value.SubGroupNum
+ }
+ if this.Btype[value.GroupId] == 1 {
+ this._lotteryType1[value.GroupId] = append(this._lotteryType1[value.GroupId], value.Id)
+ } else if this.Btype[value.GroupId] == 2 {
+ this._lotteryType2[value.GroupId] = append(this._lotteryType2[value.GroupId], value.Id)
+ }
+
+ if this.Stype[key] == 1 { // 小组ID为1
+ this._groupType1[key] = append(this._groupType1[key], value.Id)
+ } else if this.Stype[key] == 2 {
+ this._groupType2[key] = append(this._groupType2[key], value.Id)
+ }
+ }
+ return
+ }
+ } else {
+ log.Errorf("get NewGameBufflottery conf err:%v", err)
+ }
+ return
+}
+func (this *configureComp) GetLotterConfById(id int32) (data *cfg.GameBufflotteryData) {
+ if v, err := this.GetConfigure(game_bufflottery); err == nil {
+ if configure, ok := v.(*cfg.GameBufflottery); ok {
+ return configure.Get(id)
+ }
+ }
+ return
+}
+
+// 实际掉落逻辑 (传入 掉落组ID vip等级 玩家等级 返回获得的道具)
+func (this *configureComp) GetBuffGroupDataByLottery(lotteryId int32) (buff []int32) {
+
+ if _, ok := this._lotteryType1[lotteryId]; !ok {
+ if _, ok := this._lotteryType2[lotteryId]; !ok {
+ fmt.Printf("not found config lotterId:%d", lotteryId)
+ return
+ }
+ }
+ // 优先校验大组ID 的类型
+ if this.Btype[lotteryId] == 1 { // 该大组中的小组为权重掉落,必定从N个小组中随机出1个小组
+ var (
+ szW []int32 // 权重数组
+ szID []int32 // 小组ID 数组
+ groupID int32
+ gourp map[int32]int32 // key 小组ID value 权重
+ )
+
+ gourp = make(map[int32]int32, 0)
+ // 随机小组id
+ for _, v := range this._lotteryType1[lotteryId] {
+ if _data := this.GetLotterConfById(v); _data != nil {
+ if _, ok := gourp[_data.SubGroupId]; !ok {
+ gourp[_data.SubGroupId] = _data.SubGroupWt // 小组ID 权重赋值
+ szW = append(szW, _data.SubGroupWt)
+ szID = append(szID, _data.SubGroupId)
+ }
+ }
+ }
+
+ groupID = szID[comm.GetRandW(szW)] // 获得小组ID
+ //fmt.Printf("大组类型为1的,获得小组ID :%d,dropID:%d", groupID, lotteryId)
+ key := int64(lotteryId)<<31 + int64(groupID)
+ // 小组ID 类型判断
+ if this.Stype[key] == 1 { // 该小组的道具为权重掉落,必定从N个道具中随机出1个道具
+ for i := 0; i < int(this.SNum[key]); i++ {
+ szW = make([]int32, 0)
+ szID = make([]int32, 0)
+ gourp = make(map[int32]int32, 0)
+ for _, v := range this._groupType1[key] {
+ if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值
+ if _, ok := gourp[_data.SubGroupId]; !ok {
+ szW = append(szW, _data.BuffWt)
+ szID = append(szID, _data.Id)
+ }
+ }
+ }
+ index := comm.GetRandW(szW)
+ _data := this.GetLotterConfById(szID[index])
+ buff = append(buff, _data.BuffID)
+ }
+ return
+ } else if this.Stype[key] == 2 { // 该小组中的道具为概率掉落,每个道具都会随机一次是否会掉落(单位为千分比)
+ var wt int32
+ for _, v := range this._groupType2[key] {
+ if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值
+ if _data.BuffWt != 0 {
+ wt = _data.BuffWt
+ }
+ //fmt.Printf("大组类型1小组类型2获得道具 :%v, 该道具Cid:%d", _data.Itemid, v)
+ if wt >= comm.GetRandNum(0, 1000) { // 命中
+ buff = append(buff, _data.BuffID)
+ }
+ }
+ }
+ return
+ }
+ } else if this.Btype[lotteryId] == 2 { // 该大组中的小组为概率掉落,每个小组都会随机一次是否会掉落(单位为千分比)
+ // 每个小组id 都随机取一次
+ var szGroupID []int32 // 获得的权重数组
+ gourp := make([]*cfg.GameBufflotteryData, 0) // key 小组ID value 权重
+ for _, v := range this._lotteryType2[lotteryId] {
+ if _data := this.GetLotterConfById(v); _data != nil {
+ gourp = append(gourp, _data)
+ }
+ }
+ var wt int32
+ // 类型为2 可能会同时获得多个组id
+ for _, v := range gourp {
+ if v.SubGroupWt != 0 {
+ wt = v.SubGroupWt
+ }
+ k := v.SubGroupId
+ //fmt.Printf("大组类型为2的,获得小组ID :%d,dropID:%d", k, v.Id)
+ if wt >= comm.GetRandNum(0, 1000) { // 命中
+ szGroupID = append(szGroupID, k)
+ key := int64(lotteryId)<<31 + int64(k)
+ if this.Stype[key] == 1 { // 随机一组数据
+ for i := 0; i < int(this.SNum[key]); i++ {
+ szW := make([]int32, 0)
+ szID := make([]int32, 0)
+ gourp := make(map[int32]int32, 0)
+ for _, v := range this._groupType1[key] {
+ if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值
+ if _, ok := gourp[_data.SubGroupId]; !ok {
+ szW = append(szW, _data.BuffWt)
+ szID = append(szID, _data.Id)
+ }
+ }
+ }
+ index := comm.GetRandW(szW)
+ _data := this.GetLotterConfById(szID[index])
+ buff = append(buff, _data.BuffID)
+ }
+ } else if this.Stype[key] == 2 {
+ for _, v := range this._groupType2[key] {
+ var wt int32
+ if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值
+ if _data.BuffWt != 0 {
+ wt = _data.BuffWt
+ }
+ if wt >= comm.GetRandNum(1, 1000) { // 命中
+ buff = append(buff, _data.BuffID)
+ }
+ }
+ }
+ }
+ }
+ }
+ }
return
}
diff --git a/modules/tools/comp_configure.go b/modules/tools/comp_configure.go
index b1c8fc092..0b04731c6 100644
--- a/modules/tools/comp_configure.go
+++ b/modules/tools/comp_configure.go
@@ -86,6 +86,9 @@ func (this *MCompConfigure) Init(service core.IService, module core.IModule, com
this.Stype = make(map[int64]int32, 0)
this.SNum = make(map[int64]int32, 0)
configure.RegisterConfigure(game_lottery, cfg.NewGameLottery, this.LoadGroupData)
+
+ _d := this.GetGroupDataByLottery(100101, 1, 1)
+ fmt.Printf("%v", _d)
return
}
@@ -212,10 +215,13 @@ func (this *MCompConfigure) GetGroupDataByLottery(lotteryId int32, vipLv int32,
}
return
} else if this.Stype[key] == 2 { // 该小组中的道具为概率掉落,每个道具都会随机一次是否会掉落(单位为千分比)
+ var wt int32
for _, v := range this._groupType2[key] {
if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值
- //fmt.Printf("大组类型1小组类型2获得道具 :%v, 该道具Cid:%d", _data.Itemid, v)
- if _data.Itemwt >= comm.GetRandNum(0, 1000) { // 命中
+ if _data.Itemwt != 0 {
+ wt = _data.Itemwt
+ }
+ if wt >= comm.GetRandNum(0, 1000) { // 命中
count := comm.GetRandNum(_data.Min, _data.Max)
items = append(items, &cfg.Gameatn{
A: _data.Itemid.A,
@@ -238,12 +244,16 @@ func (this *MCompConfigure) GetGroupDataByLottery(lotteryId int32, vipLv int32,
}
}
}
-
+ // 过滤 group
+ var wt int32
// 类型为2 可能会同时获得多个组id
for _, v := range gourp {
k := v.Groupid
+ if v.Groupwt != 0 {
+ wt = v.Groupwt
+ }
//fmt.Printf("大组类型为2的,获得小组ID :%d,dropID:%d", k, v.Id)
- if v.Itemwt >= comm.GetRandNum(0, 1000) { // 命中
+ if wt >= comm.GetRandNum(0, 1000) { // 命中
szGroupID = append(szGroupID, k)
key := int64(lotteryId)<<31 + int64(k)
if this.Stype[key] == 1 { // 随机一组数据
@@ -271,10 +281,13 @@ func (this *MCompConfigure) GetGroupDataByLottery(lotteryId int32, vipLv int32,
})
}
} else if this.Stype[key] == 2 {
+ var wt int32
for _, v := range this._groupType2[key] {
if _data := this.GetLotterConfById(v); _data != nil { // 权重赋值
- //fmt.Printf("大组类型2小组类型2获得道具 :%v,该道具Cid:%d", _data.Itemid, v)
- if _data.Itemwt >= comm.GetRandNum(1, 1000) { // 命中
+ if _data.Itemwt != 0 {
+ wt = _data.Itemwt
+ }
+ if wt >= comm.GetRandNum(1, 1000) { // 命中
count := comm.GetRandNum(_data.Min, _data.Max)
items = append(items, &cfg.Gameatn{
A: _data.Itemid.A,
diff --git a/modules/user/comp_configure.go b/modules/user/comp_configure.go
index a537d01ab..27f92a973 100644
--- a/modules/user/comp_configure.go
+++ b/modules/user/comp_configure.go
@@ -192,3 +192,5 @@ func (this *configureComp) GetPlayerOverview(id string, sex int32) (configure *c
}
return
}
+
+///////////////////
diff --git a/pb/stonehenge_msg.pb.go b/pb/stonehenge_msg.pb.go
index fdbd43c0e..642f95beb 100644
--- a/pb/stonehenge_msg.pb.go
+++ b/pb/stonehenge_msg.pb.go
@@ -114,17 +114,18 @@ func (x *StonehengeGetListResp) GetBoosid() []int32 {
return nil
}
-// 选择英雄
-type StonehengeSelectHeroReq struct {
+// 进入关卡
+type StonehengeEnterLevelReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Hid []string `protobuf:"bytes,1,rep,name=hid,proto3" json:"hid"` // 英雄唯一id
+ Hid []string `protobuf:"bytes,1,rep,name=hid,proto3" json:"hid"` // 英雄唯一id
+ BuffType int32 `protobuf:"varint,2,opt,name=buffType,proto3" json:"buffType"`
}
-func (x *StonehengeSelectHeroReq) Reset() {
- *x = StonehengeSelectHeroReq{}
+func (x *StonehengeEnterLevelReq) Reset() {
+ *x = StonehengeEnterLevelReq{}
if protoimpl.UnsafeEnabled {
mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -132,13 +133,13 @@ func (x *StonehengeSelectHeroReq) Reset() {
}
}
-func (x *StonehengeSelectHeroReq) String() string {
+func (x *StonehengeEnterLevelReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*StonehengeSelectHeroReq) ProtoMessage() {}
+func (*StonehengeEnterLevelReq) ProtoMessage() {}
-func (x *StonehengeSelectHeroReq) ProtoReflect() protoreflect.Message {
+func (x *StonehengeEnterLevelReq) ProtoReflect() protoreflect.Message {
mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -150,28 +151,36 @@ func (x *StonehengeSelectHeroReq) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use StonehengeSelectHeroReq.ProtoReflect.Descriptor instead.
-func (*StonehengeSelectHeroReq) Descriptor() ([]byte, []int) {
+// Deprecated: Use StonehengeEnterLevelReq.ProtoReflect.Descriptor instead.
+func (*StonehengeEnterLevelReq) Descriptor() ([]byte, []int) {
return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{2}
}
-func (x *StonehengeSelectHeroReq) GetHid() []string {
+func (x *StonehengeEnterLevelReq) GetHid() []string {
if x != nil {
return x.Hid
}
return nil
}
-type StonehengeSelectHeroResp struct {
+func (x *StonehengeEnterLevelReq) GetBuffType() int32 {
+ if x != nil {
+ return x.BuffType
+ }
+ return 0
+}
+
+type StonehengeEnterLevelResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Hero []*BattleRole `protobuf:"bytes,1,rep,name=hero,proto3" json:"hero"`
+ Room *RoomData `protobuf:"bytes,2,opt,name=room,proto3" json:"room"`
}
-func (x *StonehengeSelectHeroResp) Reset() {
- *x = StonehengeSelectHeroResp{}
+func (x *StonehengeEnterLevelResp) Reset() {
+ *x = StonehengeEnterLevelResp{}
if protoimpl.UnsafeEnabled {
mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -179,13 +188,13 @@ func (x *StonehengeSelectHeroResp) Reset() {
}
}
-func (x *StonehengeSelectHeroResp) String() string {
+func (x *StonehengeEnterLevelResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*StonehengeSelectHeroResp) ProtoMessage() {}
+func (*StonehengeEnterLevelResp) ProtoMessage() {}
-func (x *StonehengeSelectHeroResp) ProtoReflect() protoreflect.Message {
+func (x *StonehengeEnterLevelResp) ProtoReflect() protoreflect.Message {
mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
@@ -197,114 +206,26 @@ func (x *StonehengeSelectHeroResp) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use StonehengeSelectHeroResp.ProtoReflect.Descriptor instead.
-func (*StonehengeSelectHeroResp) Descriptor() ([]byte, []int) {
+// Deprecated: Use StonehengeEnterLevelResp.ProtoReflect.Descriptor instead.
+func (*StonehengeEnterLevelResp) Descriptor() ([]byte, []int) {
return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{3}
}
-func (x *StonehengeSelectHeroResp) GetHero() []*BattleRole {
+func (x *StonehengeEnterLevelResp) GetHero() []*BattleRole {
if x != nil {
return x.Hero
}
return nil
}
-// 选择增加权重的buff
-type StonehengeSelectBuffReq struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- BuffType int32 `protobuf:"varint,1,opt,name=buffType,proto3" json:"buffType"`
-}
-
-func (x *StonehengeSelectBuffReq) Reset() {
- *x = StonehengeSelectBuffReq{}
- if protoimpl.UnsafeEnabled {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[4]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
-}
-
-func (x *StonehengeSelectBuffReq) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*StonehengeSelectBuffReq) ProtoMessage() {}
-
-func (x *StonehengeSelectBuffReq) ProtoReflect() protoreflect.Message {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[4]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use StonehengeSelectBuffReq.ProtoReflect.Descriptor instead.
-func (*StonehengeSelectBuffReq) Descriptor() ([]byte, []int) {
- return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{4}
-}
-
-func (x *StonehengeSelectBuffReq) GetBuffType() int32 {
+func (x *StonehengeEnterLevelResp) GetRoom() *RoomData {
if x != nil {
- return x.BuffType
- }
- return 0
-}
-
-type StonehengeSelectBuffResp struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- Addweight map[int32]int32 `protobuf:"bytes,1,rep,name=addweight,proto3" json:"addweight" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` // 选择buff权重增加 key 类型
-}
-
-func (x *StonehengeSelectBuffResp) Reset() {
- *x = StonehengeSelectBuffResp{}
- if protoimpl.UnsafeEnabled {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[5]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
-}
-
-func (x *StonehengeSelectBuffResp) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*StonehengeSelectBuffResp) ProtoMessage() {}
-
-func (x *StonehengeSelectBuffResp) ProtoReflect() protoreflect.Message {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[5]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use StonehengeSelectBuffResp.ProtoReflect.Descriptor instead.
-func (*StonehengeSelectBuffResp) Descriptor() ([]byte, []int) {
- return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{5}
-}
-
-func (x *StonehengeSelectBuffResp) GetAddweight() map[int32]int32 {
- if x != nil {
- return x.Addweight
+ return x.Room
}
return nil
}
-// 进入关卡
+// 通关当前房间进入下一个房间
type StonehengeGotoRoomReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -316,7 +237,7 @@ type StonehengeGotoRoomReq struct {
func (x *StonehengeGotoRoomReq) Reset() {
*x = StonehengeGotoRoomReq{}
if protoimpl.UnsafeEnabled {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[6]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -329,7 +250,7 @@ func (x *StonehengeGotoRoomReq) String() string {
func (*StonehengeGotoRoomReq) ProtoMessage() {}
func (x *StonehengeGotoRoomReq) ProtoReflect() protoreflect.Message {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[6]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -342,7 +263,7 @@ func (x *StonehengeGotoRoomReq) ProtoReflect() protoreflect.Message {
// Deprecated: Use StonehengeGotoRoomReq.ProtoReflect.Descriptor instead.
func (*StonehengeGotoRoomReq) Descriptor() ([]byte, []int) {
- return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{6}
+ return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{4}
}
func (x *StonehengeGotoRoomReq) GetPortal() int32 {
@@ -363,7 +284,7 @@ type StonehengeGotoRoomResp struct {
func (x *StonehengeGotoRoomResp) Reset() {
*x = StonehengeGotoRoomResp{}
if protoimpl.UnsafeEnabled {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[7]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -376,7 +297,7 @@ func (x *StonehengeGotoRoomResp) String() string {
func (*StonehengeGotoRoomResp) ProtoMessage() {}
func (x *StonehengeGotoRoomResp) ProtoReflect() protoreflect.Message {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[7]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -389,7 +310,7 @@ func (x *StonehengeGotoRoomResp) ProtoReflect() protoreflect.Message {
// Deprecated: Use StonehengeGotoRoomResp.ProtoReflect.Descriptor instead.
func (*StonehengeGotoRoomResp) Descriptor() ([]byte, []int) {
- return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{7}
+ return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{5}
}
func (x *StonehengeGotoRoomResp) GetRoom() *RoomData {
@@ -414,7 +335,7 @@ type StonehengeEventReq struct {
func (x *StonehengeEventReq) Reset() {
*x = StonehengeEventReq{}
if protoimpl.UnsafeEnabled {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[8]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -427,7 +348,7 @@ func (x *StonehengeEventReq) String() string {
func (*StonehengeEventReq) ProtoMessage() {}
func (x *StonehengeEventReq) ProtoReflect() protoreflect.Message {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[8]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -440,7 +361,7 @@ func (x *StonehengeEventReq) ProtoReflect() protoreflect.Message {
// Deprecated: Use StonehengeEventReq.ProtoReflect.Descriptor instead.
func (*StonehengeEventReq) Descriptor() ([]byte, []int) {
- return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{8}
+ return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{6}
}
func (x *StonehengeEventReq) GetEventid() int32 {
@@ -483,7 +404,7 @@ type StonehengeEventResp struct {
func (x *StonehengeEventResp) Reset() {
*x = StonehengeEventResp{}
if protoimpl.UnsafeEnabled {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[9]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -496,7 +417,7 @@ func (x *StonehengeEventResp) String() string {
func (*StonehengeEventResp) ProtoMessage() {}
func (x *StonehengeEventResp) ProtoReflect() protoreflect.Message {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[9]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -509,7 +430,7 @@ func (x *StonehengeEventResp) ProtoReflect() protoreflect.Message {
// Deprecated: Use StonehengeEventResp.ProtoReflect.Descriptor instead.
func (*StonehengeEventResp) Descriptor() ([]byte, []int) {
- return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{9}
+ return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{7}
}
func (x *StonehengeEventResp) GetEventid() int32 {
@@ -536,7 +457,7 @@ type StonehengeGetRoomInfoReq struct {
func (x *StonehengeGetRoomInfoReq) Reset() {
*x = StonehengeGetRoomInfoReq{}
if protoimpl.UnsafeEnabled {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[10]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -549,7 +470,7 @@ func (x *StonehengeGetRoomInfoReq) String() string {
func (*StonehengeGetRoomInfoReq) ProtoMessage() {}
func (x *StonehengeGetRoomInfoReq) ProtoReflect() protoreflect.Message {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[10]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -562,7 +483,7 @@ func (x *StonehengeGetRoomInfoReq) ProtoReflect() protoreflect.Message {
// Deprecated: Use StonehengeGetRoomInfoReq.ProtoReflect.Descriptor instead.
func (*StonehengeGetRoomInfoReq) Descriptor() ([]byte, []int) {
- return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{10}
+ return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{8}
}
type StonehengeGetRoomInfoResp struct {
@@ -576,7 +497,7 @@ type StonehengeGetRoomInfoResp struct {
func (x *StonehengeGetRoomInfoResp) Reset() {
*x = StonehengeGetRoomInfoResp{}
if protoimpl.UnsafeEnabled {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[11]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -589,7 +510,7 @@ func (x *StonehengeGetRoomInfoResp) String() string {
func (*StonehengeGetRoomInfoResp) ProtoMessage() {}
func (x *StonehengeGetRoomInfoResp) ProtoReflect() protoreflect.Message {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[11]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -602,7 +523,7 @@ func (x *StonehengeGetRoomInfoResp) ProtoReflect() protoreflect.Message {
// Deprecated: Use StonehengeGetRoomInfoResp.ProtoReflect.Descriptor instead.
func (*StonehengeGetRoomInfoResp) Descriptor() ([]byte, []int) {
- return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{11}
+ return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{9}
}
func (x *StonehengeGetRoomInfoResp) GetRoom() *RoomData {
@@ -622,7 +543,7 @@ type StonehengeFinishReq struct {
func (x *StonehengeFinishReq) Reset() {
*x = StonehengeFinishReq{}
if protoimpl.UnsafeEnabled {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[12]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -635,7 +556,7 @@ func (x *StonehengeFinishReq) String() string {
func (*StonehengeFinishReq) ProtoMessage() {}
func (x *StonehengeFinishReq) ProtoReflect() protoreflect.Message {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[12]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -648,7 +569,7 @@ func (x *StonehengeFinishReq) ProtoReflect() protoreflect.Message {
// Deprecated: Use StonehengeFinishReq.ProtoReflect.Descriptor instead.
func (*StonehengeFinishReq) Descriptor() ([]byte, []int) {
- return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{12}
+ return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{10}
}
type StonehengeFinishResp struct {
@@ -662,7 +583,7 @@ type StonehengeFinishResp struct {
func (x *StonehengeFinishResp) Reset() {
*x = StonehengeFinishResp{}
if protoimpl.UnsafeEnabled {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[13]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -675,7 +596,7 @@ func (x *StonehengeFinishResp) String() string {
func (*StonehengeFinishResp) ProtoMessage() {}
func (x *StonehengeFinishResp) ProtoReflect() protoreflect.Message {
- mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[13]
+ mi := &file_stonehenge_stonehenge_msg_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -688,7 +609,7 @@ func (x *StonehengeFinishResp) ProtoReflect() protoreflect.Message {
// Deprecated: Use StonehengeFinishResp.ProtoReflect.Descriptor instead.
func (*StonehengeFinishResp) Descriptor() ([]byte, []int) {
- return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{13}
+ return file_stonehenge_stonehenge_msg_proto_rawDescGZIP(), []int{11}
}
func (x *StonehengeFinishResp) GetData() *DBStonehenge {
@@ -713,58 +634,48 @@ var file_stonehenge_stonehenge_msg_proto_rawDesc = []byte{
0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x44, 0x42, 0x53, 0x74, 0x6f,
0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x16, 0x0a,
0x06, 0x62, 0x6f, 0x6f, 0x73, 0x69, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x06, 0x62,
- 0x6f, 0x6f, 0x73, 0x69, 0x64, 0x22, 0x2b, 0x0a, 0x17, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65,
- 0x6e, 0x67, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x71,
+ 0x6f, 0x6f, 0x73, 0x69, 0x64, 0x22, 0x47, 0x0a, 0x17, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65,
+ 0x6e, 0x67, 0x65, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x71,
0x12, 0x10, 0x0a, 0x03, 0x68, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x68,
- 0x69, 0x64, 0x22, 0x3b, 0x0a, 0x18, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65,
- 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f,
- 0x0a, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42,
- 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x22,
- 0x35, 0x0a, 0x17, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x53, 0x65, 0x6c,
- 0x65, 0x63, 0x74, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x75,
- 0x66, 0x66, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x75,
- 0x66, 0x66, 0x54, 0x79, 0x70, 0x65, 0x22, 0xa0, 0x01, 0x0a, 0x18, 0x53, 0x74, 0x6f, 0x6e, 0x65,
- 0x68, 0x65, 0x6e, 0x67, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x42, 0x75, 0x66, 0x66, 0x52,
- 0x65, 0x73, 0x70, 0x12, 0x46, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74,
- 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65,
- 0x6e, 0x67, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x42, 0x75, 0x66, 0x66, 0x52, 0x65, 0x73,
- 0x70, 0x2e, 0x41, 0x64, 0x64, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79,
- 0x52, 0x09, 0x61, 0x64, 0x64, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x1a, 0x3c, 0x0a, 0x0e, 0x41,
- 0x64, 0x64, 0x77, 0x65, 0x69, 0x67, 0x68, 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, 0x2f, 0x0a, 0x15, 0x53, 0x74, 0x6f,
- 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x47, 0x6f, 0x74, 0x6f, 0x52, 0x6f, 0x6f, 0x6d, 0x52,
- 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x05, 0x52, 0x06, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x22, 0x37, 0x0a, 0x16, 0x53, 0x74,
+ 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x75, 0x66, 0x66, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x75, 0x66, 0x66, 0x54, 0x79, 0x70, 0x65, 0x22, 0x5a,
+ 0x0a, 0x18, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x45, 0x6e, 0x74, 0x65,
+ 0x72, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x04, 0x68, 0x65,
+ 0x72, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c,
+ 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x68, 0x65, 0x72, 0x6f, 0x12, 0x1d, 0x0a, 0x04, 0x72,
+ 0x6f, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x52, 0x6f, 0x6f, 0x6d,
+ 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x22, 0x2f, 0x0a, 0x15, 0x53, 0x74,
0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x47, 0x6f, 0x74, 0x6f, 0x52, 0x6f, 0x6f, 0x6d,
- 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x72,
- 0x6f, 0x6f, 0x6d, 0x22, 0x76, 0x0a, 0x12, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67,
- 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x76, 0x65,
- 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e,
- 0x74, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06, 0x70,
- 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72,
- 0x61, 0x6d, 0x32, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x22, 0x4b, 0x0a, 0x13, 0x53,
- 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65,
- 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08,
- 0x6e, 0x65, 0x77, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
- 0x6e, 0x65, 0x77, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x1a, 0x0a, 0x18, 0x53, 0x74, 0x6f, 0x6e,
- 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66,
- 0x6f, 0x52, 0x65, 0x71, 0x22, 0x3a, 0x0a, 0x19, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e,
- 0x67, 0x65, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73,
- 0x70, 0x12, 0x1d, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x09, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x6d,
- 0x22, 0x15, 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x46, 0x69,
- 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x22, 0x39, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x6e, 0x65,
- 0x68, 0x65, 0x6e, 0x67, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12,
- 0x21, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e,
- 0x44, 0x42, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x04, 0x64, 0x61,
- 0x74, 0x61, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x33,
+ 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x06, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x22, 0x37, 0x0a, 0x16, 0x53,
+ 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x47, 0x6f, 0x74, 0x6f, 0x52, 0x6f, 0x6f,
+ 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04,
+ 0x72, 0x6f, 0x6f, 0x6d, 0x22, 0x76, 0x0a, 0x12, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e,
+ 0x67, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x76,
+ 0x65, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x76, 0x65,
+ 0x6e, 0x74, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x31, 0x12, 0x16, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x61, 0x6d, 0x32, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61,
+ 0x72, 0x61, 0x6d, 0x32, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x33, 0x22, 0x4b, 0x0a, 0x13,
+ 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52,
+ 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x64, 0x12, 0x1a, 0x0a,
+ 0x08, 0x6e, 0x65, 0x77, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
+ 0x08, 0x6e, 0x65, 0x77, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22, 0x1a, 0x0a, 0x18, 0x53, 0x74, 0x6f,
+ 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e,
+ 0x66, 0x6f, 0x52, 0x65, 0x71, 0x22, 0x3a, 0x0a, 0x19, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65,
+ 0x6e, 0x67, 0x65, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65,
+ 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x09, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x72, 0x6f, 0x6f,
+ 0x6d, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x46,
+ 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x22, 0x39, 0x0a, 0x14, 0x53, 0x74, 0x6f, 0x6e,
+ 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70,
+ 0x12, 0x21, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d,
+ 0x2e, 0x44, 0x42, 0x53, 0x74, 0x6f, 0x6e, 0x65, 0x68, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x04, 0x64,
+ 0x61, 0x74, 0x61, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x33,
}
var (
@@ -779,34 +690,31 @@ func file_stonehenge_stonehenge_msg_proto_rawDescGZIP() []byte {
return file_stonehenge_stonehenge_msg_proto_rawDescData
}
-var file_stonehenge_stonehenge_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
+var file_stonehenge_stonehenge_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
var file_stonehenge_stonehenge_msg_proto_goTypes = []interface{}{
(*StonehengeGetListReq)(nil), // 0: StonehengeGetListReq
(*StonehengeGetListResp)(nil), // 1: StonehengeGetListResp
- (*StonehengeSelectHeroReq)(nil), // 2: StonehengeSelectHeroReq
- (*StonehengeSelectHeroResp)(nil), // 3: StonehengeSelectHeroResp
- (*StonehengeSelectBuffReq)(nil), // 4: StonehengeSelectBuffReq
- (*StonehengeSelectBuffResp)(nil), // 5: StonehengeSelectBuffResp
- (*StonehengeGotoRoomReq)(nil), // 6: StonehengeGotoRoomReq
- (*StonehengeGotoRoomResp)(nil), // 7: StonehengeGotoRoomResp
- (*StonehengeEventReq)(nil), // 8: StonehengeEventReq
- (*StonehengeEventResp)(nil), // 9: StonehengeEventResp
- (*StonehengeGetRoomInfoReq)(nil), // 10: StonehengeGetRoomInfoReq
- (*StonehengeGetRoomInfoResp)(nil), // 11: StonehengeGetRoomInfoResp
- (*StonehengeFinishReq)(nil), // 12: StonehengeFinishReq
- (*StonehengeFinishResp)(nil), // 13: StonehengeFinishResp
- nil, // 14: StonehengeSelectBuffResp.AddweightEntry
- (*DBStonehenge)(nil), // 15: DBStonehenge
- (*BattleRole)(nil), // 16: BattleRole
- (*RoomData)(nil), // 17: RoomData
+ (*StonehengeEnterLevelReq)(nil), // 2: StonehengeEnterLevelReq
+ (*StonehengeEnterLevelResp)(nil), // 3: StonehengeEnterLevelResp
+ (*StonehengeGotoRoomReq)(nil), // 4: StonehengeGotoRoomReq
+ (*StonehengeGotoRoomResp)(nil), // 5: StonehengeGotoRoomResp
+ (*StonehengeEventReq)(nil), // 6: StonehengeEventReq
+ (*StonehengeEventResp)(nil), // 7: StonehengeEventResp
+ (*StonehengeGetRoomInfoReq)(nil), // 8: StonehengeGetRoomInfoReq
+ (*StonehengeGetRoomInfoResp)(nil), // 9: StonehengeGetRoomInfoResp
+ (*StonehengeFinishReq)(nil), // 10: StonehengeFinishReq
+ (*StonehengeFinishResp)(nil), // 11: StonehengeFinishResp
+ (*DBStonehenge)(nil), // 12: DBStonehenge
+ (*BattleRole)(nil), // 13: BattleRole
+ (*RoomData)(nil), // 14: RoomData
}
var file_stonehenge_stonehenge_msg_proto_depIdxs = []int32{
- 15, // 0: StonehengeGetListResp.data:type_name -> DBStonehenge
- 16, // 1: StonehengeSelectHeroResp.hero:type_name -> BattleRole
- 14, // 2: StonehengeSelectBuffResp.addweight:type_name -> StonehengeSelectBuffResp.AddweightEntry
- 17, // 3: StonehengeGotoRoomResp.room:type_name -> RoomData
- 17, // 4: StonehengeGetRoomInfoResp.room:type_name -> RoomData
- 15, // 5: StonehengeFinishResp.data:type_name -> DBStonehenge
+ 12, // 0: StonehengeGetListResp.data:type_name -> DBStonehenge
+ 13, // 1: StonehengeEnterLevelResp.hero:type_name -> BattleRole
+ 14, // 2: StonehengeEnterLevelResp.room:type_name -> RoomData
+ 14, // 3: StonehengeGotoRoomResp.room:type_name -> RoomData
+ 14, // 4: StonehengeGetRoomInfoResp.room:type_name -> RoomData
+ 12, // 5: StonehengeFinishResp.data:type_name -> DBStonehenge
6, // [6:6] is the sub-list for method output_type
6, // [6:6] is the sub-list for method input_type
6, // [6:6] is the sub-list for extension type_name
@@ -847,7 +755,7 @@ func file_stonehenge_stonehenge_msg_proto_init() {
}
}
file_stonehenge_stonehenge_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StonehengeSelectHeroReq); i {
+ switch v := v.(*StonehengeEnterLevelReq); i {
case 0:
return &v.state
case 1:
@@ -859,7 +767,7 @@ func file_stonehenge_stonehenge_msg_proto_init() {
}
}
file_stonehenge_stonehenge_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StonehengeSelectHeroResp); i {
+ switch v := v.(*StonehengeEnterLevelResp); i {
case 0:
return &v.state
case 1:
@@ -871,30 +779,6 @@ func file_stonehenge_stonehenge_msg_proto_init() {
}
}
file_stonehenge_stonehenge_msg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StonehengeSelectBuffReq); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_stonehenge_stonehenge_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StonehengeSelectBuffResp); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_stonehenge_stonehenge_msg_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StonehengeGotoRoomReq); i {
case 0:
return &v.state
@@ -906,7 +790,7 @@ func file_stonehenge_stonehenge_msg_proto_init() {
return nil
}
}
- file_stonehenge_stonehenge_msg_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ file_stonehenge_stonehenge_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StonehengeGotoRoomResp); i {
case 0:
return &v.state
@@ -918,7 +802,7 @@ func file_stonehenge_stonehenge_msg_proto_init() {
return nil
}
}
- file_stonehenge_stonehenge_msg_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ file_stonehenge_stonehenge_msg_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StonehengeEventReq); i {
case 0:
return &v.state
@@ -930,7 +814,7 @@ func file_stonehenge_stonehenge_msg_proto_init() {
return nil
}
}
- file_stonehenge_stonehenge_msg_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ file_stonehenge_stonehenge_msg_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StonehengeEventResp); i {
case 0:
return &v.state
@@ -942,7 +826,7 @@ func file_stonehenge_stonehenge_msg_proto_init() {
return nil
}
}
- file_stonehenge_stonehenge_msg_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ file_stonehenge_stonehenge_msg_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StonehengeGetRoomInfoReq); i {
case 0:
return &v.state
@@ -954,7 +838,7 @@ func file_stonehenge_stonehenge_msg_proto_init() {
return nil
}
}
- file_stonehenge_stonehenge_msg_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ file_stonehenge_stonehenge_msg_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StonehengeGetRoomInfoResp); i {
case 0:
return &v.state
@@ -966,7 +850,7 @@ func file_stonehenge_stonehenge_msg_proto_init() {
return nil
}
}
- file_stonehenge_stonehenge_msg_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ file_stonehenge_stonehenge_msg_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StonehengeFinishReq); i {
case 0:
return &v.state
@@ -978,7 +862,7 @@ func file_stonehenge_stonehenge_msg_proto_init() {
return nil
}
}
- file_stonehenge_stonehenge_msg_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ file_stonehenge_stonehenge_msg_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StonehengeFinishResp); i {
case 0:
return &v.state
@@ -997,7 +881,7 @@ func file_stonehenge_stonehenge_msg_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_stonehenge_stonehenge_msg_proto_rawDesc,
NumEnums: 0,
- NumMessages: 15,
+ NumMessages: 12,
NumExtensions: 0,
NumServices: 0,
},
diff --git a/services/worker/main.go b/services/worker/main.go
index 0a177aeb6..44c5184d1 100644
--- a/services/worker/main.go
+++ b/services/worker/main.go
@@ -44,6 +44,7 @@ import (
"go_dreamfactory/modules/shop"
"go_dreamfactory/modules/smithy"
"go_dreamfactory/modules/sociaty"
+ "go_dreamfactory/modules/stonehenge"
"go_dreamfactory/modules/sys"
"go_dreamfactory/modules/task"
"go_dreamfactory/modules/tools"
@@ -135,6 +136,7 @@ func main() {
warorder.NewModule(),
uniongve.NewModule(),
// dailytask.NewModule(),
+ stonehenge.NewModule(),
)
}
diff --git a/sys/configure/structs/Game.AskLibraryData.go b/sys/configure/structs/Game.AskLibraryData.go
index 2a125fa2e..a5218cdd3 100644
--- a/sys/configure/structs/Game.AskLibraryData.go
+++ b/sys/configure/structs/Game.AskLibraryData.go
@@ -19,6 +19,7 @@ type GameAskLibraryData struct {
PlanB string
PlanC string
PlanD string
+ Weight int32
Pic string
True string
Flase string
@@ -41,6 +42,7 @@ func (_v *GameAskLibraryData)Deserialize(_buf map[string]interface{}) (err error
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["planB"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.PlanB error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.PlanB, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["planC"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.PlanC error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.PlanC, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["planD"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.PlanD error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.PlanD, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["weight"].(float64); !_ok_ { err = errors.New("weight error"); return }; _v.Weight = int32(_tempNum_) }
{ var _ok_ bool; if _v.Pic, _ok_ = _buf["pic"].(string); !_ok_ { err = errors.New("pic error"); return } }
{ var _ok_ bool; if _v.True, _ok_ = _buf["True"].(string); !_ok_ { err = errors.New("True error"); return } }
{ var _ok_ bool; if _v.Flase, _ok_ = _buf["flase"].(string); !_ok_ { err = errors.New("flase error"); return } }
diff --git a/sys/configure/structs/Game.GuildBossTask.go b/sys/configure/structs/Game.GuildBossTask.go
new file mode 100644
index 000000000..d40d7ae99
--- /dev/null
+++ b/sys/configure/structs/Game.GuildBossTask.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 GameGuildBossTask struct {
+ _dataMap map[int32]*GameGuildBossTaskData
+ _dataList []*GameGuildBossTaskData
+}
+
+func NewGameGuildBossTask(_buf []map[string]interface{}) (*GameGuildBossTask, error) {
+ _dataList := make([]*GameGuildBossTaskData, 0, len(_buf))
+ dataMap := make(map[int32]*GameGuildBossTaskData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameGuildBossTaskData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Id] = _v
+ }
+ }
+ return &GameGuildBossTask{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameGuildBossTask) GetDataMap() map[int32]*GameGuildBossTaskData {
+ return table._dataMap
+}
+
+func (table *GameGuildBossTask) GetDataList() []*GameGuildBossTaskData {
+ return table._dataList
+}
+
+func (table *GameGuildBossTask) Get(key int32) *GameGuildBossTaskData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.GuildBossTaskData.go b/sys/configure/structs/Game.GuildBossTaskData.go
new file mode 100644
index 000000000..3110f6990
--- /dev/null
+++ b/sys/configure/structs/Game.GuildBossTaskData.go
@@ -0,0 +1,54 @@
+//------------------------------------------------------------------------------
+//
+// 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 GameGuildBossTaskData struct {
+ Id int32
+ Score int32
+ Reward []*Gameatn
+ TaskDescribe string
+}
+
+const TypeId_GameGuildBossTaskData = -1074074125
+
+func (*GameGuildBossTaskData) GetTypeId() int32 {
+ return -1074074125
+}
+
+func (_v *GameGuildBossTaskData)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["score"].(float64); !_ok_ { err = errors.New("score error"); return }; _v.Score = 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_)
+ }
+ }
+
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["task_describe"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.TaskDescribe error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.TaskDescribe, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ return
+}
+
+func DeserializeGameGuildBossTaskData(_buf map[string]interface{}) (*GameGuildBossTaskData, error) {
+ v := &GameGuildBossTaskData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.RobotDataData.go b/sys/configure/structs/Game.RobotDataData.go
new file mode 100644
index 000000000..f50d04d75
--- /dev/null
+++ b/sys/configure/structs/Game.RobotDataData.go
@@ -0,0 +1,45 @@
+//------------------------------------------------------------------------------
+//
+// 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 GameRobotDataData struct {
+ Robotid int32
+ Icon string
+ Lvshow int32
+ Name string
+ Sex int32
+ Showid string
+}
+
+const TypeId_GameRobotDataData = 1848956418
+
+func (*GameRobotDataData) GetTypeId() int32 {
+ return 1848956418
+}
+
+func (_v *GameRobotDataData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["robotid"].(float64); !_ok_ { err = errors.New("robotid error"); return }; _v.Robotid = int32(_tempNum_) }
+ { var _ok_ bool; if _v.Icon, _ok_ = _buf["icon"].(string); !_ok_ { err = errors.New("icon error"); return } }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["lvshow"].(float64); !_ok_ { err = errors.New("lvshow error"); return }; _v.Lvshow = int32(_tempNum_) }
+ { var _ok_ bool; if _v.Name, _ok_ = _buf["name"].(string); !_ok_ { err = errors.New("name error"); return } }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["sex"].(float64); !_ok_ { err = errors.New("sex error"); return }; _v.Sex = int32(_tempNum_) }
+ { var _ok_ bool; if _v.Showid, _ok_ = _buf["showid"].(string); !_ok_ { err = errors.New("showid error"); return } }
+ return
+}
+
+func DeserializeGameRobotDataData(_buf map[string]interface{}) (*GameRobotDataData, error) {
+ v := &GameRobotDataData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.StroneBuff.go b/sys/configure/structs/Game.StroneBuff.go
new file mode 100644
index 000000000..01af4bb77
--- /dev/null
+++ b/sys/configure/structs/Game.StroneBuff.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 GameStroneBuff struct {
+ _dataMap map[int32]*GameStroneBuffData
+ _dataList []*GameStroneBuffData
+}
+
+func NewGameStroneBuff(_buf []map[string]interface{}) (*GameStroneBuff, error) {
+ _dataList := make([]*GameStroneBuffData, 0, len(_buf))
+ dataMap := make(map[int32]*GameStroneBuffData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameStroneBuffData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.BuffId] = _v
+ }
+ }
+ return &GameStroneBuff{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameStroneBuff) GetDataMap() map[int32]*GameStroneBuffData {
+ return table._dataMap
+}
+
+func (table *GameStroneBuff) GetDataList() []*GameStroneBuffData {
+ return table._dataList
+}
+
+func (table *GameStroneBuff) Get(key int32) *GameStroneBuffData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.StroneBuffData.go b/sys/configure/structs/Game.StroneBuffData.go
new file mode 100644
index 000000000..b4c243478
--- /dev/null
+++ b/sys/configure/structs/Game.StroneBuffData.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 GameStroneBuffData struct {
+ BuffId int32
+ BuffGroupId int32
+ Type int32
+ BuffLevel int32
+ Quality int32
+ BuffIcon string
+ BuffName string
+ BuffDescription string
+ BuffStory string
+ BuffUpgradeCost *Gameatn
+ BuffSell *Gameatn
+}
+
+const TypeId_GameStroneBuffData = 1812104654
+
+func (*GameStroneBuffData) GetTypeId() int32 {
+ return 1812104654
+}
+
+func (_v *GameStroneBuffData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["BuffId"].(float64); !_ok_ { err = errors.New("BuffId error"); return }; _v.BuffId = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["BuffGroupId"].(float64); !_ok_ { err = errors.New("BuffGroupId error"); return }; _v.BuffGroupId = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Type"].(float64); !_ok_ { err = errors.New("Type error"); return }; _v.Type = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["BuffLevel"].(float64); !_ok_ { err = errors.New("BuffLevel error"); return }; _v.BuffLevel = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Quality"].(float64); !_ok_ { err = errors.New("Quality error"); return }; _v.Quality = int32(_tempNum_) }
+ { var _ok_ bool; if _v.BuffIcon, _ok_ = _buf["BuffIcon"].(string); !_ok_ { err = errors.New("BuffIcon error"); return } }
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["buffName"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.BuffName error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.BuffName, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["BuffDescription"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.BuffDescription error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.BuffDescription, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["BuffStory"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.BuffStory error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.BuffStory, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["BuffUpgradeCost"].(map[string]interface{}); !_ok_ { err = errors.New("BuffUpgradeCost error"); return }; if _v.BuffUpgradeCost, err = DeserializeGameatn(_x_); err != nil { return } }
+ { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["BuffSell"].(map[string]interface{}); !_ok_ { err = errors.New("BuffSell error"); return }; if _v.BuffSell, err = DeserializeGameatn(_x_); err != nil { return } }
+ return
+}
+
+func DeserializeGameStroneBuffData(_buf map[string]interface{}) (*GameStroneBuffData, error) {
+ v := &GameStroneBuffData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.StroneRoom.go b/sys/configure/structs/Game.StroneRoom.go
new file mode 100644
index 000000000..11d383eb8
--- /dev/null
+++ b/sys/configure/structs/Game.StroneRoom.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 GameStroneRoom struct {
+ _dataMap map[int32]*GameStroneRoomData
+ _dataList []*GameStroneRoomData
+}
+
+func NewGameStroneRoom(_buf []map[string]interface{}) (*GameStroneRoom, error) {
+ _dataList := make([]*GameStroneRoomData, 0, len(_buf))
+ dataMap := make(map[int32]*GameStroneRoomData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameStroneRoomData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.BuffId] = _v
+ }
+ }
+ return &GameStroneRoom{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameStroneRoom) GetDataMap() map[int32]*GameStroneRoomData {
+ return table._dataMap
+}
+
+func (table *GameStroneRoom) GetDataList() []*GameStroneRoomData {
+ return table._dataList
+}
+
+func (table *GameStroneRoom) Get(key int32) *GameStroneRoomData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.StroneRoomData.go b/sys/configure/structs/Game.StroneRoomData.go
new file mode 100644
index 000000000..c071c49e0
--- /dev/null
+++ b/sys/configure/structs/Game.StroneRoomData.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 GameStroneRoomData struct {
+ BuffId int32
+ BuffGroupId int32
+ Type int32
+ BuffLevel int32
+ Quality int32
+ BuffIcon string
+ BuffName string
+ BuffDescription string
+ BuffStory string
+ BuffUpgradeCost *Gameatn
+ BuffSell *Gameatn
+}
+
+const TypeId_GameStroneRoomData = -1133628842
+
+func (*GameStroneRoomData) GetTypeId() int32 {
+ return -1133628842
+}
+
+func (_v *GameStroneRoomData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["BuffId"].(float64); !_ok_ { err = errors.New("BuffId error"); return }; _v.BuffId = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["BuffGroupId"].(float64); !_ok_ { err = errors.New("BuffGroupId error"); return }; _v.BuffGroupId = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Type"].(float64); !_ok_ { err = errors.New("Type error"); return }; _v.Type = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["BuffLevel"].(float64); !_ok_ { err = errors.New("BuffLevel error"); return }; _v.BuffLevel = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Quality"].(float64); !_ok_ { err = errors.New("Quality error"); return }; _v.Quality = int32(_tempNum_) }
+ { var _ok_ bool; if _v.BuffIcon, _ok_ = _buf["BuffIcon"].(string); !_ok_ { err = errors.New("BuffIcon error"); return } }
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["buffName"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.BuffName error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.BuffName, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["BuffDescription"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.BuffDescription error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.BuffDescription, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["BuffStory"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.BuffStory error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.BuffStory, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["BuffUpgradeCost"].(map[string]interface{}); !_ok_ { err = errors.New("BuffUpgradeCost error"); return }; if _v.BuffUpgradeCost, err = DeserializeGameatn(_x_); err != nil { return } }
+ { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["BuffSell"].(map[string]interface{}); !_ok_ { err = errors.New("BuffSell error"); return }; if _v.BuffSell, err = DeserializeGameatn(_x_); err != nil { return } }
+ return
+}
+
+func DeserializeGameStroneRoomData(_buf map[string]interface{}) (*GameStroneRoomData, error) {
+ v := &GameStroneRoomData{}
+ 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 b6959eead..50385e436 100644
--- a/sys/configure/structs/Tables.go
+++ b/sys/configure/structs/Tables.go
@@ -203,6 +203,8 @@ type Tables struct {
Roomlottery *GameRoomlottery
Bufflottery *GameBufflottery
Eventlottery *GameEventlottery
+ StroneBuff *GameStroneBuff
+ StroneRoom *GameStroneRoom
}
func NewTables(loader JsonLoader) (*Tables, error) {
@@ -1362,5 +1364,17 @@ func NewTables(loader JsonLoader) (*Tables, error) {
if tables.Eventlottery, err = NewGameEventlottery(buf) ; err != nil {
return nil, err
}
+ if buf, err = loader("game_stronebuff") ; err != nil {
+ return nil, err
+ }
+ if tables.StroneBuff, err = NewGameStroneBuff(buf) ; err != nil {
+ return nil, err
+ }
+ if buf, err = loader("game_stroneroom") ; err != nil {
+ return nil, err
+ }
+ if tables.StroneRoom, err = NewGameStroneRoom(buf) ; err != nil {
+ return nil, err
+ }
return tables, nil
}