diff --git a/bin/json/game_celebration.json b/bin/json/game_celebration.json
index 720d72f02..a3c298bf2 100644
--- a/bin/json/game_celebration.json
+++ b/bin/json/game_celebration.json
@@ -8,7 +8,11 @@
"num": [
6
],
- "days": 2
+ "days": 2,
+ "tipstxt": {
+ "key": "celebration_celebration_tipstxt_1",
+ "text": "每日前{1}次挑战狩猎任意boss,可以获得双倍奖励"
+ }
},
{
"ID": 2,
@@ -19,7 +23,11 @@
"num": [
6
],
- "days": 2
+ "days": 2,
+ "tipstxt": {
+ "key": "celebration_celebration_tipstxt_2",
+ "text": "每日前{1}次挑战经验副本,可以获得双倍奖励"
+ }
},
{
"ID": 3,
@@ -34,6 +42,10 @@
2,
2
],
- "days": 2
+ "days": 2,
+ "tipstxt": {
+ "key": "celebration_celebration_tipstxt_3",
+ "text": "每日前{0}次挑战坍台,可以获得双倍奖励,每名boss每日分别只能挑战{1}次"
+ }
}
]
\ No newline at end of file
diff --git a/bin/json/game_gamesummary.json b/bin/json/game_gamesummary.json
index 397581663..1f792848f 100644
--- a/bin/json/game_gamesummary.json
+++ b/bin/json/game_gamesummary.json
@@ -385,7 +385,7 @@
"key": "gamesummary_node_name_11",
"text": "炼金塔"
},
- "tabId": 6,
+ "tabId": 7,
"mapPos": {
"x": 5040,
"y": 1202
@@ -423,7 +423,7 @@
"key": "gamesummary_node_name_12",
"text": "无极塔"
},
- "tabId": 6,
+ "tabId": 8,
"mapPos": {
"x": 5789,
"y": 1500
@@ -456,7 +456,7 @@
"key": "gamesummary_node_name_13",
"text": "六合塔"
},
- "tabId": 6,
+ "tabId": 9,
"mapPos": {
"x": 6008,
"y": 1805
diff --git a/bin/json/game_gamesummarytab.json b/bin/json/game_gamesummarytab.json
index b107be381..fc7b1b24d 100644
--- a/bin/json/game_gamesummarytab.json
+++ b/bin/json/game_gamesummarytab.json
@@ -63,7 +63,7 @@
},
"scale": 0.32,
"usetext": {
- "key": "gamesummary_fathernode_usetext_4",
+ "key": "gam+H7:N8esummary_fathernode_usetext_4",
"text": "现在是狩猎的时间!胜利获得的材料可以给守护者回响强化!"
}
},
@@ -101,6 +101,57 @@
"text": "功夫熊猫世界的人真是喜欢塔啊,但挑战胜利的奖励也很大方!"
}
},
+ {
+ "tabId": 7,
+ "layer": 1,
+ "name": {
+ "key": "gamesummary_fathernode_name_7",
+ "text": "炼金塔"
+ },
+ "mapPos": {
+ "x": -3065,
+ "y": 754
+ },
+ "scale": 0.65,
+ "usetext": {
+ "key": "gamesummary_fathernode_usetext_7",
+ "text": "点石成金的磨练地!挑战胜利可以获得教习的指导!"
+ }
+ },
+ {
+ "tabId": 8,
+ "layer": 1,
+ "name": {
+ "key": "gamesummary_fathernode_name_8",
+ "text": "无极塔"
+ },
+ "mapPos": {
+ "x": -3065,
+ "y": 754
+ },
+ "scale": 0.65,
+ "usetext": {
+ "key": "gamesummary_fathernode_usetext_8",
+ "text": ""
+ }
+ },
+ {
+ "tabId": 9,
+ "layer": 1,
+ "name": {
+ "key": "gamesummary_fathernode_name_9",
+ "text": "六合塔"
+ },
+ "mapPos": {
+ "x": -3065,
+ "y": 754
+ },
+ "scale": 0.65,
+ "usetext": {
+ "key": "gamesummary_fathernode_usetext_9",
+ "text": ""
+ }
+ },
{
"tabId": 10,
"layer": 0,
@@ -114,7 +165,7 @@
},
"scale": 0.8,
"usetext": {
- "key": "gamesummary_fathernode_usetext_7",
+ "key": "gamesummary_fathernode_usetext_10",
"text": "有人的地方就存在着纷争,·去战胜他人获得竞技币,在竞技商店兑换奖励吧!"
}
},
@@ -131,7 +182,7 @@
},
"scale": 0.8,
"usetext": {
- "key": "gamesummary_fathernode_usetext_8",
+ "key": "gamesummary_fathernode_usetext_11",
"text": "原始人的世界这么凶险吗?你要去那地方磨练自己?我都不知道胜利有什么奖励···"
}
},
@@ -148,7 +199,7 @@
},
"scale": 0.8,
"usetext": {
- "key": "gamesummary_fathernode_usetext_9",
+ "key": "gamesummary_fathernode_usetext_12",
"text": "巨怪商人们的脚步永不停歇,听说在他们那赚了足够多的钱财后可以有神秘大奖!"
}
}
diff --git a/bin/json/game_hero.json b/bin/json/game_hero.json
index 40de4c78b..19848cdcb 100644
--- a/bin/json/game_hero.json
+++ b/bin/json/game_hero.json
@@ -10079,7 +10079,7 @@
"ip": 1,
"sd": 1,
"handbook": -1,
- "prefab": "54005",
+ "prefab": "54014",
"rotation": "0|0|0",
"revolve": 0,
"icon": "54005",
@@ -10153,7 +10153,7 @@
"ip": 1,
"sd": 1,
"handbook": -1,
- "prefab": "54005",
+ "prefab": "54014",
"rotation": "0|0|0",
"revolve": 0,
"icon": "54005",
diff --git a/bin/json/game_mainstage.json b/bin/json/game_mainstage.json
index 91311d3ed..842a20228 100644
--- a/bin/json/game_mainstage.json
+++ b/bin/json/game_mainstage.json
@@ -6823,6 +6823,64 @@
"star_value": [],
"challengeward": 0
},
+ {
+ "id": 1100200,
+ "chapterid": 11002,
+ "group_id": 100200,
+ "previous_group_id": [
+ 100120
+ ],
+ "previoustage": 0,
+ "Episodetype": 0,
+ "openlevel": 1,
+ "EditorStage": 0,
+ "venturemodel": "",
+ "venturetype": 0,
+ "ventureavatar": [],
+ "herocolor": 0,
+ "heroimg": "",
+ "bubbletext": {
+ "key": "",
+ "text": ""
+ },
+ "animation": [],
+ "hide": 0,
+ "destroy": 1,
+ "progress": 0,
+ "frontstoryid": 0,
+ "afterstoryid": 0,
+ "maingroupName": {
+ "key": "",
+ "text": ""
+ },
+ "mainlineName": {
+ "key": "",
+ "text": ""
+ },
+ "title": {
+ "key": "",
+ "text": ""
+ },
+ "desc": {
+ "key": "",
+ "text": ""
+ },
+ "exp": 0,
+ "hero_exp": 0,
+ "ps_consume": [],
+ "ps_mg": [],
+ "firstaward": [],
+ "lotteryward": 0,
+ "commonaward": [],
+ "BattleReadyID": 0,
+ "FormatList": [],
+ "helphero": [],
+ "banhero": [],
+ "star": [],
+ "star_type": [],
+ "star_value": [],
+ "challengeward": 0
+ },
{
"id": 1100201,
"chapterid": 11002,
@@ -6830,7 +6888,7 @@
"previous_group_id": [
100120
],
- "previoustage": 1100201,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -6845,7 +6903,7 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
+ "destroy": 1,
"progress": 1,
"frontstoryid": 20105,
"afterstoryid": 20107,
@@ -6933,8 +6991,10 @@
"id": 1100202,
"chapterid": 11002,
"group_id": 100202,
- "previous_group_id": [],
- "previoustage": 1100202,
+ "previous_group_id": [
+ 100201
+ ],
+ "previoustage": 0,
"Episodetype": 4,
"openlevel": 1,
"EditorStage": 0,
@@ -6949,8 +7009,8 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
- "progress": 0,
+ "destroy": 1,
+ "progress": 1,
"frontstoryid": 20109,
"afterstoryid": 20110,
"maingroupName": {
@@ -7037,8 +7097,10 @@
"id": 1100203,
"chapterid": 11002,
"group_id": 100202,
- "previous_group_id": [],
- "previoustage": 1100203,
+ "previous_group_id": [
+ 100201
+ ],
+ "previoustage": 0,
"Episodetype": 4,
"openlevel": 1,
"EditorStage": 0,
@@ -7053,8 +7115,8 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
- "progress": 0,
+ "destroy": 1,
+ "progress": 1,
"frontstoryid": 20112,
"afterstoryid": 20113,
"maingroupName": {
@@ -7141,8 +7203,10 @@
"id": 1100204,
"chapterid": 11002,
"group_id": 100203,
- "previous_group_id": [],
- "previoustage": 1100204,
+ "previous_group_id": [
+ 100202
+ ],
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -7157,8 +7221,8 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
- "progress": 0,
+ "destroy": 1,
+ "progress": 1,
"frontstoryid": 20115,
"afterstoryid": 20117,
"maingroupName": {
@@ -7245,8 +7309,10 @@
"id": 1100205,
"chapterid": 11002,
"group_id": 100204,
- "previous_group_id": [],
- "previoustage": 1100205,
+ "previous_group_id": [
+ 100203
+ ],
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -7261,8 +7327,8 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
- "progress": 0,
+ "destroy": 1,
+ "progress": 1,
"frontstoryid": 20118,
"afterstoryid": 0,
"maingroupName": {
@@ -7349,9 +7415,11 @@
"id": 1100206,
"chapterid": 11002,
"group_id": 100205,
- "previous_group_id": [],
- "previoustage": 1100206,
- "Episodetype": 5,
+ "previous_group_id": [
+ 100204
+ ],
+ "previoustage": 0,
+ "Episodetype": 3,
"openlevel": 1,
"EditorStage": 0,
"venturemodel": "",
@@ -7365,8 +7433,8 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
- "progress": 0,
+ "destroy": 1,
+ "progress": 1,
"frontstoryid": 20119,
"afterstoryid": 0,
"maingroupName": {
@@ -7453,8 +7521,10 @@
"id": 1100207,
"chapterid": 11002,
"group_id": 100206,
- "previous_group_id": [],
- "previoustage": 1100207,
+ "previous_group_id": [
+ 100205
+ ],
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -7469,8 +7539,8 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
- "progress": 0,
+ "destroy": 1,
+ "progress": 1,
"frontstoryid": 20122,
"afterstoryid": 20125,
"maingroupName": {
@@ -7555,12 +7625,12 @@
},
{
"id": 1100208,
- "chapterid": 11003,
+ "chapterid": 11002,
"group_id": 100207,
"previous_group_id": [
100206
],
- "previoustage": 1100208,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -7575,7 +7645,7 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
+ "destroy": 1,
"progress": 1,
"frontstoryid": 20200,
"afterstoryid": 20201,
@@ -7661,10 +7731,12 @@
},
{
"id": 1100209,
- "chapterid": 11003,
+ "chapterid": 11002,
"group_id": 100208,
- "previous_group_id": [],
- "previoustage": 1100301,
+ "previous_group_id": [
+ 100207
+ ],
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -7679,8 +7751,8 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
- "progress": 0,
+ "destroy": 1,
+ "progress": 1,
"frontstoryid": 20204,
"afterstoryid": 20206,
"maingroupName": {
@@ -7765,10 +7837,12 @@
},
{
"id": 1100210,
- "chapterid": 11003,
+ "chapterid": 11002,
"group_id": 100209,
- "previous_group_id": [],
- "previoustage": 1100302,
+ "previous_group_id": [
+ 100208
+ ],
+ "previoustage": 0,
"Episodetype": 6,
"openlevel": 1,
"EditorStage": 0,
@@ -7783,8 +7857,8 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
- "progress": 0,
+ "destroy": 1,
+ "progress": 1,
"frontstoryid": 20207,
"afterstoryid": 20209,
"maingroupName": {
@@ -7869,10 +7943,12 @@
},
{
"id": 1100211,
- "chapterid": 11003,
+ "chapterid": 11002,
"group_id": 100210,
- "previous_group_id": [],
- "previoustage": 1100303,
+ "previous_group_id": [
+ 100209
+ ],
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -7887,8 +7963,8 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
- "progress": 0,
+ "destroy": 1,
+ "progress": 1,
"frontstoryid": 20210,
"afterstoryid": 20211,
"maingroupName": {
@@ -7973,10 +8049,12 @@
},
{
"id": 1100212,
- "chapterid": 11003,
+ "chapterid": 11002,
"group_id": 100211,
- "previous_group_id": [],
- "previoustage": 1100304,
+ "previous_group_id": [
+ 100210
+ ],
+ "previoustage": 0,
"Episodetype": 7,
"openlevel": 1,
"EditorStage": 0,
@@ -7991,8 +8069,8 @@
},
"animation": [],
"hide": 0,
- "destroy": 0,
- "progress": 0,
+ "destroy": 1,
+ "progress": 1,
"frontstoryid": 20222,
"afterstoryid": 0,
"maingroupName": {
@@ -8078,9 +8156,11 @@
{
"id": 1100213,
"chapterid": 11003,
- "group_id": 0,
- "previous_group_id": [],
- "previoustage": 1100305,
+ "group_id": 100301,
+ "previous_group_id": [
+ 100211
+ ],
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -8182,9 +8262,9 @@
{
"id": 1100214,
"chapterid": 11003,
- "group_id": 0,
+ "group_id": 100302,
"previous_group_id": [],
- "previoustage": 1100306,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -8286,9 +8366,9 @@
{
"id": 1100215,
"chapterid": 11003,
- "group_id": 0,
+ "group_id": 100303,
"previous_group_id": [],
- "previoustage": 1100307,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -8390,9 +8470,9 @@
{
"id": 1100216,
"chapterid": 11004,
- "group_id": 0,
+ "group_id": 100304,
"previous_group_id": [],
- "previoustage": 1100308,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -8494,9 +8574,9 @@
{
"id": 1100217,
"chapterid": 11004,
- "group_id": 0,
+ "group_id": 100305,
"previous_group_id": [],
- "previoustage": 1100401,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -8598,9 +8678,9 @@
{
"id": 1100218,
"chapterid": 11004,
- "group_id": 0,
+ "group_id": 100306,
"previous_group_id": [],
- "previoustage": 1100402,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -8702,9 +8782,9 @@
{
"id": 1100219,
"chapterid": 11004,
- "group_id": 0,
+ "group_id": 100307,
"previous_group_id": [],
- "previoustage": 1100403,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -8808,7 +8888,7 @@
"chapterid": 11004,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100404,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -8912,7 +8992,7 @@
"chapterid": 11004,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100405,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -9016,7 +9096,7 @@
"chapterid": 11004,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100406,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -9120,7 +9200,7 @@
"chapterid": 11004,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100407,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -9224,7 +9304,7 @@
"chapterid": 11005,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100408,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -9328,7 +9408,7 @@
"chapterid": 11005,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100501,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -9432,7 +9512,7 @@
"chapterid": 11005,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100502,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -9536,7 +9616,7 @@
"chapterid": 11005,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100503,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -9640,7 +9720,7 @@
"chapterid": 11005,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100504,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -9744,7 +9824,7 @@
"chapterid": 11005,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100505,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -9848,7 +9928,7 @@
"chapterid": 11005,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100506,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -9952,7 +10032,7 @@
"chapterid": 11005,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100507,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -10056,7 +10136,7 @@
"chapterid": 11006,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100508,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -10160,7 +10240,7 @@
"chapterid": 11006,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100601,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -10264,7 +10344,7 @@
"chapterid": 11006,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100602,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -10368,7 +10448,7 @@
"chapterid": 11006,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100603,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -10472,7 +10552,7 @@
"chapterid": 11006,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100604,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -10576,7 +10656,7 @@
"chapterid": 11006,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100605,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -10680,7 +10760,7 @@
"chapterid": 11006,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100606,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -10784,7 +10864,7 @@
"chapterid": 11006,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100607,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -10888,7 +10968,7 @@
"chapterid": 11007,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100608,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -10992,7 +11072,7 @@
"chapterid": 11007,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100701,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -11096,7 +11176,7 @@
"chapterid": 11007,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100702,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -11200,7 +11280,7 @@
"chapterid": 11007,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100703,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -11304,7 +11384,7 @@
"chapterid": 11007,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100704,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -11408,7 +11488,7 @@
"chapterid": 11007,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100705,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -11512,7 +11592,7 @@
"chapterid": 11007,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100706,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -11616,7 +11696,7 @@
"chapterid": 11007,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100707,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -11720,7 +11800,7 @@
"chapterid": 11008,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100708,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -11824,7 +11904,7 @@
"chapterid": 11008,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100801,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -11928,7 +12008,7 @@
"chapterid": 11008,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100802,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -12032,7 +12112,7 @@
"chapterid": 11008,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100803,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -12136,7 +12216,7 @@
"chapterid": 11008,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100804,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -12240,7 +12320,7 @@
"chapterid": 11008,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100805,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -12344,7 +12424,7 @@
"chapterid": 11008,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100806,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -12448,7 +12528,7 @@
"chapterid": 11008,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100807,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -12552,7 +12632,7 @@
"chapterid": 11009,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100808,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -12656,7 +12736,7 @@
"chapterid": 11009,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100901,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -12760,7 +12840,7 @@
"chapterid": 11009,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100902,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -12864,7 +12944,7 @@
"chapterid": 11009,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100903,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -12968,7 +13048,7 @@
"chapterid": 11009,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100904,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -13072,7 +13152,7 @@
"chapterid": 11009,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100905,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -13176,7 +13256,7 @@
"chapterid": 11009,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100906,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -13280,7 +13360,7 @@
"chapterid": 11009,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100907,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -13384,7 +13464,7 @@
"chapterid": 11010,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1100908,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -13488,7 +13568,7 @@
"chapterid": 11010,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101001,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -13592,7 +13672,7 @@
"chapterid": 11010,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101002,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -13696,7 +13776,7 @@
"chapterid": 11010,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101003,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -13800,7 +13880,7 @@
"chapterid": 11010,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101004,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -13904,7 +13984,7 @@
"chapterid": 11010,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101005,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -14008,7 +14088,7 @@
"chapterid": 11010,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101006,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -14112,7 +14192,7 @@
"chapterid": 11010,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101007,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -14216,7 +14296,7 @@
"chapterid": 11011,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101008,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -14320,7 +14400,7 @@
"chapterid": 11011,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101101,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -14424,7 +14504,7 @@
"chapterid": 11011,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101102,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -14528,7 +14608,7 @@
"chapterid": 11011,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101103,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -14632,7 +14712,7 @@
"chapterid": 11011,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101104,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -14736,7 +14816,7 @@
"chapterid": 11011,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101105,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -14840,7 +14920,7 @@
"chapterid": 11011,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101106,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -14944,7 +15024,7 @@
"chapterid": 11011,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101107,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -15048,7 +15128,7 @@
"chapterid": 11012,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101108,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -15152,7 +15232,7 @@
"chapterid": 11012,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101201,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -15256,7 +15336,7 @@
"chapterid": 11012,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101202,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -15360,7 +15440,7 @@
"chapterid": 11012,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101203,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -15464,7 +15544,7 @@
"chapterid": 11012,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101204,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -15568,7 +15648,7 @@
"chapterid": 11012,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101205,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -15672,7 +15752,7 @@
"chapterid": 11012,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101206,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
@@ -15776,7 +15856,7 @@
"chapterid": 11012,
"group_id": 0,
"previous_group_id": [],
- "previoustage": 1101207,
+ "previoustage": 0,
"Episodetype": 1,
"openlevel": 1,
"EditorStage": 0,
diff --git a/bin/json/game_model.json b/bin/json/game_model.json
index 0999a94e5..fed6ba2eb 100644
--- a/bin/json/game_model.json
+++ b/bin/json/game_model.json
@@ -6613,5 +6613,250 @@
"y": 1,
"z": 1
}
+ },
+ {
+ "id": "54011",
+ "preson": "54011",
+ "presonshow": "54011_exhibition",
+ "presonstory": "54011",
+ "presondraw": "",
+ "height": 1,
+ "weight": 1,
+ "ico": "tx_js_54011",
+ "fight": "tx_js_54011",
+ "img": "sbkp_js_54011",
+ "heroimg": "hbkp_js_54011",
+ "portrait": "portrait_54011",
+ "bust": "bust_54011",
+ "postxyz": [
+ 0,
+ 0,
+ 0
+ ],
+ "rotation": {
+ "x": 0,
+ "y": 180,
+ "z": 0
+ },
+ "boxPos": {
+ "x": 0,
+ "y": 0.5,
+ "z": 0
+ },
+ "boxSize": {
+ "x": 1,
+ "y": 1,
+ "z": 1
+ }
+ },
+ {
+ "id": "54012",
+ "preson": "54012",
+ "presonshow": "54012_exhibition",
+ "presonstory": "54012",
+ "presondraw": "",
+ "height": 1,
+ "weight": 1,
+ "ico": "tx_js_54012",
+ "fight": "tx_js_54012",
+ "img": "sbkp_js_54012",
+ "heroimg": "hbkp_js_54012",
+ "portrait": "portrait_54012",
+ "bust": "bust_54012",
+ "postxyz": [
+ 0,
+ 0,
+ 0
+ ],
+ "rotation": {
+ "x": 0,
+ "y": 180,
+ "z": 0
+ },
+ "boxPos": {
+ "x": 0,
+ "y": 0.5,
+ "z": 0
+ },
+ "boxSize": {
+ "x": 1,
+ "y": 1,
+ "z": 1
+ }
+ },
+ {
+ "id": "54013",
+ "preson": "54013",
+ "presonshow": "54013_exhibition",
+ "presonstory": "54013",
+ "presondraw": "",
+ "height": 1,
+ "weight": 1,
+ "ico": "tx_js_54013",
+ "fight": "tx_js_54013",
+ "img": "sbkp_js_54013",
+ "heroimg": "hbkp_js_54013",
+ "portrait": "portrait_54013",
+ "bust": "bust_54013",
+ "postxyz": [
+ 0,
+ 0,
+ 0
+ ],
+ "rotation": {
+ "x": 0,
+ "y": 180,
+ "z": 0
+ },
+ "boxPos": {
+ "x": 0,
+ "y": 0.5,
+ "z": 0
+ },
+ "boxSize": {
+ "x": 1,
+ "y": 1,
+ "z": 1
+ }
+ },
+ {
+ "id": "54014",
+ "preson": "54014",
+ "presonshow": "54014_exhibition",
+ "presonstory": "54014",
+ "presondraw": "",
+ "height": 1,
+ "weight": 1,
+ "ico": "tx_js_54014",
+ "fight": "tx_js_54014",
+ "img": "sbkp_js_54014",
+ "heroimg": "hbkp_js_54014",
+ "portrait": "portrait_54014",
+ "bust": "bust_54014",
+ "postxyz": [
+ 0,
+ 0,
+ 0
+ ],
+ "rotation": {
+ "x": 0,
+ "y": 180,
+ "z": 0
+ },
+ "boxPos": {
+ "x": 0,
+ "y": 0.5,
+ "z": 0
+ },
+ "boxSize": {
+ "x": 1,
+ "y": 1,
+ "z": 1
+ }
+ },
+ {
+ "id": "54015",
+ "preson": "54015",
+ "presonshow": "54015_exhibition",
+ "presonstory": "54015",
+ "presondraw": "",
+ "height": 1,
+ "weight": 1,
+ "ico": "tx_js_54015",
+ "fight": "tx_js_54015",
+ "img": "sbkp_js_54015",
+ "heroimg": "hbkp_js_54015",
+ "portrait": "portrait_54015",
+ "bust": "bust_54015",
+ "postxyz": [
+ 0,
+ 0,
+ 0
+ ],
+ "rotation": {
+ "x": 0,
+ "y": 180,
+ "z": 0
+ },
+ "boxPos": {
+ "x": 0,
+ "y": 0.5,
+ "z": 0
+ },
+ "boxSize": {
+ "x": 1,
+ "y": 1,
+ "z": 1
+ }
+ },
+ {
+ "id": "54016",
+ "preson": "54016",
+ "presonshow": "54016_exhibition",
+ "presonstory": "54016",
+ "presondraw": "",
+ "height": 1,
+ "weight": 1,
+ "ico": "tx_js_54016",
+ "fight": "tx_js_54016",
+ "img": "sbkp_js_54016",
+ "heroimg": "hbkp_js_54016",
+ "portrait": "portrait_54016",
+ "bust": "bust_54016",
+ "postxyz": [
+ 0,
+ 0,
+ 0
+ ],
+ "rotation": {
+ "x": 0,
+ "y": 180,
+ "z": 0
+ },
+ "boxPos": {
+ "x": 0,
+ "y": 0.5,
+ "z": 0
+ },
+ "boxSize": {
+ "x": 1,
+ "y": 1,
+ "z": 1
+ }
+ },
+ {
+ "id": "54017",
+ "preson": "54017",
+ "presonshow": "54017_exhibition",
+ "presonstory": "54017",
+ "presondraw": "",
+ "height": 1,
+ "weight": 1,
+ "ico": "tx_js_54017",
+ "fight": "tx_js_54017",
+ "img": "sbkp_js_54017",
+ "heroimg": "hbkp_js_54017",
+ "portrait": "portrait_54017",
+ "bust": "bust_54017",
+ "postxyz": [
+ 0,
+ 0,
+ 0
+ ],
+ "rotation": {
+ "x": 0,
+ "y": 180,
+ "z": 0
+ },
+ "boxPos": {
+ "x": 0,
+ "y": 0.5,
+ "z": 0
+ },
+ "boxSize": {
+ "x": 1,
+ "y": 1,
+ "z": 1
+ }
}
]
\ No newline at end of file
diff --git a/bin/json/game_pricegroup.json b/bin/json/game_pricegroup.json
index 28bd86069..8b261e8c6 100644
--- a/bin/json/game_pricegroup.json
+++ b/bin/json/game_pricegroup.json
@@ -146,7 +146,20 @@
"id": 12,
"pricegroupId": 1002,
"purchasemin": 10,
- "purchasemax": 12,
+ "purchasemax": 11,
+ "cost": [
+ {
+ "a": "item",
+ "t": "23000001",
+ "n": 200
+ }
+ ]
+ },
+ {
+ "id": 13,
+ "pricegroupId": 1002,
+ "purchasemin": 12,
+ "purchasemax": -1,
"cost": [
{
"a": "item",
diff --git a/bin/json/game_pushgift.json b/bin/json/game_pushgift.json
new file mode 100644
index 000000000..5c6cab357
--- /dev/null
+++ b/bin/json/game_pushgift.json
@@ -0,0 +1,262 @@
+[
+ {
+ "id": 1,
+ "name": {
+ "key": "guild_guild_boss_score_name_1",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_1",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1001,
+ "time": 240,
+ "rebate": 1500,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 2,
+ "name": {
+ "key": "guild_guild_boss_score_name_2",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_2",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1002,
+ "time": 240,
+ "rebate": 1000,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 3,
+ "name": {
+ "key": "guild_guild_boss_score_name_3",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_3",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1003,
+ "time": 240,
+ "rebate": 1000,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 4,
+ "name": {
+ "key": "guild_guild_boss_score_name_4",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_4",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1004,
+ "time": 240,
+ "rebate": 900,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 5,
+ "name": {
+ "key": "guild_guild_boss_score_name_5",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_5",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1005,
+ "time": 240,
+ "rebate": 900,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 6,
+ "name": {
+ "key": "guild_guild_boss_score_name_6",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_6",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1006,
+ "time": 240,
+ "rebate": 600,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 7,
+ "name": {
+ "key": "guild_guild_boss_score_name_7",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_7",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1007,
+ "time": 240,
+ "rebate": 600,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 8,
+ "name": {
+ "key": "guild_guild_boss_score_name_8",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_8",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1008,
+ "time": 240,
+ "rebate": 1500,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 9,
+ "name": {
+ "key": "guild_guild_boss_score_name_9",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_9",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1009,
+ "time": 240,
+ "rebate": 1000,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 10,
+ "name": {
+ "key": "guild_guild_boss_score_name_11",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_10",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1010,
+ "time": 240,
+ "rebate": 1000,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 11,
+ "name": {
+ "key": "guild_guild_boss_score_name_12",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_11",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1011,
+ "time": 240,
+ "rebate": 900,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 12,
+ "name": {
+ "key": "guild_guild_boss_score_name_14",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_12",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1012,
+ "time": 240,
+ "rebate": 900,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ },
+ {
+ "id": 13,
+ "name": {
+ "key": "guild_guild_boss_score_name_15",
+ "text": "升星礼包"
+ },
+ "title": {
+ "key": "push_push_13",
+ "text": "月末狂欢,冰点特价"
+ },
+ "resource": "",
+ "integral": [],
+ "condition": 0,
+ "lbid": 1013,
+ "time": 240,
+ "rebate": 600,
+ "isdayrepeat": 0,
+ "force": 0,
+ "recharge": "gold328"
+ }
+]
\ No newline at end of file
diff --git a/bin/json/game_skillatk.json b/bin/json/game_skillatk.json
index 3362a5dff..dc27516eb 100644
--- a/bin/json/game_skillatk.json
+++ b/bin/json/game_skillatk.json
@@ -29955,7 +29955,7 @@
"Type": 1,
"CD": 3,
"Where": [],
- "Target": 2,
+ "Target": 1,
"ChildSkill": {
"Id": [
254014211
diff --git a/bin/json/game_uigamelattice.json b/bin/json/game_uigamelattice.json
new file mode 100644
index 000000000..93722dfdc
--- /dev/null
+++ b/bin/json/game_uigamelattice.json
@@ -0,0 +1,156 @@
+[
+ {
+ "latticekey": 1,
+ "layers": 1,
+ "bornpos": {
+ "x": 1,
+ "y": 1
+ },
+ "chestspos": [
+ {
+ "x": 2,
+ "y": 2
+ },
+ {
+ "x": 3,
+ "y": 3
+ }
+ ],
+ "outpos": {
+ "x": 5,
+ "y": 5
+ }
+ },
+ {
+ "latticekey": 2,
+ "layers": 2,
+ "bornpos": {
+ "x": 5,
+ "y": 5
+ },
+ "chestspos": [
+ {
+ "x": 2,
+ "y": 2
+ },
+ {
+ "x": 3,
+ "y": 3
+ }
+ ],
+ "outpos": {
+ "x": 1,
+ "y": 1
+ }
+ },
+ {
+ "latticekey": 3,
+ "layers": 3,
+ "bornpos": {
+ "x": 1,
+ "y": 1
+ },
+ "chestspos": [
+ {
+ "x": 2,
+ "y": 2
+ },
+ {
+ "x": 3,
+ "y": 3
+ }
+ ],
+ "outpos": {
+ "x": 5,
+ "y": 5
+ }
+ },
+ {
+ "latticekey": 4,
+ "layers": 4,
+ "bornpos": {
+ "x": 5,
+ "y": 5
+ },
+ "chestspos": [
+ {
+ "x": 2,
+ "y": 2
+ },
+ {
+ "x": 3,
+ "y": 3
+ }
+ ],
+ "outpos": {
+ "x": 1,
+ "y": 1
+ }
+ },
+ {
+ "latticekey": 5,
+ "layers": 5,
+ "bornpos": {
+ "x": 1,
+ "y": 1
+ },
+ "chestspos": [
+ {
+ "x": 2,
+ "y": 2
+ },
+ {
+ "x": 3,
+ "y": 3
+ }
+ ],
+ "outpos": {
+ "x": 5,
+ "y": 5
+ }
+ },
+ {
+ "latticekey": 6,
+ "layers": 6,
+ "bornpos": {
+ "x": 5,
+ "y": 5
+ },
+ "chestspos": [
+ {
+ "x": 2,
+ "y": 2
+ },
+ {
+ "x": 3,
+ "y": 3
+ }
+ ],
+ "outpos": {
+ "x": 1,
+ "y": 1
+ }
+ },
+ {
+ "latticekey": 7,
+ "layers": 7,
+ "bornpos": {
+ "x": 1,
+ "y": 1
+ },
+ "chestspos": [
+ {
+ "x": 2,
+ "y": 2
+ },
+ {
+ "x": 3,
+ "y": 3
+ }
+ ],
+ "outpos": {
+ "x": 5,
+ "y": 5
+ }
+ }
+]
\ No newline at end of file
diff --git a/bin/json/game_uigameminer.json b/bin/json/game_uigameminer.json
new file mode 100644
index 000000000..4cc07d351
--- /dev/null
+++ b/bin/json/game_uigameminer.json
@@ -0,0 +1,197 @@
+[
+ {
+ "minerkey": 1,
+ "mineid": 1,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 100
+ }
+ },
+ {
+ "minerkey": 2,
+ "mineid": 1,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 101
+ }
+ },
+ {
+ "minerkey": 3,
+ "mineid": 1,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 102
+ }
+ },
+ {
+ "minerkey": 4,
+ "mineid": 1,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 103
+ }
+ },
+ {
+ "minerkey": 5,
+ "mineid": 1,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 104
+ }
+ },
+ {
+ "minerkey": 6,
+ "mineid": 2,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 105
+ }
+ },
+ {
+ "minerkey": 7,
+ "mineid": 2,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 106
+ }
+ },
+ {
+ "minerkey": 8,
+ "mineid": 2,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 107
+ }
+ },
+ {
+ "minerkey": 9,
+ "mineid": 2,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 108
+ }
+ },
+ {
+ "minerkey": 10,
+ "mineid": 2,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 109
+ }
+ },
+ {
+ "minerkey": 11,
+ "mineid": 3,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 110
+ }
+ },
+ {
+ "minerkey": 12,
+ "mineid": 3,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 111
+ }
+ },
+ {
+ "minerkey": 13,
+ "mineid": 3,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 112
+ }
+ },
+ {
+ "minerkey": 14,
+ "mineid": 3,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 113
+ }
+ },
+ {
+ "minerkey": 15,
+ "mineid": 3,
+ "itemid": {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ },
+ "itempos": {
+ "x": 100,
+ "y": 114
+ }
+ }
+]
\ No newline at end of file
diff --git a/bin/json/game_uigamepuzzle.json b/bin/json/game_uigamepuzzle.json
new file mode 100644
index 000000000..2f23c1ed4
--- /dev/null
+++ b/bin/json/game_uigamepuzzle.json
@@ -0,0 +1,97 @@
+[
+ {
+ "puzzlekey": 1,
+ "puzzleward": [
+ {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ }
+ ]
+ },
+ {
+ "puzzlekey": 2,
+ "puzzleward": [
+ {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ }
+ ]
+ },
+ {
+ "puzzlekey": 3,
+ "puzzleward": [
+ {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ }
+ ]
+ },
+ {
+ "puzzlekey": 4,
+ "puzzleward": [
+ {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ }
+ ]
+ },
+ {
+ "puzzlekey": 5,
+ "puzzleward": [
+ {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ }
+ ]
+ },
+ {
+ "puzzlekey": 6,
+ "puzzleward": [
+ {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ }
+ ]
+ },
+ {
+ "puzzlekey": 7,
+ "puzzleward": [
+ {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ }
+ ]
+ },
+ {
+ "puzzlekey": 8,
+ "puzzleward": [
+ {
+ "a": "item",
+ "t": "10000001",
+ "n": 1
+ }
+ ]
+ },
+ {
+ "puzzlekey": 9,
+ "puzzleward": [
+ {
+ "a": "item",
+ "t": "10000001",
+ "n": 10
+ },
+ {
+ "a": "attr",
+ "t": "gold",
+ "n": 100000
+ }
+ ]
+ }
+]
\ No newline at end of file
diff --git a/modules/pushgiftbag/api_Info.go b/modules/pushgiftbag/api_Info.go
index 285c407fb..9870ec61a 100644
--- a/modules/pushgiftbag/api_Info.go
+++ b/modules/pushgiftbag/api_Info.go
@@ -6,25 +6,22 @@ import (
)
// 参数校验
-func (this *apiComp) InfoCheck(session comm.IUserSession, req *pb.KFTaskInfoReq) (errdata *pb.ErrorData) {
+func (this *apiComp) InfoCheck(session comm.IUserSession, req *pb.PushGiftbagInfoReq) (errdata *pb.ErrorData) {
return
}
// /获取自己的排行榜信息
-func (this *apiComp) Info(session comm.IUserSession, req *pb.KFTaskInfoReq) (errdata *pb.ErrorData) {
+func (this *apiComp) Info(session comm.IUserSession, req *pb.PushGiftbagInfoReq) (errdata *pb.ErrorData) {
var (
- dtask *pb.DBKFTask
- tasks map[int32]struct{}
- condiIds []int32
- progress []*pb.ConIProgress
- err error
+ info *pb.DBPushGiftbag
+ err error
)
if errdata = this.InfoCheck(session, req); errdata != nil {
return
}
- if dtask, err = this.module.model.getUserDTasks(session.GetUserId()); err != nil {
+ if info, err = this.module.model.getUserPushGift(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
@@ -32,16 +29,7 @@ func (this *apiComp) Info(session comm.IUserSession, req *pb.KFTaskInfoReq) (err
}
return
}
- tasks = this.module.configure.gettasks()
- condiIds = make([]int32, 0, len(tasks))
- for k, _ := range tasks {
- condiIds = append(condiIds, k)
- }
- if progress, err = this.module.ModuleBuried.CheckCondition(session.GetUserId(), condiIds...); err != nil {
- return
- }
-
- session.SendMsg(string(this.module.GetType()), "info", &pb.KFTaskInfoResp{Conlds: progress, Tasks: dtask.Tasks})
+ session.SendMsg(string(this.module.GetType()), "info", &pb.PushGiftbagInfoResp{Item: info.Item})
return
}
diff --git a/modules/pushgiftbag/api_receive.go b/modules/pushgiftbag/api_receive.go
deleted file mode 100644
index f6d875215..000000000
--- a/modules/pushgiftbag/api_receive.go
+++ /dev/null
@@ -1,107 +0,0 @@
-package pushgiftbag
-
-import (
- "fmt"
- "go_dreamfactory/comm"
- "go_dreamfactory/pb"
- "go_dreamfactory/sys/configure"
- cfg "go_dreamfactory/sys/configure/structs"
- "go_dreamfactory/utils"
-)
-
-// 参数校验
-func (this *apiComp) ReceiveCheck(session comm.IUserSession, req *pb.KFTaskReceiveReq) (errdata *pb.ErrorData) {
-
- return
-}
-
-// /获取自己的排行榜信息
-func (this *apiComp) Receive(session comm.IUserSession, req *pb.KFTaskReceiveReq) (errdata *pb.ErrorData) {
- var (
- dtask *pb.DBKFTask
- conf *cfg.GameVenturegiftsTaskData
- user *pb.DBUser
- progress []*pb.ConIProgress
- award []*pb.UserAssets
- err error
- )
- if errdata = this.ReceiveCheck(session, req); errdata != nil {
- return
- }
-
- if conf, err = this.module.configure.getGameVenturegiftsTask(req.Id); err != nil {
- errdata = &pb.ErrorData{
- Code: pb.ErrorCode_DBError,
- Title: pb.ErrorCode_DBError.ToString(),
- Message: err.Error(),
- }
- return
- }
- if dtask, err = this.module.model.getUserDTasks(session.GetUserId()); err != nil {
- errdata = &pb.ErrorData{
- Code: pb.ErrorCode_DBError,
- Title: pb.ErrorCode_DBError.ToString(),
- Message: err.Error(),
- }
- return
- }
-
- if dtask.Tasks[req.Id] == 1 {
- errdata = &pb.ErrorData{
- Code: pb.ErrorCode_ReqParameterError,
- Title: pb.ErrorCode_ReqParameterError.ToString(),
- Message: fmt.Sprintf("%d received", req.Id),
- }
- return
- }
- if user = this.module.ModuleUser.GetUser(session.GetUserId()); user == nil {
- errdata = &pb.ErrorData{
- Code: pb.ErrorCode_DBError,
- Title: pb.ErrorCode_DBError.ToString(),
- Message: "no found user!",
- }
- return
- }
- days := utils.DiffDays(user.Ctime, configure.Now().Unix())
- if days < int(conf.Openday) {
- errdata = &pb.ErrorData{
- Code: pb.ErrorCode_DBError,
- Title: pb.ErrorCode_DBError.ToString(),
- Message: "no open",
- }
- return
- }
-
- if progress, err = this.module.ModuleBuried.CheckCondition(session.GetUserId(), conf.Venturetask); err != nil {
- return
- }
-
- for _, v := range progress {
- if v.State == pb.BuriedItemFinishState_buried_unfinish {
- errdata = &pb.ErrorData{
- Code: pb.ErrorCode_ReqParameterError,
- Title: pb.ErrorCode_ReqParameterError.ToString(),
- Message: "task no finish",
- }
- return
- }
- }
-
- if errdata = this.module.DispenseRes(session, conf.Venturereward, true); errdata != nil {
- return
- }
- award = make([]*pb.UserAssets, 0)
- for _, v := range conf.Venturereward {
- award = append(award, &pb.UserAssets{
- A: v.A,
- T: v.T,
- N: v.N,
- })
- }
- dtask.Tasks[req.Id] = 1
- this.module.model.Change(session.GetUserId(), map[string]interface{}{
- "tasks": dtask.Tasks,
- })
- session.SendMsg(string(this.module.GetType()), "receive", &pb.KFTaskReceiveResp{Id: req.Id, Award: award})
- return
-}
diff --git a/modules/pushgiftbag/configure.go b/modules/pushgiftbag/configure.go
index 109743f19..0d1a98653 100644
--- a/modules/pushgiftbag/configure.go
+++ b/modules/pushgiftbag/configure.go
@@ -1,84 +1,35 @@
package pushgiftbag
import (
- "go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
- "go_dreamfactory/sys/configure"
cfg "go_dreamfactory/sys/configure/structs"
- "sync"
)
const (
- game_venturegiftstask = "game_venturegiftstask.json"
+ game_pushgift = "game_pushgift.json"
)
type configureComp struct {
modules.MCompConfigure
- module *PushGiftbag
- lock sync.RWMutex
- tasks map[int32]struct{}
- groupTasks map[int32][]*cfg.GameVenturegiftsTaskData //key 条件ID
+ module *PushGiftbag
}
func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
err = this.MCompConfigure.Init(service, module, comp, options)
this.module = module.(*PushGiftbag)
- configure.RegisterConfigure(game_venturegiftstask, cfg.NewGameVenturegiftsTask, this.updateconfigure)
+ this.LoadConfigure(game_pushgift, cfg.NewGamePushGift)
return
}
-func (this *configureComp) gettasks() map[int32]struct{} {
- this.lock.RLock()
- defer this.lock.RUnlock()
- return this.tasks
-}
-
-// 更新任务配置表
-func (this *configureComp) updateconfigure() {
+//获取礼包代码
+func (this *configureComp) getGamePushGift() (conf []*cfg.GamePushGiftData, err error) {
var (
- v interface{}
- conf *cfg.GameVenturegiftsTask
- ok bool
- err error
+ v interface{}
)
- if v, err = this.GetConfigure(game_venturegiftstask); err != nil {
- return
- }
- if conf, ok = v.(*cfg.GameVenturegiftsTask); !ok {
- this.module.Error("日常任务配置异常!")
- return
- }
- tasks := make(map[int32]struct{})
- groupTasksConf := make(map[int32][]*cfg.GameVenturegiftsTaskData)
-
- for _, v := range conf.GetDataList() {
-
- if _, ok := groupTasksConf[v.Openday]; !ok {
- groupTasksConf[v.Openday] = make([]*cfg.GameVenturegiftsTaskData, 0)
- }
- groupTasksConf[v.Openday] = append(groupTasksConf[v.Openday], v)
- tasks[v.Venturetask] = struct{}{}
- }
-
- this.lock.Lock()
- this.groupTasks = groupTasksConf
- this.tasks = tasks
- this.lock.Unlock()
-}
-
-func (this *configureComp) getGameVenturegiftsTask(id int32) (conf *cfg.GameVenturegiftsTaskData, err error) {
- var (
- v interface{}
- ok bool
- )
- if v, err = this.GetConfigure(game_venturegiftstask); err != nil {
- return
- }
- if conf, ok = v.(*cfg.GameVenturegiftsTask).GetDataMap()[id]; !ok {
- err = comm.NewNotFoundConfErr(string(this.module.GetType()), game_venturegiftstask, id)
- this.module.Errorln(err)
+ if v, err = this.GetConfigure(game_pushgift); err != nil {
return
}
+ conf = v.(*cfg.GamePushGift).GetDataList()
return
}
diff --git a/modules/pushgiftbag/model.go b/modules/pushgiftbag/model.go
index cd6213827..6324524ac 100644
--- a/modules/pushgiftbag/model.go
+++ b/modules/pushgiftbag/model.go
@@ -28,17 +28,17 @@ func (this *ModelPushGiftbag) Init(service core.IService, module core.IModule, c
}
// 获取用户全部的埋点数据
-func (this *ModelPushGiftbag) getUserDTasks(uid string) (results *pb.DBKFTask, err error) {
- results = &pb.DBKFTask{}
+func (this *ModelPushGiftbag) getUserPushGift(uid string) (results *pb.DBPushGiftbag, err error) {
+ results = &pb.DBPushGiftbag{}
if err = this.Get(uid, results); err != nil && err != mgo.MongodbNil {
this.module.Errorln(err)
return
}
if err == mgo.MongodbNil {
- results = &pb.DBKFTask{
- Id: primitive.NewObjectID().Hex(),
- Uid: uid,
- Tasks: make(map[int32]int32),
+ results = &pb.DBPushGiftbag{
+ Id: primitive.NewObjectID().Hex(),
+ Uid: uid,
+ Item: make([]*pb.DBPushGiftbagItem, 0),
}
err = this.Add(uid, results)
}
diff --git a/modules/pushgiftbag/module.go b/modules/pushgiftbag/module.go
index 32c212f86..beecfc31b 100644
--- a/modules/pushgiftbag/module.go
+++ b/modules/pushgiftbag/module.go
@@ -3,8 +3,11 @@ package pushgiftbag
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
+ "go_dreamfactory/lego/sys/log"
"go_dreamfactory/modules"
"go_dreamfactory/pb"
+ "go_dreamfactory/sys/configure"
+ cfg "go_dreamfactory/sys/configure/structs"
)
type PushGiftbag struct {
@@ -43,22 +46,88 @@ func (this *PushGiftbag) OnInstallComp() {
this.configure = this.RegisterComp(new(configureComp)).(*configureComp)
}
-// 活动开启
-func (this *PushGiftbag) ActivityOpenNotice(hdlist *pb.DBHuodong) {
- switch hdlist.Itype {
- case comm.KFSevenTask:
- this.open = true
- break
- }
-}
-
-// 活动关闭
-func (this *PushGiftbag) ActivityCloseNotice(hdlist *pb.DBHuodong) {
-
-}
-
// 发货
func (this *PushGiftbag) Delivery(session comm.IUserSession, pid string) (errdata *pb.ErrorData, items []*pb.UserAssets) {
+ var (
+ confs []*cfg.GamePushGiftData
+ conf *cfg.GamePushGiftData
+ info *pb.DBPushGiftbag
+ err error
+ )
+ if confs, err = this.configure.getGamePushGift(); err != nil {
+ this.Errorln(err)
+ return
+ }
+ if info, err = this.model.getUserPushGift(session.GetUserId()); err != nil {
+ this.Errorln(err)
+ return
+ }
+ for _, v := range confs {
+ if v.Recharge == pid {
+ conf = v
+ break
+ }
+ }
+ if conf == nil {
+ return
+ }
+ for i, v := range info.Item {
+ if v.Id == conf.Id {
+ info.Item = append(info.Item[0:i], info.Item[i+1:]...)
+ }
+ }
+ session.SendMsg(string(this.GetType()), "chanage", &pb.PushGiftbagChanagePush{Item: info.Item})
return
}
+
+// 埋点通知
+func (this *PushGiftbag) BuriedsNotify(session comm.IUserSession, condis []*pb.ConIProgress) {
+ var (
+ confs []*cfg.GamePushGiftData
+ info *pb.DBPushGiftbag
+ user *pb.DBUser
+ condisMap map[int32]*pb.ConIProgress = make(map[int32]*pb.ConIProgress)
+ targets map[int32]*cfg.GamePushGiftData = make(map[int32]*cfg.GamePushGiftData)
+ item []*pb.DBPushGiftbagItem
+ ok bool
+ err error
+ )
+ if confs, err = this.configure.getGamePushGift(); err != nil {
+ this.Errorln(err)
+ return
+ }
+ if user = this.ModuleUser.GetUser(session.GetUserId()); user == nil {
+ this.Error("no found user!", log.Field{Key: "uid", Value: session.GetUserId()})
+ return
+ }
+ if info, err = this.model.getUserPushGift(session.GetUserId()); err != nil {
+ this.Errorln(err)
+ return
+ }
+ for _, v := range condis {
+ condisMap[v.Conid] = v
+ }
+
+ for _, v := range confs {
+ if _, ok = condisMap[v.Condition]; ok && user.Integral >= int64(v.Integral[0]) && user.Integral <= int64(v.Integral[1]) {
+ targets[v.Id] = v
+ }
+ }
+
+ if len(targets) > 0 {
+ item = make([]*pb.DBPushGiftbagItem, 0)
+ for _, v := range info.Item {
+ if _, ok = targets[v.Id]; ok {
+ v.Stime = configure.Now().Unix()
+ } else {
+ item = append(item, &pb.DBPushGiftbagItem{
+ Id: v.Id,
+ Stime: configure.Now().Unix(),
+ })
+ }
+ }
+ info.Item = append(info.Item, item...)
+ session.SendMsg(string(this.GetType()), "chanage", &pb.PushGiftbagChanagePush{Item: info.Item})
+ }
+}
diff --git a/modules/shopcenter/api_receive.go b/modules/shopcenter/api_receive.go
index f04946b0b..4c2c0c1d3 100644
--- a/modules/shopcenter/api_receive.go
+++ b/modules/shopcenter/api_receive.go
@@ -26,6 +26,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.ShopCenterReceiv
user *pb.DBUser
drop int32
items []*cfg.Gameatn
+ award []*pb.UserAssets
ok bool
err error
)
@@ -156,6 +157,14 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.ShopCenterReceiv
if errdata = this.module.DispenseRes(session, items, true); errdata != nil {
return
}
+ award = make([]*pb.UserAssets, 0)
+ for _, v := range items {
+ award = append(award, &pb.UserAssets{
+ A: v.A,
+ T: v.T,
+ N: v.N,
+ })
+ }
if err = this.module.modelshop.Change(session.GetUserId(), map[string]interface{}{
"item": item,
}); err != nil {
@@ -165,6 +174,6 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.ShopCenterReceiv
Message: err.Error(),
}
}
- session.SendMsg(string(this.module.GetType()), "receive", &pb.ShopCenterReceiveResp{})
+ session.SendMsg(string(this.module.GetType()), "receive", &pb.ShopCenterReceiveResp{Fid: req.Fid, Pid: req.Pid, Award: award})
return
}
diff --git a/pb/pushgiftbag_db.pb.go b/pb/pushgiftbag_db.pb.go
new file mode 100644
index 000000000..5dc9d848f
--- /dev/null
+++ b/pb/pushgiftbag_db.pb.go
@@ -0,0 +1,243 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.28.0
+// protoc v3.20.0
+// source: pushgiftbag/pushgiftbag_db.proto
+
+package pb
+
+import (
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+ sync "sync"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+type DBPushGiftbag struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"`
+ Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid"`
+ Item []*DBPushGiftbagItem `protobuf:"bytes,3,rep,name=item,proto3" json:"item"`
+}
+
+func (x *DBPushGiftbag) Reset() {
+ *x = DBPushGiftbag{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_pushgiftbag_pushgiftbag_db_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DBPushGiftbag) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DBPushGiftbag) ProtoMessage() {}
+
+func (x *DBPushGiftbag) ProtoReflect() protoreflect.Message {
+ mi := &file_pushgiftbag_pushgiftbag_db_proto_msgTypes[0]
+ 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 DBPushGiftbag.ProtoReflect.Descriptor instead.
+func (*DBPushGiftbag) Descriptor() ([]byte, []int) {
+ return file_pushgiftbag_pushgiftbag_db_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *DBPushGiftbag) GetId() string {
+ if x != nil {
+ return x.Id
+ }
+ return ""
+}
+
+func (x *DBPushGiftbag) GetUid() string {
+ if x != nil {
+ return x.Uid
+ }
+ return ""
+}
+
+func (x *DBPushGiftbag) GetItem() []*DBPushGiftbagItem {
+ if x != nil {
+ return x.Item
+ }
+ return nil
+}
+
+type DBPushGiftbagItem struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id"`
+ Stime int64 `protobuf:"varint,2,opt,name=stime,proto3" json:"stime"`
+ Buynum int32 `protobuf:"varint,3,opt,name=buynum,proto3" json:"buynum"`
+}
+
+func (x *DBPushGiftbagItem) Reset() {
+ *x = DBPushGiftbagItem{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_pushgiftbag_pushgiftbag_db_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DBPushGiftbagItem) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DBPushGiftbagItem) ProtoMessage() {}
+
+func (x *DBPushGiftbagItem) ProtoReflect() protoreflect.Message {
+ mi := &file_pushgiftbag_pushgiftbag_db_proto_msgTypes[1]
+ 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 DBPushGiftbagItem.ProtoReflect.Descriptor instead.
+func (*DBPushGiftbagItem) Descriptor() ([]byte, []int) {
+ return file_pushgiftbag_pushgiftbag_db_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *DBPushGiftbagItem) GetId() int32 {
+ if x != nil {
+ return x.Id
+ }
+ return 0
+}
+
+func (x *DBPushGiftbagItem) GetStime() int64 {
+ if x != nil {
+ return x.Stime
+ }
+ return 0
+}
+
+func (x *DBPushGiftbagItem) GetBuynum() int32 {
+ if x != nil {
+ return x.Buynum
+ }
+ return 0
+}
+
+var File_pushgiftbag_pushgiftbag_db_proto protoreflect.FileDescriptor
+
+var file_pushgiftbag_pushgiftbag_db_proto_rawDesc = []byte{
+ 0x0a, 0x20, 0x70, 0x75, 0x73, 0x68, 0x67, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x2f, 0x70, 0x75,
+ 0x73, 0x68, 0x67, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x22, 0x59, 0x0a, 0x0d, 0x44, 0x42, 0x50, 0x75, 0x73, 0x68, 0x47, 0x69, 0x66, 0x74,
+ 0x62, 0x61, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x03, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x44, 0x42, 0x50, 0x75, 0x73, 0x68, 0x47, 0x69, 0x66, 0x74,
+ 0x62, 0x61, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0x51, 0x0a,
+ 0x11, 0x44, 0x42, 0x50, 0x75, 0x73, 0x68, 0x47, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x49, 0x74,
+ 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02,
+ 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x03, 0x52, 0x05, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x79, 0x6e,
+ 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x62, 0x75, 0x79, 0x6e, 0x75, 0x6d,
+ 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_pushgiftbag_pushgiftbag_db_proto_rawDescOnce sync.Once
+ file_pushgiftbag_pushgiftbag_db_proto_rawDescData = file_pushgiftbag_pushgiftbag_db_proto_rawDesc
+)
+
+func file_pushgiftbag_pushgiftbag_db_proto_rawDescGZIP() []byte {
+ file_pushgiftbag_pushgiftbag_db_proto_rawDescOnce.Do(func() {
+ file_pushgiftbag_pushgiftbag_db_proto_rawDescData = protoimpl.X.CompressGZIP(file_pushgiftbag_pushgiftbag_db_proto_rawDescData)
+ })
+ return file_pushgiftbag_pushgiftbag_db_proto_rawDescData
+}
+
+var file_pushgiftbag_pushgiftbag_db_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_pushgiftbag_pushgiftbag_db_proto_goTypes = []interface{}{
+ (*DBPushGiftbag)(nil), // 0: DBPushGiftbag
+ (*DBPushGiftbagItem)(nil), // 1: DBPushGiftbagItem
+}
+var file_pushgiftbag_pushgiftbag_db_proto_depIdxs = []int32{
+ 1, // 0: DBPushGiftbag.item:type_name -> DBPushGiftbagItem
+ 1, // [1:1] is the sub-list for method output_type
+ 1, // [1:1] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_pushgiftbag_pushgiftbag_db_proto_init() }
+func file_pushgiftbag_pushgiftbag_db_proto_init() {
+ if File_pushgiftbag_pushgiftbag_db_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_pushgiftbag_pushgiftbag_db_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DBPushGiftbag); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_pushgiftbag_pushgiftbag_db_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DBPushGiftbagItem); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_pushgiftbag_pushgiftbag_db_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_pushgiftbag_pushgiftbag_db_proto_goTypes,
+ DependencyIndexes: file_pushgiftbag_pushgiftbag_db_proto_depIdxs,
+ MessageInfos: file_pushgiftbag_pushgiftbag_db_proto_msgTypes,
+ }.Build()
+ File_pushgiftbag_pushgiftbag_db_proto = out.File
+ file_pushgiftbag_pushgiftbag_db_proto_rawDesc = nil
+ file_pushgiftbag_pushgiftbag_db_proto_goTypes = nil
+ file_pushgiftbag_pushgiftbag_db_proto_depIdxs = nil
+}
diff --git a/pb/pushgiftbag_msg.pb.go b/pb/pushgiftbag_msg.pb.go
new file mode 100644
index 000000000..e3049f9ca
--- /dev/null
+++ b/pb/pushgiftbag_msg.pb.go
@@ -0,0 +1,269 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.28.0
+// protoc v3.20.0
+// source: pushgiftbag/pushgiftbag_msg.proto
+
+package pb
+
+import (
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+ sync "sync"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+//推送礼包信息请求
+type PushGiftbagInfoReq struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *PushGiftbagInfoReq) Reset() {
+ *x = PushGiftbagInfoReq{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_pushgiftbag_pushgiftbag_msg_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PushGiftbagInfoReq) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PushGiftbagInfoReq) ProtoMessage() {}
+
+func (x *PushGiftbagInfoReq) ProtoReflect() protoreflect.Message {
+ mi := &file_pushgiftbag_pushgiftbag_msg_proto_msgTypes[0]
+ 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 PushGiftbagInfoReq.ProtoReflect.Descriptor instead.
+func (*PushGiftbagInfoReq) Descriptor() ([]byte, []int) {
+ return file_pushgiftbag_pushgiftbag_msg_proto_rawDescGZIP(), []int{0}
+}
+
+//推送礼包信息请求 回应
+type PushGiftbagInfoResp struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Item []*DBPushGiftbagItem `protobuf:"bytes,1,rep,name=item,proto3" json:"item"`
+}
+
+func (x *PushGiftbagInfoResp) Reset() {
+ *x = PushGiftbagInfoResp{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_pushgiftbag_pushgiftbag_msg_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PushGiftbagInfoResp) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PushGiftbagInfoResp) ProtoMessage() {}
+
+func (x *PushGiftbagInfoResp) ProtoReflect() protoreflect.Message {
+ mi := &file_pushgiftbag_pushgiftbag_msg_proto_msgTypes[1]
+ 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 PushGiftbagInfoResp.ProtoReflect.Descriptor instead.
+func (*PushGiftbagInfoResp) Descriptor() ([]byte, []int) {
+ return file_pushgiftbag_pushgiftbag_msg_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *PushGiftbagInfoResp) GetItem() []*DBPushGiftbagItem {
+ if x != nil {
+ return x.Item
+ }
+ return nil
+}
+
+//推送礼包信息请求
+type PushGiftbagChanagePush struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Item []*DBPushGiftbagItem `protobuf:"bytes,1,rep,name=item,proto3" json:"item"`
+}
+
+func (x *PushGiftbagChanagePush) Reset() {
+ *x = PushGiftbagChanagePush{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_pushgiftbag_pushgiftbag_msg_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PushGiftbagChanagePush) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PushGiftbagChanagePush) ProtoMessage() {}
+
+func (x *PushGiftbagChanagePush) ProtoReflect() protoreflect.Message {
+ mi := &file_pushgiftbag_pushgiftbag_msg_proto_msgTypes[2]
+ 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 PushGiftbagChanagePush.ProtoReflect.Descriptor instead.
+func (*PushGiftbagChanagePush) Descriptor() ([]byte, []int) {
+ return file_pushgiftbag_pushgiftbag_msg_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *PushGiftbagChanagePush) GetItem() []*DBPushGiftbagItem {
+ if x != nil {
+ return x.Item
+ }
+ return nil
+}
+
+var File_pushgiftbag_pushgiftbag_msg_proto protoreflect.FileDescriptor
+
+var file_pushgiftbag_pushgiftbag_msg_proto_rawDesc = []byte{
+ 0x0a, 0x21, 0x70, 0x75, 0x73, 0x68, 0x67, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x2f, 0x70, 0x75,
+ 0x73, 0x68, 0x67, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x70, 0x75, 0x73, 0x68, 0x67, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67,
+ 0x2f, 0x70, 0x75, 0x73, 0x68, 0x67, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x5f, 0x64, 0x62, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x14, 0x0a, 0x12, 0x50, 0x75, 0x73, 0x68, 0x47, 0x69, 0x66,
+ 0x74, 0x62, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x22, 0x3d, 0x0a, 0x13, 0x50,
+ 0x75, 0x73, 0x68, 0x47, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65,
+ 0x73, 0x70, 0x12, 0x26, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x12, 0x2e, 0x44, 0x42, 0x50, 0x75, 0x73, 0x68, 0x47, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67,
+ 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x22, 0x40, 0x0a, 0x16, 0x50, 0x75,
+ 0x73, 0x68, 0x47, 0x69, 0x66, 0x74, 0x62, 0x61, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x61, 0x67, 0x65,
+ 0x50, 0x75, 0x73, 0x68, 0x12, 0x26, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x44, 0x42, 0x50, 0x75, 0x73, 0x68, 0x47, 0x69, 0x66, 0x74, 0x62,
+ 0x61, 0x67, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x42, 0x06, 0x5a, 0x04,
+ 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_pushgiftbag_pushgiftbag_msg_proto_rawDescOnce sync.Once
+ file_pushgiftbag_pushgiftbag_msg_proto_rawDescData = file_pushgiftbag_pushgiftbag_msg_proto_rawDesc
+)
+
+func file_pushgiftbag_pushgiftbag_msg_proto_rawDescGZIP() []byte {
+ file_pushgiftbag_pushgiftbag_msg_proto_rawDescOnce.Do(func() {
+ file_pushgiftbag_pushgiftbag_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_pushgiftbag_pushgiftbag_msg_proto_rawDescData)
+ })
+ return file_pushgiftbag_pushgiftbag_msg_proto_rawDescData
+}
+
+var file_pushgiftbag_pushgiftbag_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
+var file_pushgiftbag_pushgiftbag_msg_proto_goTypes = []interface{}{
+ (*PushGiftbagInfoReq)(nil), // 0: PushGiftbagInfoReq
+ (*PushGiftbagInfoResp)(nil), // 1: PushGiftbagInfoResp
+ (*PushGiftbagChanagePush)(nil), // 2: PushGiftbagChanagePush
+ (*DBPushGiftbagItem)(nil), // 3: DBPushGiftbagItem
+}
+var file_pushgiftbag_pushgiftbag_msg_proto_depIdxs = []int32{
+ 3, // 0: PushGiftbagInfoResp.item:type_name -> DBPushGiftbagItem
+ 3, // 1: PushGiftbagChanagePush.item:type_name -> DBPushGiftbagItem
+ 2, // [2:2] is the sub-list for method output_type
+ 2, // [2:2] is the sub-list for method input_type
+ 2, // [2:2] is the sub-list for extension type_name
+ 2, // [2:2] is the sub-list for extension extendee
+ 0, // [0:2] is the sub-list for field type_name
+}
+
+func init() { file_pushgiftbag_pushgiftbag_msg_proto_init() }
+func file_pushgiftbag_pushgiftbag_msg_proto_init() {
+ if File_pushgiftbag_pushgiftbag_msg_proto != nil {
+ return
+ }
+ file_pushgiftbag_pushgiftbag_db_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_pushgiftbag_pushgiftbag_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PushGiftbagInfoReq); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_pushgiftbag_pushgiftbag_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PushGiftbagInfoResp); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_pushgiftbag_pushgiftbag_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PushGiftbagChanagePush); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_pushgiftbag_pushgiftbag_msg_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 3,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_pushgiftbag_pushgiftbag_msg_proto_goTypes,
+ DependencyIndexes: file_pushgiftbag_pushgiftbag_msg_proto_depIdxs,
+ MessageInfos: file_pushgiftbag_pushgiftbag_msg_proto_msgTypes,
+ }.Build()
+ File_pushgiftbag_pushgiftbag_msg_proto = out.File
+ file_pushgiftbag_pushgiftbag_msg_proto_rawDesc = nil
+ file_pushgiftbag_pushgiftbag_msg_proto_goTypes = nil
+ file_pushgiftbag_pushgiftbag_msg_proto_depIdxs = nil
+}
diff --git a/sys/configure/structs/Game.CelebrationData.go b/sys/configure/structs/Game.CelebrationData.go
index df20826c0..97d00e850 100644
--- a/sys/configure/structs/Game.CelebrationData.go
+++ b/sys/configure/structs/Game.CelebrationData.go
@@ -16,6 +16,7 @@ type GameCelebrationData struct {
Bosstype []int32
Num []int32
Days int32
+ Tipstxt string
}
const TypeId_GameCelebrationData = 5340088
@@ -56,6 +57,7 @@ func (_v *GameCelebrationData)Deserialize(_buf map[string]interface{}) (err erro
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["days"].(float64); !_ok_ { err = errors.New("days error"); return }; _v.Days = int32(_tempNum_) }
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["tipstxt"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Tipstxt error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Tipstxt, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
return
}
diff --git a/sys/configure/structs/Game.PushGift.go b/sys/configure/structs/Game.PushGift.go
new file mode 100644
index 000000000..1655a02b2
--- /dev/null
+++ b/sys/configure/structs/Game.PushGift.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 GamePushGift struct {
+ _dataMap map[int32]*GamePushGiftData
+ _dataList []*GamePushGiftData
+}
+
+func NewGamePushGift(_buf []map[string]interface{}) (*GamePushGift, error) {
+ _dataList := make([]*GamePushGiftData, 0, len(_buf))
+ dataMap := make(map[int32]*GamePushGiftData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGamePushGiftData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Id] = _v
+ }
+ }
+ return &GamePushGift{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GamePushGift) GetDataMap() map[int32]*GamePushGiftData {
+ return table._dataMap
+}
+
+func (table *GamePushGift) GetDataList() []*GamePushGiftData {
+ return table._dataList
+}
+
+func (table *GamePushGift) Get(key int32) *GamePushGiftData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.PushGiftData.go b/sys/configure/structs/Game.PushGiftData.go
new file mode 100644
index 000000000..bf459b0d1
--- /dev/null
+++ b/sys/configure/structs/Game.PushGiftData.go
@@ -0,0 +1,70 @@
+//------------------------------------------------------------------------------
+//
+// 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 GamePushGiftData struct {
+ Id int32
+ Name string
+ Title string
+ Resource string
+ Integral []int32
+ Condition int32
+ Lbid int32
+ Time int32
+ Rebate int32
+ Isdayrepeat int32
+ Force int32
+ Recharge string
+}
+
+const TypeId_GamePushGiftData = -1256129872
+
+func (*GamePushGiftData) GetTypeId() int32 {
+ return -1256129872
+}
+
+func (_v *GamePushGiftData)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 __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Name, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["title"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Title error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Title, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
+ { var _ok_ bool; if _v.Resource, _ok_ = _buf["resource"].(string); !_ok_ { err = errors.New("resource error"); return } }
+ {
+ var _arr_ []interface{}
+ var _ok_ bool
+ if _arr_, _ok_ = _buf["integral"].([]interface{}); !_ok_ { err = errors.New("integral error"); return }
+
+ _v.Integral = make([]int32, 0, len(_arr_))
+
+ for _, _e_ := range _arr_ {
+ var _list_v_ int32
+ { var _ok_ bool; var _x_ float64; if _x_, _ok_ = _e_.(float64); !_ok_ { err = errors.New("_list_v_ error"); return }; _list_v_ = int32(_x_) }
+ _v.Integral = append(_v.Integral, _list_v_)
+ }
+ }
+
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["condition"].(float64); !_ok_ { err = errors.New("condition error"); return }; _v.Condition = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["lbid"].(float64); !_ok_ { err = errors.New("lbid error"); return }; _v.Lbid = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["time"].(float64); !_ok_ { err = errors.New("time error"); return }; _v.Time = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["rebate"].(float64); !_ok_ { err = errors.New("rebate error"); return }; _v.Rebate = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["isdayrepeat"].(float64); !_ok_ { err = errors.New("isdayrepeat error"); return }; _v.Isdayrepeat = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["force"].(float64); !_ok_ { err = errors.New("force error"); return }; _v.Force = int32(_tempNum_) }
+ { var _ok_ bool; if _v.Recharge, _ok_ = _buf["recharge"].(string); !_ok_ { err = errors.New("recharge error"); return } }
+ return
+}
+
+func DeserializeGamePushGiftData(_buf map[string]interface{}) (*GamePushGiftData, error) {
+ v := &GamePushGiftData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.UiGameLattice.go b/sys/configure/structs/Game.UiGameLattice.go
new file mode 100644
index 000000000..0df8850ba
--- /dev/null
+++ b/sys/configure/structs/Game.UiGameLattice.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 GameUiGameLattice struct {
+ _dataMap map[int32]*GameUiGameLatticeData
+ _dataList []*GameUiGameLatticeData
+}
+
+func NewGameUiGameLattice(_buf []map[string]interface{}) (*GameUiGameLattice, error) {
+ _dataList := make([]*GameUiGameLatticeData, 0, len(_buf))
+ dataMap := make(map[int32]*GameUiGameLatticeData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameUiGameLatticeData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Latticekey] = _v
+ }
+ }
+ return &GameUiGameLattice{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameUiGameLattice) GetDataMap() map[int32]*GameUiGameLatticeData {
+ return table._dataMap
+}
+
+func (table *GameUiGameLattice) GetDataList() []*GameUiGameLatticeData {
+ return table._dataList
+}
+
+func (table *GameUiGameLattice) Get(key int32) *GameUiGameLatticeData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.UiGameLatticeData.go b/sys/configure/structs/Game.UiGameLatticeData.go
new file mode 100644
index 000000000..4d25d2d90
--- /dev/null
+++ b/sys/configure/structs/Game.UiGameLatticeData.go
@@ -0,0 +1,75 @@
+//------------------------------------------------------------------------------
+//
+// 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"
+import "bright/serialization"
+
+type GameUiGameLatticeData struct {
+ Latticekey int32
+ Layers int32
+ Bornpos serialization.Vector2
+ Chestspos []serialization.Vector2
+ Outpos serialization.Vector2
+}
+
+const TypeId_GameUiGameLatticeData = -164420354
+
+func (*GameUiGameLatticeData) GetTypeId() int32 {
+ return -164420354
+}
+
+func (_v *GameUiGameLatticeData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["latticekey"].(float64); !_ok_ { err = errors.New("latticekey error"); return }; _v.Latticekey = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["layers"].(float64); !_ok_ { err = errors.New("layers error"); return }; _v.Layers = int32(_tempNum_) }
+ { var _ok_ bool; var _v_ map[string]interface{}; if _v_, _ok_ = _buf["bornpos"].(map[string]interface{}); !_ok_ { err = errors.New("bornpos error"); return }
+ var _x_, _y_ float32;
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _v_["x"].(float64); !_ok_ { err = errors.New("x error"); return }; _x_ = float32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _v_["y"].(float64); !_ok_ { err = errors.New("y error"); return }; _y_ = float32(_tempNum_) }
+ _v.Bornpos = serialization.NewVector2(_x_, _y_)
+ }
+
+ {
+ var _arr_ []interface{}
+ var _ok_ bool
+ if _arr_, _ok_ = _buf["chestspos"].([]interface{}); !_ok_ { err = errors.New("chestspos error"); return }
+
+ _v.Chestspos = make([]serialization.Vector2, 0, len(_arr_))
+
+ for _, _e_ := range _arr_ {
+ var _list_v_ serialization.Vector2
+ { var _ok_ bool; var _v_ map[string]interface{}; if _v_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }
+ var _x_, _y_ float32;
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _v_["x"].(float64); !_ok_ { err = errors.New("x error"); return }; _x_ = float32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _v_["y"].(float64); !_ok_ { err = errors.New("y error"); return }; _y_ = float32(_tempNum_) }
+ _list_v_ = serialization.NewVector2(_x_, _y_)
+ }
+
+ _v.Chestspos = append(_v.Chestspos, _list_v_)
+ }
+ }
+
+ { var _ok_ bool; var _v_ map[string]interface{}; if _v_, _ok_ = _buf["outpos"].(map[string]interface{}); !_ok_ { err = errors.New("outpos error"); return }
+ var _x_, _y_ float32;
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _v_["x"].(float64); !_ok_ { err = errors.New("x error"); return }; _x_ = float32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _v_["y"].(float64); !_ok_ { err = errors.New("y error"); return }; _y_ = float32(_tempNum_) }
+ _v.Outpos = serialization.NewVector2(_x_, _y_)
+ }
+
+ return
+}
+
+func DeserializeGameUiGameLatticeData(_buf map[string]interface{}) (*GameUiGameLatticeData, error) {
+ v := &GameUiGameLatticeData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.UiGameMiner.go b/sys/configure/structs/Game.UiGameMiner.go
new file mode 100644
index 000000000..36e4ecc83
--- /dev/null
+++ b/sys/configure/structs/Game.UiGameMiner.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 GameUiGameMiner struct {
+ _dataMap map[int32]*GameUiGameMinerData
+ _dataList []*GameUiGameMinerData
+}
+
+func NewGameUiGameMiner(_buf []map[string]interface{}) (*GameUiGameMiner, error) {
+ _dataList := make([]*GameUiGameMinerData, 0, len(_buf))
+ dataMap := make(map[int32]*GameUiGameMinerData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameUiGameMinerData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Minerkey] = _v
+ }
+ }
+ return &GameUiGameMiner{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameUiGameMiner) GetDataMap() map[int32]*GameUiGameMinerData {
+ return table._dataMap
+}
+
+func (table *GameUiGameMiner) GetDataList() []*GameUiGameMinerData {
+ return table._dataList
+}
+
+func (table *GameUiGameMiner) Get(key int32) *GameUiGameMinerData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.UiGameMinerData.go b/sys/configure/structs/Game.UiGameMinerData.go
new file mode 100644
index 000000000..c9e440930
--- /dev/null
+++ b/sys/configure/structs/Game.UiGameMinerData.go
@@ -0,0 +1,48 @@
+//------------------------------------------------------------------------------
+//
+// 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"
+import "bright/serialization"
+
+type GameUiGameMinerData struct {
+ Minerkey int32
+ Mineid int32
+ Itemid *Gameatn
+ Itempos serialization.Vector2
+}
+
+const TypeId_GameUiGameMinerData = 725220039
+
+func (*GameUiGameMinerData) GetTypeId() int32 {
+ return 725220039
+}
+
+func (_v *GameUiGameMinerData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["minerkey"].(float64); !_ok_ { err = errors.New("minerkey error"); return }; _v.Minerkey = int32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["mineid"].(float64); !_ok_ { err = errors.New("mineid error"); return }; _v.Mineid = int32(_tempNum_) }
+ { var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["itemid"].(map[string]interface{}); !_ok_ { err = errors.New("itemid error"); return }; if _v.Itemid, err = DeserializeGameatn(_x_); err != nil { return } }
+ { var _ok_ bool; var _v_ map[string]interface{}; if _v_, _ok_ = _buf["itempos"].(map[string]interface{}); !_ok_ { err = errors.New("itempos error"); return }
+ var _x_, _y_ float32;
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _v_["x"].(float64); !_ok_ { err = errors.New("x error"); return }; _x_ = float32(_tempNum_) }
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _v_["y"].(float64); !_ok_ { err = errors.New("y error"); return }; _y_ = float32(_tempNum_) }
+ _v.Itempos = serialization.NewVector2(_x_, _y_)
+ }
+
+ return
+}
+
+func DeserializeGameUiGameMinerData(_buf map[string]interface{}) (*GameUiGameMinerData, error) {
+ v := &GameUiGameMinerData{}
+ if err := v.Deserialize(_buf); err == nil {
+ return v, nil
+ } else {
+ return nil, err
+ }
+}
diff --git a/sys/configure/structs/Game.UiGamePuzzle.go b/sys/configure/structs/Game.UiGamePuzzle.go
new file mode 100644
index 000000000..e27787168
--- /dev/null
+++ b/sys/configure/structs/Game.UiGamePuzzle.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 GameUiGamePuzzle struct {
+ _dataMap map[int32]*GameUiGamePuzzleData
+ _dataList []*GameUiGamePuzzleData
+}
+
+func NewGameUiGamePuzzle(_buf []map[string]interface{}) (*GameUiGamePuzzle, error) {
+ _dataList := make([]*GameUiGamePuzzleData, 0, len(_buf))
+ dataMap := make(map[int32]*GameUiGamePuzzleData)
+ for _, _ele_ := range _buf {
+ if _v, err2 := DeserializeGameUiGamePuzzleData(_ele_); err2 != nil {
+ return nil, err2
+ } else {
+ _dataList = append(_dataList, _v)
+ dataMap[_v.Puzzlekey] = _v
+ }
+ }
+ return &GameUiGamePuzzle{_dataList:_dataList, _dataMap:dataMap}, nil
+}
+
+func (table *GameUiGamePuzzle) GetDataMap() map[int32]*GameUiGamePuzzleData {
+ return table._dataMap
+}
+
+func (table *GameUiGamePuzzle) GetDataList() []*GameUiGamePuzzleData {
+ return table._dataList
+}
+
+func (table *GameUiGamePuzzle) Get(key int32) *GameUiGamePuzzleData {
+ return table._dataMap[key]
+}
+
+
diff --git a/sys/configure/structs/Game.UiGamePuzzleData.go b/sys/configure/structs/Game.UiGamePuzzleData.go
new file mode 100644
index 000000000..56e762533
--- /dev/null
+++ b/sys/configure/structs/Game.UiGamePuzzleData.go
@@ -0,0 +1,50 @@
+//------------------------------------------------------------------------------
+//
+// 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 GameUiGamePuzzleData struct {
+ Puzzlekey int32
+ Puzzleward []*Gameatn
+}
+
+const TypeId_GameUiGamePuzzleData = 957242570
+
+func (*GameUiGamePuzzleData) GetTypeId() int32 {
+ return 957242570
+}
+
+func (_v *GameUiGamePuzzleData)Deserialize(_buf map[string]interface{}) (err error) {
+ { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["puzzlekey"].(float64); !_ok_ { err = errors.New("puzzlekey error"); return }; _v.Puzzlekey = int32(_tempNum_) }
+ {
+ var _arr_ []interface{}
+ var _ok_ bool
+ if _arr_, _ok_ = _buf["puzzleward"].([]interface{}); !_ok_ { err = errors.New("puzzleward error"); return }
+
+ _v.Puzzleward = 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.Puzzleward = append(_v.Puzzleward, _list_v_)
+ }
+ }
+
+ return
+}
+
+func DeserializeGameUiGamePuzzleData(_buf map[string]interface{}) (*GameUiGamePuzzleData, error) {
+ v := &GameUiGamePuzzleData{}
+ 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 7b8c6aedf..c55d0fe83 100644
--- a/sys/configure/structs/Tables.go
+++ b/sys/configure/structs/Tables.go
@@ -236,6 +236,10 @@ type Tables struct {
Heroupstory *GameHeroupstory
HeroupstoryChapter *GameHeroupstoryChapter
HeroupstoryBattle *GameHeroupstoryBattle
+ UiGamePuzzle *GameUiGamePuzzle
+ UiGameLattice *GameUiGameLattice
+ UiGameMiner *GameUiGameMiner
+ PushGift *GamePushGift
}
func NewTables(loader JsonLoader) (*Tables, error) {
@@ -1593,5 +1597,29 @@ func NewTables(loader JsonLoader) (*Tables, error) {
if tables.HeroupstoryBattle, err = NewGameHeroupstoryBattle(buf) ; err != nil {
return nil, err
}
+ if buf, err = loader("game_uigamepuzzle") ; err != nil {
+ return nil, err
+ }
+ if tables.UiGamePuzzle, err = NewGameUiGamePuzzle(buf) ; err != nil {
+ return nil, err
+ }
+ if buf, err = loader("game_uigamelattice") ; err != nil {
+ return nil, err
+ }
+ if tables.UiGameLattice, err = NewGameUiGameLattice(buf) ; err != nil {
+ return nil, err
+ }
+ if buf, err = loader("game_uigameminer") ; err != nil {
+ return nil, err
+ }
+ if tables.UiGameMiner, err = NewGameUiGameMiner(buf) ; err != nil {
+ return nil, err
+ }
+ if buf, err = loader("game_pushgift") ; err != nil {
+ return nil, err
+ }
+ if tables.PushGift, err = NewGamePushGift(buf) ; err != nil {
+ return nil, err
+ }
return tables, nil
}