上传配置

This commit is contained in:
liwei 2023-08-04 15:28:05 +08:00
parent 411b6cdd6a
commit 5d67a41e80
41 changed files with 8901 additions and 35645 deletions

View File

@ -3,7 +3,7 @@
"fatekey": 1,
"heroid": 35006,
"herostage": 1,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_1",
"text": "测试1"
@ -13,7 +13,7 @@
"fatekey": 2,
"heroid": 35006,
"herostage": 1,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_2",
"text": "测试2"
@ -23,7 +23,7 @@
"fatekey": 3,
"heroid": 35006,
"herostage": 1,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_3",
"text": "测试3"
@ -33,7 +33,7 @@
"fatekey": 4,
"heroid": 35006,
"herostage": 1,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_4",
"text": "测试4"
@ -43,7 +43,7 @@
"fatekey": 5,
"heroid": 35006,
"herostage": 2,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_5",
"text": "测试5"
@ -53,7 +53,7 @@
"fatekey": 6,
"heroid": 35006,
"herostage": 2,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_6",
"text": "测试6"
@ -63,7 +63,7 @@
"fatekey": 7,
"heroid": 35006,
"herostage": 2,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_7",
"text": "测试7"
@ -73,7 +73,7 @@
"fatekey": 8,
"heroid": 35006,
"herostage": 2,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_8",
"text": "测试8"
@ -83,7 +83,7 @@
"fatekey": 9,
"heroid": 35006,
"herostage": 3,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_9",
"text": "测试9"
@ -93,7 +93,7 @@
"fatekey": 10,
"heroid": 35006,
"herostage": 3,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_10",
"text": "测试10"
@ -103,7 +103,7 @@
"fatekey": 11,
"heroid": 35006,
"herostage": 3,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_11",
"text": "测试11"
@ -113,7 +113,7 @@
"fatekey": 12,
"heroid": 35006,
"herostage": 3,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_12",
"text": "测试12"
@ -123,7 +123,7 @@
"fatekey": 13,
"heroid": 35006,
"herostage": 4,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_13",
"text": "测试13"
@ -133,7 +133,7 @@
"fatekey": 14,
"heroid": 35006,
"herostage": 4,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_14",
"text": "测试14"
@ -143,7 +143,7 @@
"fatekey": 15,
"heroid": 35006,
"herostage": 4,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_15",
"text": "测试15"
@ -153,7 +153,7 @@
"fatekey": 16,
"heroid": 35006,
"herostage": 4,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_16",
"text": "测试16"
@ -163,7 +163,7 @@
"fatekey": 17,
"heroid": 35006,
"herostage": 5,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_17",
"text": "测试17"
@ -173,7 +173,7 @@
"fatekey": 18,
"heroid": 35006,
"herostage": 5,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_18",
"text": "测试18"
@ -183,7 +183,7 @@
"fatekey": 19,
"heroid": 35006,
"herostage": 5,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_19",
"text": "测试19"
@ -193,7 +193,7 @@
"fatekey": 20,
"heroid": 35006,
"herostage": 5,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_20",
"text": "测试20"
@ -203,7 +203,7 @@
"fatekey": 21,
"heroid": 35006,
"herostage": 6,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_21",
"text": "测试21"
@ -213,7 +213,7 @@
"fatekey": 22,
"heroid": 35006,
"herostage": 6,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_22",
"text": "测试22"
@ -223,7 +223,7 @@
"fatekey": 23,
"heroid": 35006,
"herostage": 6,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_23",
"text": "测试23"
@ -233,7 +233,7 @@
"fatekey": 24,
"heroid": 35006,
"herostage": 6,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_24",
"text": "测试24"
@ -243,7 +243,7 @@
"fatekey": 25,
"heroid": 35006,
"herostage": 7,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_25",
"text": "测试25"
@ -253,7 +253,7 @@
"fatekey": 26,
"heroid": 35006,
"herostage": 7,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_26",
"text": "测试26"
@ -263,7 +263,7 @@
"fatekey": 27,
"heroid": 35006,
"herostage": 7,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_27",
"text": "测试27"
@ -273,7 +273,7 @@
"fatekey": 28,
"heroid": 35006,
"herostage": 7,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_28",
"text": "测试28"
@ -283,7 +283,7 @@
"fatekey": 29,
"heroid": 45001,
"herostage": 1,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_29",
"text": "测试29"
@ -293,7 +293,7 @@
"fatekey": 30,
"heroid": 45001,
"herostage": 1,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_30",
"text": "测试30"
@ -303,7 +303,7 @@
"fatekey": 31,
"heroid": 45001,
"herostage": 1,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_31",
"text": "测试31"
@ -313,7 +313,7 @@
"fatekey": 32,
"heroid": 45001,
"herostage": 1,
"stagetask": 110060,
"stagetask": 15000001,
"stagetasktext": {
"key": "fategift_stagetask_test_32",
"text": "测试32"

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,8 @@
[
{
"heroid": 25001,
"opentime": "2023/8/14 0:00:00",
"newheroday": 2,
"reward": []
}
]

View File

@ -0,0 +1,282 @@
[
{
"id": 101,
"FormatList": [
700011
],
"BattleReadyID": 127,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 102,
"FormatList": [
700012
],
"BattleReadyID": 127,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 103,
"FormatList": [
700013
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 104,
"FormatList": [
700014
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 105,
"FormatList": [
700015
],
"BattleReadyID": 117,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 106,
"FormatList": [
700016
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 107,
"FormatList": [
700017
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 108,
"FormatList": [
700018
],
"BattleReadyID": 117,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 109,
"FormatList": [
700019
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 110,
"FormatList": [
700020
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 111,
"FormatList": [
700021
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 112,
"FormatList": [
700022
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 113,
"FormatList": [
700023
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 114,
"FormatList": [
700024
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 115,
"FormatList": [
700025
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 116,
"FormatList": [
700026
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 117,
"FormatList": [
700027
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 118,
"FormatList": [
700028
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 119,
"FormatList": [
700029
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
},
{
"id": 120,
"FormatList": [
700030
],
"BattleReadyID": 126,
"EventList": [],
"playexp": {
"a": "attr",
"t": "exp",
"n": 0
},
"carexe": 500
}
]

View File

@ -0,0 +1,489 @@
[
{
"key": 1,
"hero": 25001,
"chapter": 1001,
"onlevel": 0,
"onlevelstory": 0,
"level": 101,
"levellink": [
102
],
"leveltype": 1,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3000
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 2,
"hero": 25001,
"chapter": 1001,
"onlevel": 1,
"onlevelstory": 0,
"level": 102,
"levellink": [
101,
103,
104
],
"leveltype": 2,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3010
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 3,
"hero": 25001,
"chapter": 1001,
"onlevel": 2,
"onlevelstory": 0,
"level": 103,
"levellink": [
102,
104
],
"leveltype": 3,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3020
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 4,
"hero": 25001,
"chapter": 1001,
"onlevel": 3,
"onlevelstory": 0,
"level": 104,
"levellink": [
102,
103
],
"leveltype": 4,
"startstory": 0,
"battle": 0,
"reward": [],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 5,
"hero": 25001,
"chapter": 1001,
"onlevel": 4,
"onlevelstory": 0,
"level": 105,
"levellink": [
104
],
"leveltype": 5,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3040
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 6,
"hero": 25001,
"chapter": 1002,
"onlevel": 5,
"onlevelstory": 0,
"level": 101,
"levellink": [
102
],
"leveltype": 1,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3050
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 7,
"hero": 25001,
"chapter": 1002,
"onlevel": 6,
"onlevelstory": 0,
"level": 102,
"levellink": [
101,
103,
104
],
"leveltype": 2,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3060
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 8,
"hero": 25001,
"chapter": 1002,
"onlevel": 7,
"onlevelstory": 0,
"level": 103,
"levellink": [
102,
104
],
"leveltype": 3,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3070
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 9,
"hero": 25001,
"chapter": 1002,
"onlevel": 8,
"onlevelstory": 0,
"level": 104,
"levellink": [
102,
103
],
"leveltype": 4,
"startstory": 0,
"battle": 0,
"reward": [],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 10,
"hero": 25001,
"chapter": 1002,
"onlevel": 9,
"onlevelstory": 0,
"level": 105,
"levellink": [
104
],
"leveltype": 5,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3090
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 11,
"hero": 25001,
"chapter": 1003,
"onlevel": 10,
"onlevelstory": 0,
"level": 101,
"levellink": [
102
],
"leveltype": 1,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3100
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 12,
"hero": 25001,
"chapter": 1003,
"onlevel": 11,
"onlevelstory": 0,
"level": 102,
"levellink": [
101,
103,
104
],
"leveltype": 2,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3110
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 13,
"hero": 25001,
"chapter": 1003,
"onlevel": 12,
"onlevelstory": 0,
"level": 103,
"levellink": [
102,
104
],
"leveltype": 3,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3120
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 14,
"hero": 25001,
"chapter": 1003,
"onlevel": 13,
"onlevelstory": 0,
"level": 104,
"levellink": [
102,
103
],
"leveltype": 4,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3130
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 15,
"hero": 25001,
"chapter": 1003,
"onlevel": 14,
"onlevelstory": 0,
"level": 105,
"levellink": [
104
],
"leveltype": 5,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3140
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 16,
"hero": 25001,
"chapter": 1004,
"onlevel": 15,
"onlevelstory": 0,
"level": 101,
"levellink": [
102
],
"leveltype": 1,
"startstory": 10254,
"battle": 101,
"reward": [
{
"a": "attr",
"t": "gold",
"n": 3150
}
],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
},
{
"key": 17,
"hero": 25001,
"chapter": 1004,
"onlevel": 16,
"onlevelstory": 0,
"level": 102,
"levellink": [
101
],
"leveltype": 4,
"startstory": 0,
"battle": 0,
"reward": [],
"txt": {
"key": "",
"text": ""
},
"circle": "",
"qq": 0,
"icon": "",
"head": ""
}
]

View File

@ -340,5 +340,26 @@
},
"reword": [],
"duration": 720
},
{
"id": "Venturegifts",
"title": {
"key": "mail_mail_title_16",
"text": "转盘活动奖励转换"
},
"recipient": {
"key": "",
"text": ""
},
"content": {
"key": "",
"text": ""
},
"sender": {
"key": "",
"text": ""
},
"reword": [],
"duration": 0
}
]

View File

@ -238,725 +238,5 @@
},
"starreward": 11012,
"exploreward": 11012
},
{
"id": 12001,
"name": {
"key": "mainchapter_main_chapter_name_13",
"text": "智取邀请函"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_13",
"text": "13"
},
"desc": {
"key": "mainchapter_main_chapter_desc_13",
"text": "故事发生在很久以前的古代中国,而且要从一只喜欢滚来滚去、滚来滚去的大熊猫身上说起。话说熊猫阿宝是一家面条店的学徒,虽然笨手笨脚,也勉强算是谋到了一份职业。"
},
"starreward": 12001,
"exploreward": 12001
},
{
"id": 12002,
"name": {
"key": "mainchapter_main_chapter_name_14",
"text": "黑市风波"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_14",
"text": "14"
},
"desc": {
"key": "mainchapter_main_chapter_desc_14",
"text": "别看阿宝所在的“和平谷”一派欣欣向荣的安详景象,其实是一个卧虎藏龙的风水宝地,先不说五大功夫高手皆坐镇于此,更有一大师级别的宗师在这里隐居。"
},
"starreward": 12002,
"exploreward": 12002
},
{
"id": 12003,
"name": {
"key": "mainchapter_main_chapter_name_15",
"text": "小马王 · 一路向北"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_15",
"text": "15"
},
"desc": {
"key": "mainchapter_main_chapter_desc_15",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 12003,
"exploreward": 12003
},
{
"id": 12004,
"name": {
"key": "mainchapter_main_chapter_name_16",
"text": "海洋之歌"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_16",
"text": "16"
},
"desc": {
"key": "mainchapter_main_chapter_desc_16",
"text": "自负的毒蛇大师虽然给人的感觉稍显轻浮,但对这件事的态度就有如她善变的性格,不太明朗;螳螂大师算是几位高手中最聪明的一个,对阿宝的现状很是无奈,总是暗中帮忙。"
},
"starreward": 12004,
"exploreward": 12004
},
{
"id": 12005,
"name": {
"key": "mainchapter_main_chapter_name_17",
"text": "布兰奇的逃亡"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_17",
"text": "17"
},
"desc": {
"key": "mainchapter_main_chapter_desc_17",
"text": "最后要将阿宝调教成“功夫高手”的一代宗师“师父”华丽丽地出场了,然而有着一身好功夫并不意味着就是完美的,“师父”因为过去犯下的一个错误,一直纠结着没办法释然。"
},
"starreward": 12005,
"exploreward": 12005
},
{
"id": 12006,
"name": {
"key": "mainchapter_main_chapter_name_18",
"text": "配方奶工厂"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_18",
"text": "18"
},
"desc": {
"key": "mainchapter_main_chapter_desc_18",
"text": "至于那个让人人都如临大敌的太郎则是一只非常自恋的雪豹他等待复仇的这一天已经整整等了20年了可是他做梦也没想到自己等来的竟然是一只大熊猫。"
},
"starreward": 12006,
"exploreward": 12006
},
{
"id": 12007,
"name": {
"key": "mainchapter_main_chapter_name_19",
"text": "预言之声"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_19",
"text": "19"
},
"desc": {
"key": "mainchapter_main_chapter_desc_19",
"text": "激烈的战斗后,阿宝以自己对武功的悟性和师父传授的武术,战胜了太郎,拯救了山谷,为山谷带来了和平。"
},
"starreward": 12007,
"exploreward": 12007
},
{
"id": 12008,
"name": {
"key": "mainchapter_main_chapter_name_20",
"text": "大龙复仇记"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_20",
"text": "20"
},
"desc": {
"key": "mainchapter_main_chapter_desc_20",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 12008,
"exploreward": 12008
},
{
"id": 12009,
"name": {
"key": "mainchapter_main_chapter_name_21",
"text": "小偷与大盗"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_21",
"text": "21"
},
"desc": {
"key": "mainchapter_main_chapter_desc_21",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 12009,
"exploreward": 12009
},
{
"id": 12010,
"name": {
"key": "mainchapter_main_chapter_name_22",
"text": "智取邀请函"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_22",
"text": "22"
},
"desc": {
"key": "mainchapter_main_chapter_desc_22",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 12010,
"exploreward": 12010
},
{
"id": 12011,
"name": {
"key": "mainchapter_main_chapter_name_23",
"text": "黑市风波"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_23",
"text": "23"
},
"desc": {
"key": "mainchapter_main_chapter_desc_23",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 12011,
"exploreward": 12011
},
{
"id": 12012,
"name": {
"key": "mainchapter_main_chapter_name_24",
"text": "小马王 · 一路向北"
},
"chapter_type": 2,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_24",
"text": "24"
},
"desc": {
"key": "mainchapter_main_chapter_desc_24",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 12012,
"exploreward": 12012
},
{
"id": 13001,
"name": {
"key": "mainchapter_main_chapter_name_25",
"text": "海洋之歌"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_13",
"text": "25"
},
"desc": {
"key": "mainchapter_main_chapter_desc_13",
"text": "故事发生在很久以前的古代中国,而且要从一只喜欢滚来滚去、滚来滚去的大熊猫身上说起。话说熊猫阿宝是一家面条店的学徒,虽然笨手笨脚,也勉强算是谋到了一份职业。"
},
"starreward": 13001,
"exploreward": 13001
},
{
"id": 13002,
"name": {
"key": "mainchapter_main_chapter_name_26",
"text": "布兰奇的逃亡"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_14",
"text": "26"
},
"desc": {
"key": "mainchapter_main_chapter_desc_14",
"text": "别看阿宝所在的“和平谷”一派欣欣向荣的安详景象,其实是一个卧虎藏龙的风水宝地,先不说五大功夫高手皆坐镇于此,更有一大师级别的宗师在这里隐居。"
},
"starreward": 13002,
"exploreward": 13002
},
{
"id": 13003,
"name": {
"key": "mainchapter_main_chapter_name_27",
"text": "配方奶工厂"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_15",
"text": "27"
},
"desc": {
"key": "mainchapter_main_chapter_desc_15",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 13003,
"exploreward": 13003
},
{
"id": 13004,
"name": {
"key": "mainchapter_main_chapter_name_28",
"text": "预言之声"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_16",
"text": "28"
},
"desc": {
"key": "mainchapter_main_chapter_desc_16",
"text": "自负的毒蛇大师虽然给人的感觉稍显轻浮,但对这件事的态度就有如她善变的性格,不太明朗;螳螂大师算是几位高手中最聪明的一个,对阿宝的现状很是无奈,总是暗中帮忙。"
},
"starreward": 13004,
"exploreward": 13004
},
{
"id": 13005,
"name": {
"key": "mainchapter_main_chapter_name_29",
"text": "大龙复仇记"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_17",
"text": "29"
},
"desc": {
"key": "mainchapter_main_chapter_desc_17",
"text": "最后要将阿宝调教成“功夫高手”的一代宗师“师父”华丽丽地出场了,然而有着一身好功夫并不意味着就是完美的,“师父”因为过去犯下的一个错误,一直纠结着没办法释然。"
},
"starreward": 13005,
"exploreward": 13005
},
{
"id": 13006,
"name": {
"key": "mainchapter_main_chapter_name_30",
"text": "小偷与大盗"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_18",
"text": "30"
},
"desc": {
"key": "mainchapter_main_chapter_desc_18",
"text": "至于那个让人人都如临大敌的太郎则是一只非常自恋的雪豹他等待复仇的这一天已经整整等了20年了可是他做梦也没想到自己等来的竟然是一只大熊猫。"
},
"starreward": 13006,
"exploreward": 13006
},
{
"id": 13007,
"name": {
"key": "mainchapter_main_chapter_name_31",
"text": "智取邀请函"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_19",
"text": "31"
},
"desc": {
"key": "mainchapter_main_chapter_desc_19",
"text": "激烈的战斗后,阿宝以自己对武功的悟性和师父传授的武术,战胜了太郎,拯救了山谷,为山谷带来了和平。"
},
"starreward": 13007,
"exploreward": 13007
},
{
"id": 13008,
"name": {
"key": "mainchapter_main_chapter_name_32",
"text": "黑市风波"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_20",
"text": "32"
},
"desc": {
"key": "mainchapter_main_chapter_desc_20",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 13008,
"exploreward": 13008
},
{
"id": 13009,
"name": {
"key": "mainchapter_main_chapter_name_33",
"text": "小马王 · 一路向北"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_21",
"text": "33"
},
"desc": {
"key": "mainchapter_main_chapter_desc_21",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 13009,
"exploreward": 13009
},
{
"id": 13010,
"name": {
"key": "mainchapter_main_chapter_name_34",
"text": "海洋之歌"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_22",
"text": "34"
},
"desc": {
"key": "mainchapter_main_chapter_desc_22",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 13010,
"exploreward": 13010
},
{
"id": 13011,
"name": {
"key": "mainchapter_main_chapter_name_35",
"text": "布兰奇的逃亡"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_23",
"text": "35"
},
"desc": {
"key": "mainchapter_main_chapter_desc_23",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 13011,
"exploreward": 13011
},
{
"id": 13012,
"name": {
"key": "mainchapter_main_chapter_name_36",
"text": "配方奶工厂"
},
"chapter_type": 3,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_24",
"text": "36"
},
"desc": {
"key": "mainchapter_main_chapter_desc_24",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 13012,
"exploreward": 13012
},
{
"id": 14001,
"name": {
"key": "mainchapter_main_chapter_name_37",
"text": "预言之声"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_13",
"text": "37"
},
"desc": {
"key": "mainchapter_main_chapter_desc_13",
"text": "故事发生在很久以前的古代中国,而且要从一只喜欢滚来滚去、滚来滚去的大熊猫身上说起。话说熊猫阿宝是一家面条店的学徒,虽然笨手笨脚,也勉强算是谋到了一份职业。"
},
"starreward": 14001,
"exploreward": 14001
},
{
"id": 14002,
"name": {
"key": "mainchapter_main_chapter_name_38",
"text": "大龙复仇记"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_14",
"text": "38"
},
"desc": {
"key": "mainchapter_main_chapter_desc_14",
"text": "别看阿宝所在的“和平谷”一派欣欣向荣的安详景象,其实是一个卧虎藏龙的风水宝地,先不说五大功夫高手皆坐镇于此,更有一大师级别的宗师在这里隐居。"
},
"starreward": 14002,
"exploreward": 14002
},
{
"id": 14003,
"name": {
"key": "mainchapter_main_chapter_name_39",
"text": "小偷与大盗"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_15",
"text": "39"
},
"desc": {
"key": "mainchapter_main_chapter_desc_15",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 14003,
"exploreward": 14003
},
{
"id": 14004,
"name": {
"key": "mainchapter_main_chapter_name_40",
"text": "智取邀请函"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_16",
"text": "40"
},
"desc": {
"key": "mainchapter_main_chapter_desc_16",
"text": "自负的毒蛇大师虽然给人的感觉稍显轻浮,但对这件事的态度就有如她善变的性格,不太明朗;螳螂大师算是几位高手中最聪明的一个,对阿宝的现状很是无奈,总是暗中帮忙。"
},
"starreward": 14004,
"exploreward": 14004
},
{
"id": 14005,
"name": {
"key": "mainchapter_main_chapter_name_41",
"text": "黑市风波"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_17",
"text": "41"
},
"desc": {
"key": "mainchapter_main_chapter_desc_17",
"text": "最后要将阿宝调教成“功夫高手”的一代宗师“师父”华丽丽地出场了,然而有着一身好功夫并不意味着就是完美的,“师父”因为过去犯下的一个错误,一直纠结着没办法释然。"
},
"starreward": 14005,
"exploreward": 14005
},
{
"id": 14006,
"name": {
"key": "mainchapter_main_chapter_name_42",
"text": "小马王 · 一路向北"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_18",
"text": "42"
},
"desc": {
"key": "mainchapter_main_chapter_desc_18",
"text": "至于那个让人人都如临大敌的太郎则是一只非常自恋的雪豹他等待复仇的这一天已经整整等了20年了可是他做梦也没想到自己等来的竟然是一只大熊猫。"
},
"starreward": 14006,
"exploreward": 14006
},
{
"id": 14007,
"name": {
"key": "mainchapter_main_chapter_name_43",
"text": "海洋之歌"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_19",
"text": "43"
},
"desc": {
"key": "mainchapter_main_chapter_desc_19",
"text": "激烈的战斗后,阿宝以自己对武功的悟性和师父传授的武术,战胜了太郎,拯救了山谷,为山谷带来了和平。"
},
"starreward": 14007,
"exploreward": 14007
},
{
"id": 14008,
"name": {
"key": "mainchapter_main_chapter_name_44",
"text": "布兰奇的逃亡"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_20",
"text": "44"
},
"desc": {
"key": "mainchapter_main_chapter_desc_20",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 14008,
"exploreward": 14008
},
{
"id": 14009,
"name": {
"key": "mainchapter_main_chapter_name_45",
"text": "配方奶工厂"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_21",
"text": "45"
},
"desc": {
"key": "mainchapter_main_chapter_desc_21",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 14009,
"exploreward": 14009
},
{
"id": 14010,
"name": {
"key": "mainchapter_main_chapter_name_46",
"text": "预言之声"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_22",
"text": "46"
},
"desc": {
"key": "mainchapter_main_chapter_desc_22",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 14010,
"exploreward": 14010
},
{
"id": 14011,
"name": {
"key": "mainchapter_main_chapter_name_47",
"text": "大龙复仇记"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_23",
"text": "47"
},
"desc": {
"key": "mainchapter_main_chapter_desc_23",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 14011,
"exploreward": 14011
},
{
"id": 14012,
"name": {
"key": "mainchapter_main_chapter_name_48",
"text": "小偷与大盗"
},
"chapter_type": 4,
"map": "scenes_chapter_01",
"camera": "",
"title": {
"key": "mainchapter_main_chapter_title_24",
"text": "48"
},
"desc": {
"key": "mainchapter_main_chapter_desc_24",
"text": "可是在一场特殊的比武大会上胜出的人要代表“和平谷”将邪恶的大龙永久地驱除出去,啥都不会的阿宝却在经历了一系列阴差阳错之后屏雀中选,让所有人都大跌眼镜。"
},
"starreward": 14012,
"exploreward": 14012
}
]

File diff suppressed because it is too large Load Diff

View File

@ -96,6 +96,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100101
}
],
"wkqbx": 2,
@ -103,7 +107,7 @@
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_4",
"text": "主角等级达到1开启"
"text": "主线关卡通关达到第1章的第1关开启"
},
"uiid": 0,
"activateType": 0,
@ -115,7 +119,16 @@
"key": "opencond_opencond_name_6",
"text": "商城"
},
"main": [],
"main": [
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100108
}
],
"wkqbx": 2,
"kqbx": 0,
"img": "zc_icon_01",
@ -183,6 +196,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100108
}
],
"wkqbx": 2,
@ -190,7 +207,7 @@
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_8",
"text": "主角等级达到1开启"
"text": "主线关卡通关达到第1章的第8关开启"
},
"uiid": 0,
"activateType": 0,
@ -229,6 +246,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100101
}
],
"wkqbx": 0,
@ -236,7 +257,7 @@
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_10",
"text": "主角等级达到1开启"
"text": "主线关卡通关达到第1章的第1关开启"
},
"uiid": 166,
"activateType": 0,
@ -252,6 +273,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100101
}
],
"wkqbx": 2,
@ -259,7 +284,7 @@
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_11",
"text": "主角等级达到1开启"
"text": "主线关卡通关达到第1章的第1关开启"
},
"uiid": 0,
"activateType": 0,
@ -298,6 +323,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100101
}
],
"wkqbx": 0,
@ -305,7 +334,7 @@
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_13",
"text": "主角等级达到1开启"
"text": "主线关卡通关达到第1章的第1关开启"
},
"uiid": 0,
"activateType": 0,
@ -367,6 +396,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100404
}
],
"wkqbx": 0,
@ -374,7 +407,7 @@
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_16",
"text": "主角等级达到1开启"
"text": "主线关卡通关达到第4章的第4关开启"
},
"uiid": 0,
"activateType": 0,
@ -436,6 +469,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100108
}
],
"wkqbx": 0,
@ -443,7 +480,7 @@
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_19",
"text": "主角等级达到1开启"
"text": "主线关卡通关达到第1章的第8关开启"
},
"uiid": 0,
"activateType": 0,
@ -615,6 +652,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100608
}
],
"wkqbx": 2,
@ -622,7 +663,7 @@
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_27",
"text": "主角等级达到999开启"
"text": "主线关卡通关达到第6章的第8关开启"
},
"uiid": 0,
"activateType": 0,
@ -661,6 +702,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100404
}
],
"wkqbx": 0,
@ -668,7 +713,7 @@
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_29",
"text": "主角等级达到1开启"
"text": "主线关卡通关达到第4章的第4关开启"
},
"uiid": 0,
"activateType": 0,
@ -680,13 +725,22 @@
"key": "opencond_opencond_name_31",
"text": "狩猎"
},
"main": [],
"main": [
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100208
}
],
"wkqbx": 0,
"kqbx": 0,
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_30",
"text": "主线关卡通关达到第3章的第8关开启"
"text": "主线关卡通关达到第2章的第8关开启"
},
"uiid": 168,
"activateType": 0,
@ -835,6 +889,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100304
}
],
"wkqbx": 0,
@ -854,7 +912,16 @@
"key": "opencond_opencond_name_39",
"text": "竞技场"
},
"main": [],
"main": [
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100508
}
],
"wkqbx": 0,
"kqbx": 0,
"img": "zc_icon_01",
@ -1221,6 +1288,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100408
}
],
"wkqbx": 0,
@ -1465,13 +1536,18 @@
"key": "opencond_opencond_name_66",
"text": "功夫大师挑战塔"
},
"main": [],
"main": [
{
"key": 2,
"param": 1100308
}
],
"wkqbx": 1,
"kqbx": 0,
"img": "",
"prompt": {
"key": "opencond_opencond_prompt_65",
"text": "主线关卡通关达到第2章的第8关开启"
"text": "主线关卡通关达到第3章的第8关开启"
},
"uiid": 10004,
"activateType": 0,
@ -1581,7 +1657,16 @@
"key": "opencond_opencond_name_71",
"text": "经验副本"
},
"main": [],
"main": [
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100204
}
],
"wkqbx": 0,
"kqbx": 0,
"img": "",
@ -1653,6 +1738,10 @@
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100808
}
],
"wkqbx": 0,
@ -1695,13 +1784,22 @@
"key": "opencond_opencond_name_76",
"text": "波比周常"
},
"main": [],
"main": [
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100604
}
],
"wkqbx": 0,
"kqbx": 0,
"img": "",
"prompt": {
"key": "opencond_opencond_prompt_75",
"text": "主线关卡通关达到第2章的第8关开启"
"text": "主线关卡通关达到第6章的第4关开启"
},
"uiid": 0,
"activateType": 0,
@ -1715,8 +1813,12 @@
},
"main": [
{
"key": 3,
"param": 20080
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100108
}
],
"wkqbx": 0,
@ -1724,7 +1826,7 @@
"img": "",
"prompt": {
"key": "opencond_opencond_prompt_76",
"text": "主线关卡通关达到第5章的第4关开启"
"text": "主线关卡通关达到第1章的第8关开启"
},
"uiid": 0,
"activateType": 0,
@ -1736,7 +1838,16 @@
"key": "opencond_opencond_name_78",
"text": "悬赏任务"
},
"main": [],
"main": [
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100504
}
],
"wkqbx": 0,
"kqbx": 0,
"img": "",
@ -1754,13 +1865,22 @@
"key": "opencond_opencond_name_79",
"text": "拼图签到"
},
"main": [],
"main": [
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100108
}
],
"wkqbx": 0,
"kqbx": 0,
"img": "",
"prompt": {
"key": "opencond_opencond_prompt_78",
"text": "主线关卡通关达到第6章的第4关开启"
"text": "主线关卡通关达到第1章的第8关开启"
},
"uiid": 0,
"activateType": 0,
@ -1817,13 +1937,22 @@
"key": "opencond_opencond_name_82",
"text": "阵营塔"
},
"main": [],
"main": [
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1101208
}
],
"wkqbx": 0,
"kqbx": 0,
"img": "",
"prompt": {
"key": "opencond_opencond_prompt_81",
"text": ""
"text": "主线关卡通关达到第12章的第8关开启"
},
"uiid": 0,
"activateType": 0,
@ -1856,7 +1985,11 @@
"main": [
{
"key": 1,
"param": 20
"param": 1
},
{
"key": 2,
"param": 1101008
}
],
"wkqbx": 2,
@ -1864,7 +1997,34 @@
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_83",
"text": "主角等级达到20开启"
"text": "主线关卡通关达到第10章的第8关开启"
},
"uiid": 0,
"activateType": 0,
"notify": []
},
{
"id": "Stone",
"name": {
"key": "opencond_opencond_name_85",
"text": "石阵秘镜"
},
"main": [
{
"key": 1,
"param": 1
},
{
"key": 2,
"param": 1100408
}
],
"wkqbx": 2,
"kqbx": 0,
"img": "zc_icon_01",
"prompt": {
"key": "opencond_opencond_prompt_84",
"text": "主线关卡通关达到第4章的第8关开启"
},
"uiid": 0,
"activateType": 0,

View File

@ -11,6 +11,7 @@
"resources": "Person/10000/10000M.prefab",
"vague": "Person/10000/10000MT.prefab",
"pvpAnimator": "Person/10000/10000_MPvp.controller",
"mainq": "Person/10000/10000M_q.prefab",
"playerhead": "tx_js_nz",
"name": {
"key": "playerinfor_playerinfor_overview_name_1",
@ -29,6 +30,7 @@
"resources": "Person/10000/10000W.prefab",
"vague": "Person/10000/10000WT.prefab",
"pvpAnimator": "Person/10000/10000_WPvp.controller",
"mainq": "Person/10000/10000W_q.prefab",
"playerhead": "tx_js_nvz",
"name": {
"key": "playerinfor_playerinfor_overview_name_2",
@ -47,6 +49,7 @@
"resources": "",
"vague": "",
"pvpAnimator": "",
"mainq": "",
"playerhead": "tx_js_nz",
"name": {
"key": "playerinfor_playerinfor_overview_name_3",
@ -65,6 +68,7 @@
"resources": "",
"vague": "",
"pvpAnimator": "",
"mainq": "",
"playerhead": "tx_js_nvz",
"name": {
"key": "playerinfor_playerinfor_overview_name_4",
@ -83,6 +87,7 @@
"resources": "",
"vague": "",
"pvpAnimator": "",
"mainq": "",
"playerhead": "tx_js_nz",
"name": {
"key": "playerinfor_playerinfor_overview_name_5",
@ -101,6 +106,7 @@
"resources": "",
"vague": "",
"pvpAnimator": "",
"mainq": "",
"playerhead": "tx_js_nvz",
"name": {
"key": "playerinfor_playerinfor_overview_name_6",

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,115 @@
[
{
"Id": 1,
"StoryGroupId": 10001,
"StepId": 1,
"StoryDesc": {
"key": "text_1",
"text": "测试文本1"
},
"OptionEventIdGroup1": [],
"EndEventId1": 0,
"OptionDesc1": {
"key": "",
"text": ""
},
"OptionEventIdGroup2": [],
"EndEventId2": 0,
"OptionDesc2": {
"key": "",
"text": ""
},
"OptionEventIdGroup3": [
"-1"
],
"EndEventId3": -1,
"OptionDesc3": {
"key": "",
"text": ""
}
},
{
"Id": 2,
"StoryGroupId": 10001,
"StepId": 2,
"StoryDesc": {
"key": "text_2",
"text": "测试文本1"
},
"OptionEventIdGroup1": [
"25100001,50,3",
"25100002,70,3"
],
"EndEventId1": 0,
"OptionDesc1": {
"key": "text_2",
"text": "测试文本1"
},
"OptionEventIdGroup2": [],
"EndEventId2": 0,
"OptionDesc2": {
"key": "",
"text": ""
},
"OptionEventIdGroup3": [],
"EndEventId3": 0,
"OptionDesc3": {
"key": "",
"text": ""
}
},
{
"Id": 3,
"StoryGroupId": 10001,
"StepId": 3,
"StoryDesc": {
"key": "text_3",
"text": "测试文本1"
},
"OptionEventIdGroup1": [],
"EndEventId1": 0,
"OptionDesc1": {
"key": "",
"text": ""
},
"OptionEventIdGroup2": [],
"EndEventId2": 0,
"OptionDesc2": {
"key": "",
"text": ""
},
"OptionEventIdGroup3": [],
"EndEventId3": 0,
"OptionDesc3": {
"key": "",
"text": ""
}
},
{
"Id": 4,
"StoryGroupId": 10001,
"StepId": 4,
"StoryDesc": {
"key": "text_4",
"text": "测试文本1"
},
"OptionEventIdGroup1": [],
"EndEventId1": -1,
"OptionDesc1": {
"key": "",
"text": ""
},
"OptionEventIdGroup2": [],
"EndEventId2": 0,
"OptionDesc2": {
"key": "",
"text": ""
},
"OptionEventIdGroup3": [],
"EndEventId3": 0,
"OptionDesc3": {
"key": "",
"text": ""
}
}
]

View File

@ -0,0 +1 @@
[]

View File

@ -0,0 +1,152 @@
[
{
"id": 1,
"rewarditem": [
{
"a": "attr",
"t": "gold",
"n": 500
}
],
"point": {
"a": "item",
"t": "10000038",
"n": 500
}
},
{
"id": 2,
"rewarditem": [
{
"a": "attr",
"t": "gold",
"n": 500
}
],
"point": {
"a": "item",
"t": "10000038",
"n": 1000
}
},
{
"id": 3,
"rewarditem": [
{
"a": "attr",
"t": "gold",
"n": 500
}
],
"point": {
"a": "item",
"t": "10000038",
"n": 1500
}
},
{
"id": 4,
"rewarditem": [
{
"a": "attr",
"t": "gold",
"n": 500
}
],
"point": {
"a": "item",
"t": "10000038",
"n": 2000
}
},
{
"id": 5,
"rewarditem": [
{
"a": "attr",
"t": "gold",
"n": 500
}
],
"point": {
"a": "item",
"t": "10000038",
"n": 2500
}
},
{
"id": 6,
"rewarditem": [
{
"a": "attr",
"t": "gold",
"n": 500
}
],
"point": {
"a": "item",
"t": "10000038",
"n": 3000
}
},
{
"id": 7,
"rewarditem": [
{
"a": "attr",
"t": "gold",
"n": 500
}
],
"point": {
"a": "item",
"t": "10000038",
"n": 3500
}
},
{
"id": 8,
"rewarditem": [
{
"a": "attr",
"t": "gold",
"n": 500
}
],
"point": {
"a": "item",
"t": "10000038",
"n": 4000
}
},
{
"id": 9,
"rewarditem": [
{
"a": "attr",
"t": "gold",
"n": 500
}
],
"point": {
"a": "item",
"t": "10000038",
"n": 4500
}
},
{
"id": 10,
"rewarditem": [
{
"a": "attr",
"t": "gold",
"n": 500
}
],
"point": {
"a": "item",
"t": "10000038",
"n": 5000
}
}
]

20
modules/storyline/api.go Normal file
View File

@ -0,0 +1,20 @@
package storyline
import (
"go_dreamfactory/lego/base"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
)
type apiComp struct {
modules.MCompGate
service base.IRPCXService
module *StoryLine
}
func (this *apiComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
_ = this.MCompGate.Init(service, module, comp, options)
this.service = service.(base.IRPCXService)
this.module = module.(*StoryLine)
return
}

View File

@ -0,0 +1,35 @@
package storyline
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
)
// 参数校验
func (this *apiComp) InfoCheck(session comm.IUserSession, req *pb.StorylineInfoReq) (errdata *pb.ErrorData) {
return
}
// /获取自己的排行榜信息
func (this *apiComp) Info(session comm.IUserSession, req *pb.StorylineInfoReq) (errdata *pb.ErrorData) {
var (
info *pb.DBStoryline
err error
)
if errdata = this.InfoCheck(session, req); errdata != nil {
return
}
if info, err = this.module.modeltask.getUserDTasks(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
session.SendMsg(string(this.module.GetType()), "info", &pb.StorylineInfoResp{Item: info.Item})
return
}

View File

@ -0,0 +1,76 @@
package storyline
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/sys/log"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
)
// 参数校验
func (this *apiComp) BattleCheck(session comm.IUserSession, req *pb.StorylineBattleReq) (errdata *pb.ErrorData) {
if req.Level == 0 || req.Battle == nil {
this.module.Error("战斗开始参数错误",
log.Field{Key: "uid", Value: session.GetUserId()},
log.Field{Key: "params", Value: req.String()},
)
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
Message: "BattleConfId is 0",
}
}
return
}
// /获取系统公告
func (this *apiComp) Battle(session comm.IUserSession, req *pb.StorylineBattleReq) (errdata *pb.ErrorData) {
var (
conf *cfg.GameHeroupstoryChapterData
bconf *cfg.GameHeroupstoryBattleData
record *pb.DBBattleRecord
err error
)
if errdata = this.BattleCheck(session, req); errdata != nil {
return
}
if conf, err = this.module.configure.getGameHeroupstoryChapter(req.Level); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if bconf, err = this.module.configure.getGameHeroupstoryBattle(conf.Battle); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if errdata, record = this.module.battle.CreatePveBattle(session, &pb.BattlePVEReq{
Rulesid: bconf.BattleReadyID,
Ptype: pb.PlayType_rtask,
Format: req.Battle,
Mformat: bconf.FormatList,
}); err != nil {
return
}
session.SendMsg(string(this.module.GetType()), "battle", &pb.StorylineBattleResp{
Level: req.Level,
Info: &pb.BattleInfo{
Id: record.Id,
Rulesid: bconf.BattleReadyID,
Btype: record.Btype,
Ptype: record.Ptype,
RedCompId: record.RedCompId,
Redflist: record.Redflist,
BlueCompId: record.BlueCompId,
Buleflist: record.Buleflist,
Tasks: record.Tasks,
},
})
return
}

View File

@ -0,0 +1,81 @@
package storyline
import (
"fmt"
"go_dreamfactory/comm"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
)
// 参数校验
func (this *apiComp) CompleteCheck(session comm.IUserSession, req *pb.StorylineCompleteReq) (errdata *pb.ErrorData) {
return
}
// /获取自己的排行榜信息
func (this *apiComp) Complete(session comm.IUserSession, req *pb.StorylineCompleteReq) (errdata *pb.ErrorData) {
var (
info *pb.DBStoryline
item *pb.DBStorylineItem
conf *cfg.GameHeroupstoryChapterData
award []*pb.UserAssets
ok bool
err error
)
if errdata = this.CompleteCheck(session, req); errdata != nil {
return
}
if conf, err = this.module.configure.getGameHeroupstoryChapter(req.Level); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if info, err = this.module.modeltask.getUserDTasks(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_DBError,
Title: pb.ErrorCode_DBError.ToString(),
Message: err.Error(),
}
return
}
if item, ok = info.Item[conf.Hero]; !ok {
info.Item[conf.Hero] = &pb.DBStorylineItem{
Id: conf.Hero,
Level: make(map[int32]int32),
}
item = info.Item[conf.Hero]
}
if item.Level[req.Level] != 0 {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
Message: fmt.Sprintf("%d received", req.Level),
}
return
}
if errdata = this.module.DispenseRes(session, conf.Reward, true); errdata != nil {
return
}
award = make([]*pb.UserAssets, 0)
for _, v := range conf.Reward {
award = append(award, &pb.UserAssets{
A: v.A,
T: v.T,
N: v.N,
})
}
item.Level[req.Level] = 1
this.module.modeltask.Change(session.GetUserId(), map[string]interface{}{
"item": info.Item,
})
session.SendMsg(string(this.module.GetType()), "complete", &pb.StorylineCompleteResp{Level: req.Level, Award: award})
return
}

View File

@ -0,0 +1,81 @@
package storyline
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
cfg "go_dreamfactory/sys/configure/structs"
"sync"
)
const (
game_heroupstory = "game_heroupstory.json"
game_heroupstorybattle = "game_heroupstorybattle.json"
game_heroupstorychapter = "game_heroupstorychapter.json"
)
type configureComp struct {
modules.MCompConfigure
module *StoryLine
lock sync.RWMutex
tasks map[int32]struct{}
groupTasks map[int32][]*cfg.GameVenturegiftsTaskData //key 条件ID
}
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.(*StoryLine)
err = this.LoadMultiConfigure(map[string]interface{}{
game_heroupstory: cfg.NewGameHeroupstory,
game_heroupstorybattle: cfg.NewGameHeroupstoryBattle,
game_heroupstorychapter: cfg.NewGameHeroupstoryChapter,
})
// configure.RegisterConfigure(game_venturegiftstask, cfg.NewGameVenturegiftsTask, this.updateconfigure)
return
}
func (this *configureComp) getGameHeroupstory() (confs []*cfg.GameHeroupstoryData, err error) {
var (
v interface{}
)
if v, err = this.GetConfigure(game_heroupstory); err != nil {
return
} else {
confs = v.(*cfg.GameHeroupstory).GetDataList()
}
return
}
func (this *configureComp) getGameHeroupstoryChapter(id int32) (conf *cfg.GameHeroupstoryChapterData, err error) {
var (
v interface{}
ok bool
)
if v, err = this.GetConfigure(game_heroupstorychapter); err != nil {
return
} else {
if conf, ok = v.(*cfg.GameHeroupstoryChapter).GetDataMap()[id]; !ok {
err = comm.NewNotFoundConfErr(string(this.module.GetType()), game_heroupstorychapter, id)
this.module.Errorf("err:%v", err)
return
}
}
return
}
func (this *configureComp) getGameHeroupstoryBattle(id int32) (conf *cfg.GameHeroupstoryBattleData, err error) {
var (
v interface{}
ok bool
)
if v, err = this.GetConfigure(game_heroupstorybattle); err != nil {
return
} else {
if conf, ok = v.(*cfg.GameHeroupstoryBattle).GetDataMap()[id]; !ok {
err = comm.NewNotFoundConfErr(string(this.module.GetType()), game_heroupstorybattle, id)
this.module.Errorf("err:%v", err)
return
}
}
return
}

View File

@ -0,0 +1,46 @@
package storyline
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/lego/sys/mgo"
"go_dreamfactory/modules"
"go_dreamfactory/pb"
"go.mongodb.org/mongo-driver/bson/primitive"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/x/bsonx"
)
type Modeltask struct {
modules.MCompModel
module *StoryLine
}
func (this *Modeltask) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
err = this.MCompModel.Init(service, module, comp, options)
this.TableName = comm.Tablekftask
this.module = module.(*StoryLine)
this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{
Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}},
})
return
}
// 获取用户全部的埋点数据
func (this *Modeltask) getUserDTasks(uid string) (results *pb.DBStoryline, err error) {
results = &pb.DBStoryline{}
if err = this.Get(uid, results); err != nil && err != mgo.MongodbNil {
this.module.Errorln(err)
return
}
if err == mgo.MongodbNil {
results = &pb.DBStoryline{
Id: primitive.NewObjectID().Hex(),
Uid: uid,
Item: make(map[int32]*pb.DBStorylineItem),
}
err = this.Add(uid, results)
}
return
}

View File

@ -0,0 +1,47 @@
package storyline
import (
"go_dreamfactory/comm"
"go_dreamfactory/lego/core"
"go_dreamfactory/modules"
)
type StoryLine struct {
modules.ModuleBase
service core.IService
api *apiComp
configure *configureComp
modeltask *Modeltask
battle comm.IBattle
}
func NewModule() core.IModule {
return &StoryLine{}
}
func (this *StoryLine) GetType() core.M_Modules {
return comm.ModuleKFTask
}
func (this *StoryLine) Init(service core.IService, module core.IModule, options core.IModuleOptions) (err error) {
err = this.ModuleBase.Init(service, module, options)
this.service = service
return
}
func (this *StoryLine) Start() (err error) {
err = this.ModuleBase.Start()
var module core.IModule
if module, err = this.service.GetModule(comm.ModuleBattle); err != nil {
return
}
this.battle = module.(comm.IBattle)
return
}
func (this *StoryLine) OnInstallComp() {
this.ModuleBase.OnInstallComp()
this.api = this.RegisterComp(new(apiComp)).(*apiComp)
this.modeltask = this.RegisterComp(new(Modeltask)).(*Modeltask)
this.configure = this.RegisterComp(new(configureComp)).(*configureComp)
}

View File

@ -90,7 +90,7 @@ type DBHeroItem struct {
unknownFields protoimpl.UnknownFields
Heroid int32 `protobuf:"varint,1,opt,name=heroid,proto3" json:"heroid"`
Stage map[int32]int32 `protobuf:"bytes,2,rep,name=stage,proto3" json:"stage" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
Stage map[int32]int32 `protobuf:"bytes,2,rep,name=stage,proto3" json:"stage" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //key 阶段 value 0未领取 1已领取
}
func (x *DBHeroItem) Reset() {

257
pb/storyline_db.pb.go Normal file
View File

@ -0,0 +1,257 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc v3.20.0
// source: storyline/storyline_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 DBStoryline 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"`
Cd int32 `protobuf:"varint,3,opt,name=cd,proto3" json:"cd"` //cd
Item map[int32]*DBStorylineItem `protobuf:"bytes,4,rep,name=item,proto3" json:"item" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` //英雄关卡信息
}
func (x *DBStoryline) Reset() {
*x = DBStoryline{}
if protoimpl.UnsafeEnabled {
mi := &file_storyline_storyline_db_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DBStoryline) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DBStoryline) ProtoMessage() {}
func (x *DBStoryline) ProtoReflect() protoreflect.Message {
mi := &file_storyline_storyline_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 DBStoryline.ProtoReflect.Descriptor instead.
func (*DBStoryline) Descriptor() ([]byte, []int) {
return file_storyline_storyline_db_proto_rawDescGZIP(), []int{0}
}
func (x *DBStoryline) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *DBStoryline) GetUid() string {
if x != nil {
return x.Uid
}
return ""
}
func (x *DBStoryline) GetCd() int32 {
if x != nil {
return x.Cd
}
return 0
}
func (x *DBStoryline) GetItem() map[int32]*DBStorylineItem {
if x != nil {
return x.Item
}
return nil
}
type DBStorylineItem struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id"`
Level map[int32]int32 `protobuf:"bytes,2,rep,name=level,proto3" json:"level" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` //key 关卡id value 0或者不存在 表示未通关 不等于 0表示通关 不等于 1 表示 选择的剧情id
}
func (x *DBStorylineItem) Reset() {
*x = DBStorylineItem{}
if protoimpl.UnsafeEnabled {
mi := &file_storyline_storyline_db_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DBStorylineItem) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DBStorylineItem) ProtoMessage() {}
func (x *DBStorylineItem) ProtoReflect() protoreflect.Message {
mi := &file_storyline_storyline_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 DBStorylineItem.ProtoReflect.Descriptor instead.
func (*DBStorylineItem) Descriptor() ([]byte, []int) {
return file_storyline_storyline_db_proto_rawDescGZIP(), []int{1}
}
func (x *DBStorylineItem) GetId() int32 {
if x != nil {
return x.Id
}
return 0
}
func (x *DBStorylineItem) GetLevel() map[int32]int32 {
if x != nil {
return x.Level
}
return nil
}
var File_storyline_storyline_db_proto protoreflect.FileDescriptor
var file_storyline_storyline_db_proto_rawDesc = []byte{
0x0a, 0x1c, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x2f, 0x73, 0x74, 0x6f, 0x72,
0x79, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb6,
0x01, 0x0a, 0x0b, 0x44, 0x42, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 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, 0x0e, 0x0a, 0x02, 0x63, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x63, 0x64,
0x12, 0x2a, 0x0a, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16,
0x2e, 0x44, 0x42, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x49, 0x74, 0x65,
0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x1a, 0x49, 0x0a, 0x09,
0x49, 0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x44, 0x42, 0x53,
0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8e, 0x01, 0x0a, 0x0f, 0x44, 0x42, 0x53, 0x74,
0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69,
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x31, 0x0a, 0x05, 0x6c,
0x65, 0x76, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x44, 0x42, 0x53,
0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x4c, 0x65, 0x76,
0x65, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x38,
0x0a, 0x0a, 0x4c, 0x65, 0x76, 0x65, 0x6c, 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, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_storyline_storyline_db_proto_rawDescOnce sync.Once
file_storyline_storyline_db_proto_rawDescData = file_storyline_storyline_db_proto_rawDesc
)
func file_storyline_storyline_db_proto_rawDescGZIP() []byte {
file_storyline_storyline_db_proto_rawDescOnce.Do(func() {
file_storyline_storyline_db_proto_rawDescData = protoimpl.X.CompressGZIP(file_storyline_storyline_db_proto_rawDescData)
})
return file_storyline_storyline_db_proto_rawDescData
}
var file_storyline_storyline_db_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
var file_storyline_storyline_db_proto_goTypes = []interface{}{
(*DBStoryline)(nil), // 0: DBStoryline
(*DBStorylineItem)(nil), // 1: DBStorylineItem
nil, // 2: DBStoryline.ItemEntry
nil, // 3: DBStorylineItem.LevelEntry
}
var file_storyline_storyline_db_proto_depIdxs = []int32{
2, // 0: DBStoryline.item:type_name -> DBStoryline.ItemEntry
3, // 1: DBStorylineItem.level:type_name -> DBStorylineItem.LevelEntry
1, // 2: DBStoryline.ItemEntry.value:type_name -> DBStorylineItem
3, // [3:3] is the sub-list for method output_type
3, // [3:3] is the sub-list for method input_type
3, // [3:3] is the sub-list for extension type_name
3, // [3:3] is the sub-list for extension extendee
0, // [0:3] is the sub-list for field type_name
}
func init() { file_storyline_storyline_db_proto_init() }
func file_storyline_storyline_db_proto_init() {
if File_storyline_storyline_db_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_storyline_storyline_db_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DBStoryline); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_storyline_storyline_db_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DBStorylineItem); 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_storyline_storyline_db_proto_rawDesc,
NumEnums: 0,
NumMessages: 4,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_storyline_storyline_db_proto_goTypes,
DependencyIndexes: file_storyline_storyline_db_proto_depIdxs,
MessageInfos: file_storyline_storyline_db_proto_msgTypes,
}.Build()
File_storyline_storyline_db_proto = out.File
file_storyline_storyline_db_proto_rawDesc = nil
file_storyline_storyline_db_proto_goTypes = nil
file_storyline_storyline_db_proto_depIdxs = nil
}

537
pb/storyline_msg.pb.go Normal file
View File

@ -0,0 +1,537 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc v3.20.0
// source: storyline/storyline_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 StorylineInfoReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *StorylineInfoReq) Reset() {
*x = StorylineInfoReq{}
if protoimpl.UnsafeEnabled {
mi := &file_storyline_storyline_msg_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StorylineInfoReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StorylineInfoReq) ProtoMessage() {}
func (x *StorylineInfoReq) ProtoReflect() protoreflect.Message {
mi := &file_storyline_storyline_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 StorylineInfoReq.ProtoReflect.Descriptor instead.
func (*StorylineInfoReq) Descriptor() ([]byte, []int) {
return file_storyline_storyline_msg_proto_rawDescGZIP(), []int{0}
}
//故事线 请求 回应
type StorylineInfoResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Item map[int32]*DBStorylineItem `protobuf:"bytes,1,rep,name=item,proto3" json:"item" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` //英雄关卡信息
}
func (x *StorylineInfoResp) Reset() {
*x = StorylineInfoResp{}
if protoimpl.UnsafeEnabled {
mi := &file_storyline_storyline_msg_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StorylineInfoResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StorylineInfoResp) ProtoMessage() {}
func (x *StorylineInfoResp) ProtoReflect() protoreflect.Message {
mi := &file_storyline_storyline_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 StorylineInfoResp.ProtoReflect.Descriptor instead.
func (*StorylineInfoResp) Descriptor() ([]byte, []int) {
return file_storyline_storyline_msg_proto_rawDescGZIP(), []int{1}
}
func (x *StorylineInfoResp) GetItem() map[int32]*DBStorylineItem {
if x != nil {
return x.Item
}
return nil
}
//故事线 战斗 请求
type StorylineBattleReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Level int32 `protobuf:"varint,1,opt,name=level,proto3" json:"level"`
Battle *BattleFormation `protobuf:"bytes,2,opt,name=battle,proto3" json:"battle"` //战斗类型
}
func (x *StorylineBattleReq) Reset() {
*x = StorylineBattleReq{}
if protoimpl.UnsafeEnabled {
mi := &file_storyline_storyline_msg_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StorylineBattleReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StorylineBattleReq) ProtoMessage() {}
func (x *StorylineBattleReq) ProtoReflect() protoreflect.Message {
mi := &file_storyline_storyline_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 StorylineBattleReq.ProtoReflect.Descriptor instead.
func (*StorylineBattleReq) Descriptor() ([]byte, []int) {
return file_storyline_storyline_msg_proto_rawDescGZIP(), []int{2}
}
func (x *StorylineBattleReq) GetLevel() int32 {
if x != nil {
return x.Level
}
return 0
}
func (x *StorylineBattleReq) GetBattle() *BattleFormation {
if x != nil {
return x.Battle
}
return nil
}
//故事线 战斗 回应
type StorylineBattleResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Level int32 `protobuf:"varint,1,opt,name=level,proto3" json:"level"`
Info *BattleInfo `protobuf:"bytes,2,opt,name=info,proto3" json:"info"` //战斗信息
}
func (x *StorylineBattleResp) Reset() {
*x = StorylineBattleResp{}
if protoimpl.UnsafeEnabled {
mi := &file_storyline_storyline_msg_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StorylineBattleResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StorylineBattleResp) ProtoMessage() {}
func (x *StorylineBattleResp) ProtoReflect() protoreflect.Message {
mi := &file_storyline_storyline_msg_proto_msgTypes[3]
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 StorylineBattleResp.ProtoReflect.Descriptor instead.
func (*StorylineBattleResp) Descriptor() ([]byte, []int) {
return file_storyline_storyline_msg_proto_rawDescGZIP(), []int{3}
}
func (x *StorylineBattleResp) GetLevel() int32 {
if x != nil {
return x.Level
}
return 0
}
func (x *StorylineBattleResp) GetInfo() *BattleInfo {
if x != nil {
return x.Info
}
return nil
}
//故事线 关卡完成 请求
type StorylineCompleteReq struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Level int32 `protobuf:"varint,1,opt,name=level,proto3" json:"level"`
Story int32 `protobuf:"varint,2,opt,name=story,proto3" json:"story"`
Report *BattleReport `protobuf:"bytes,3,opt,name=report,proto3" json:"report"` //战报 打怪事件完成需要提交战报
}
func (x *StorylineCompleteReq) Reset() {
*x = StorylineCompleteReq{}
if protoimpl.UnsafeEnabled {
mi := &file_storyline_storyline_msg_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StorylineCompleteReq) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StorylineCompleteReq) ProtoMessage() {}
func (x *StorylineCompleteReq) ProtoReflect() protoreflect.Message {
mi := &file_storyline_storyline_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 StorylineCompleteReq.ProtoReflect.Descriptor instead.
func (*StorylineCompleteReq) Descriptor() ([]byte, []int) {
return file_storyline_storyline_msg_proto_rawDescGZIP(), []int{4}
}
func (x *StorylineCompleteReq) GetLevel() int32 {
if x != nil {
return x.Level
}
return 0
}
func (x *StorylineCompleteReq) GetStory() int32 {
if x != nil {
return x.Story
}
return 0
}
func (x *StorylineCompleteReq) GetReport() *BattleReport {
if x != nil {
return x.Report
}
return nil
}
//故事线 关卡完成 回应
type StorylineCompleteResp struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Level int32 `protobuf:"varint,1,opt,name=level,proto3" json:"level"`
Story int32 `protobuf:"varint,2,opt,name=story,proto3" json:"story"`
Award []*UserAssets `protobuf:"bytes,3,rep,name=award,proto3" json:"award"` //奖励
}
func (x *StorylineCompleteResp) Reset() {
*x = StorylineCompleteResp{}
if protoimpl.UnsafeEnabled {
mi := &file_storyline_storyline_msg_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StorylineCompleteResp) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StorylineCompleteResp) ProtoMessage() {}
func (x *StorylineCompleteResp) ProtoReflect() protoreflect.Message {
mi := &file_storyline_storyline_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 StorylineCompleteResp.ProtoReflect.Descriptor instead.
func (*StorylineCompleteResp) Descriptor() ([]byte, []int) {
return file_storyline_storyline_msg_proto_rawDescGZIP(), []int{5}
}
func (x *StorylineCompleteResp) GetLevel() int32 {
if x != nil {
return x.Level
}
return 0
}
func (x *StorylineCompleteResp) GetStory() int32 {
if x != nil {
return x.Story
}
return 0
}
func (x *StorylineCompleteResp) GetAward() []*UserAssets {
if x != nil {
return x.Award
}
return nil
}
var File_storyline_storyline_msg_proto protoreflect.FileDescriptor
var file_storyline_storyline_msg_proto_rawDesc = []byte{
0x0a, 0x1d, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x2f, 0x73, 0x74, 0x6f, 0x72,
0x79, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
0x1c, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x79,
0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x62,
0x61, 0x74, 0x74, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x5f, 0x6d, 0x73, 0x67,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x2e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x22, 0x12, 0x0a, 0x10, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x49,
0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x22, 0x90, 0x01, 0x0a, 0x11, 0x53, 0x74, 0x6f, 0x72, 0x79,
0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x04,
0x69, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x53, 0x74, 0x6f,
0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49,
0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x69, 0x74, 0x65, 0x6d, 0x1a, 0x49,
0x0a, 0x09, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x26, 0x0a,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x44,
0x42, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05,
0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x54, 0x0a, 0x12, 0x53, 0x74, 0x6f,
0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x12,
0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05,
0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x28, 0x0a, 0x06, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x46, 0x6f,
0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x22,
0x4c, 0x0a, 0x13, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x74, 0x74,
0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18,
0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x1f, 0x0a, 0x04,
0x69, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x42, 0x61, 0x74,
0x74, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x69, 0x0a,
0x14, 0x53, 0x74, 0x6f, 0x72, 0x79, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
0x74, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01,
0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x73,
0x74, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x6f, 0x72,
0x79, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x0d, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74,
0x52, 0x06, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x66, 0x0a, 0x15, 0x53, 0x74, 0x6f, 0x72,
0x79, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73,
0x70, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x6f, 0x72, 0x79,
0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x21, 0x0a,
0x05, 0x61, 0x77, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x55,
0x73, 0x65, 0x72, 0x41, 0x73, 0x73, 0x65, 0x74, 0x73, 0x52, 0x05, 0x61, 0x77, 0x61, 0x72, 0x64,
0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_storyline_storyline_msg_proto_rawDescOnce sync.Once
file_storyline_storyline_msg_proto_rawDescData = file_storyline_storyline_msg_proto_rawDesc
)
func file_storyline_storyline_msg_proto_rawDescGZIP() []byte {
file_storyline_storyline_msg_proto_rawDescOnce.Do(func() {
file_storyline_storyline_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_storyline_storyline_msg_proto_rawDescData)
})
return file_storyline_storyline_msg_proto_rawDescData
}
var file_storyline_storyline_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
var file_storyline_storyline_msg_proto_goTypes = []interface{}{
(*StorylineInfoReq)(nil), // 0: StorylineInfoReq
(*StorylineInfoResp)(nil), // 1: StorylineInfoResp
(*StorylineBattleReq)(nil), // 2: StorylineBattleReq
(*StorylineBattleResp)(nil), // 3: StorylineBattleResp
(*StorylineCompleteReq)(nil), // 4: StorylineCompleteReq
(*StorylineCompleteResp)(nil), // 5: StorylineCompleteResp
nil, // 6: StorylineInfoResp.ItemEntry
(*BattleFormation)(nil), // 7: BattleFormation
(*BattleInfo)(nil), // 8: BattleInfo
(*BattleReport)(nil), // 9: BattleReport
(*UserAssets)(nil), // 10: UserAssets
(*DBStorylineItem)(nil), // 11: DBStorylineItem
}
var file_storyline_storyline_msg_proto_depIdxs = []int32{
6, // 0: StorylineInfoResp.item:type_name -> StorylineInfoResp.ItemEntry
7, // 1: StorylineBattleReq.battle:type_name -> BattleFormation
8, // 2: StorylineBattleResp.info:type_name -> BattleInfo
9, // 3: StorylineCompleteReq.report:type_name -> BattleReport
10, // 4: StorylineCompleteResp.award:type_name -> UserAssets
11, // 5: StorylineInfoResp.ItemEntry.value:type_name -> DBStorylineItem
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
6, // [6:6] is the sub-list for extension extendee
0, // [0:6] is the sub-list for field type_name
}
func init() { file_storyline_storyline_msg_proto_init() }
func file_storyline_storyline_msg_proto_init() {
if File_storyline_storyline_msg_proto != nil {
return
}
file_storyline_storyline_db_proto_init()
file_battle_battle_msg_proto_init()
file_comm_proto_init()
if !protoimpl.UnsafeEnabled {
file_storyline_storyline_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StorylineInfoReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_storyline_storyline_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StorylineInfoResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_storyline_storyline_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StorylineBattleReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_storyline_storyline_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StorylineBattleResp); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_storyline_storyline_msg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StorylineCompleteReq); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_storyline_storyline_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StorylineCompleteResp); 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_storyline_storyline_msg_proto_rawDesc,
NumEnums: 0,
NumMessages: 7,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_storyline_storyline_msg_proto_goTypes,
DependencyIndexes: file_storyline_storyline_msg_proto_depIdxs,
MessageInfos: file_storyline_storyline_msg_proto_msgTypes,
}.Build()
File_storyline_storyline_msg_proto = out.File
file_storyline_storyline_msg_proto_rawDesc = nil
file_storyline_storyline_msg_proto_goTypes = nil
file_storyline_storyline_msg_proto_depIdxs = nil
}

View File

@ -15,4 +15,5 @@ const (
GameBuffEffectType_Gain = 3
GameBuffEffectType_Weaken = 4
GameBuffEffectType_Chosen = 5
GameBuffEffectType_Shield = 6
)

View File

@ -10,90 +10,76 @@ package cfg
const (
GameBuffType_NONE = 0
GameBuffType_ATKUP = 1
GameBuffType_DEFUP = 2
GameBuffType_SPDUP = 3
GameBuffType_CRATEUP = 4
GameBuffType_CRITRESIST = 5
GameBuffType_ATKDOWN = 6
GameBuffType_DEFDOWN = 7
GameBuffType_SPDDOWN = 8
GameBuffType_CRATEDOWN = 9
GameBuffType_SEAR = 10
GameBuffType_MISSRATEUP = 11
GameBuffType_INVINCIBILITY = 12
GameBuffType_STANDOFF = 13
GameBuffType_STUN = 14
GameBuffType_FREEZE = 15
GameBuffType_DISEASED = 16
GameBuffType_PETRIFICATION = 17
GameBuffType_SILENCE = 18
GameBuffType_TAUNT = 19
GameBuffType_IMMUNITY = 20
GameBuffType_SHIELD = 21
GameBuffType_NOTSPEED = 22
GameBuffType_DAMREUP = 23
GameBuffType_HPUP = 24
GameBuffType_EFFHITUP = 25
GameBuffType_EFFREUP = 26
GameBuffType_HPDOWN = 27
GameBuffType_EFFHITDOWN = 28
GameBuffType_EFFREDOWN = 29
GameBuffType_CAUSEDAMUP = 30
GameBuffType_POISON = 31
GameBuffType_ATTRTRANS = 32
GameBuffType_UNDEAD = 33
GameBuffType_DEVOUR = 34
GameBuffType_DONTMISS = 35
GameBuffType_NOTGAIN = 36
GameBuffType_NOTCONTROL = 37
GameBuffType_SLEEP = 38
GameBuffType_XUANYU = 39
GameBuffType_HPDOWN_PRO = 40
GameBuffType_LOSTPERHPCAUSEDAMUP = 41
GameBuffType_MATH = 42
GameBuffType_NOTSKILLCD = 43
GameBuffType_MODIFYBUFFDURATION = 44
GameBuffType_SIGHPOWER = 45
GameBuffType_CHIEFWRATH = 46
GameBuffType_RECOVERY = 47
GameBuffType_GAINNUMADDDMG = 48
GameBuffType_SINGLEDMGLIMIT = 49
GameBuffType_IMMUNEACTVALUEDOWN = 50
GameBuffType_LOSEHPADDCAUSEDAM_UP = 51
GameBuffType_TARGETLOSTHPCAUSEDAM_UP = 52
GameBuffType_LOSTPERHPADDTRE = 53
GameBuffType_CHAIN = 54
GameBuffType_DISASTER_ICE_FIELD = 55
GameBuffType_HORUS_EYE = 56
GameBuffType_LIFE_DEATH_BOOK = 57
GameBuffType_BUFF_COUNT_ADD_DMG = 58
GameBuffType_CRIT_ADD_THIS_TIME_DMG = 59
GameBuffType_POISON_ADD_THIS_TIME_DMG = 60
GameBuffType_HUNT = 61
GameBuffType_NIGHTINGALE_KISS = 62
GameBuffType_STRONG_WIND = 63
GameBuffType_FINAL_DMG_DOWN = 64
GameBuffType_TIGER_ROAR = 65
GameBuffType_FORGET = 66
GameBuffType_RAMPAGE = 67
GameBuffType_DISABLE_REVIVE = 68
GameBuffType_INNOCENCE = 69
GameBuffType_FANGS = 70
GameBuffType_HACKER_FORESIGHT = 71
GameBuffType_FROST_STONE = 72
GameBuffType_BLEED = 73
GameBuffType_LOSEHPADDPRO = 74
GameBuffType_RESISTBUFF = 75
GameBuffType_NODEF = 76
GameBuffType_TREUP = 77
GameBuffType_SEAL = 78
GameBuffType_FIXED_DEF = 79
GameBuffType_FIXED_DEF_PRO = 80
GameBuffType_IMMDOT = 81
GameBuffType_NO_BUFFEFFECT_ADD_DMG = 82
GameBuffType_BE_CRIT_ADD_THIS_TIME_DMG = 83
GameBuffType_EFFMUSTHIT = 84
GameBuffType_PROPERTY_LOW_ADD_DMG = 85
GameBuffType_REPLACE_BUFF = 86
GameBuffType_ADJUST_PRO = 20
GameBuffType_SEAR = 21
GameBuffType_INVINCIBILITY = 22
GameBuffType_STANDOFF = 23
GameBuffType_STUN = 24
GameBuffType_FREEZE = 25
GameBuffType_DISEASED = 26
GameBuffType_PETRIFICATION = 27
GameBuffType_SILENCE = 28
GameBuffType_TAUNT = 29
GameBuffType_IMMUNITY = 30
GameBuffType_SHIELD = 31
GameBuffType_NOTSPEED = 32
GameBuffType_CAUSEDAMUP = 33
GameBuffType_POISON = 34
GameBuffType_ATTRTRANS = 35
GameBuffType_UNDEAD = 36
GameBuffType_DEVOUR = 37
GameBuffType_DONTMISS = 38
GameBuffType_NOTGAIN = 39
GameBuffType_NOTCONTROL = 40
GameBuffType_SLEEP = 41
GameBuffType_XUANYU = 42
GameBuffType_LOSTPERHPCAUSEDAMUP = 43
GameBuffType_MATH = 44
GameBuffType_NOTSKILLCD = 45
GameBuffType_MODIFYBUFFDURATION = 46
GameBuffType_SIGHPOWER = 47
GameBuffType_CHIEFWRATH = 48
GameBuffType_RECOVERY = 49
GameBuffType_GAINNUMADDDMG = 50
GameBuffType_SINGLEDMGLIMIT = 51
GameBuffType_IMMUNEACTVALUEDOWN = 52
GameBuffType_LOSEHPADDCAUSEDAM_UP = 53
GameBuffType_TARGETLOSTHPCAUSEDAM_UP = 54
GameBuffType_LOSTPERHPADDTRE = 55
GameBuffType_CHAIN = 56
GameBuffType_DISASTER_ICE_FIELD = 57
GameBuffType_HORUS_EYE = 58
GameBuffType_LIFE_DEATH_BOOK = 59
GameBuffType_BUFF_COUNT_ADD_DMG = 60
GameBuffType_CRIT_ADD_THIS_TIME_DMG = 61
GameBuffType_POISON_ADD_THIS_TIME_DMG = 62
GameBuffType_HUNT = 63
GameBuffType_NIGHTINGALE_KISS = 64
GameBuffType_STRONG_WIND = 65
GameBuffType_FINAL_DMG_DOWN = 66
GameBuffType_TIGER_ROAR = 67
GameBuffType_FORGET = 68
GameBuffType_RAMPAGE = 69
GameBuffType_DISABLE_REVIVE = 70
GameBuffType_INNOCENCE = 71
GameBuffType_FANGS = 72
GameBuffType_HACKER_FORESIGHT = 73
GameBuffType_FROST_STONE = 74
GameBuffType_BLEED = 75
GameBuffType_LOSEHPADDPRO = 76
GameBuffType_RESISTBUFF = 77
GameBuffType_NODEF = 78
GameBuffType_TREUP = 79
GameBuffType_SEAL = 80
GameBuffType_FIXED_DEF = 81
GameBuffType_FIXED_DEF_PRO = 82
GameBuffType_IMMDOT = 83
GameBuffType_NO_BUFFEFFECT_ADD_DMG = 84
GameBuffType_BE_CRIT_ADD_THIS_TIME_DMG = 85
GameBuffType_EFFMUSTHIT = 86
GameBuffType_PROPERTY_LOW_ADD_DMG = 87
GameBuffType_REPLACE_BUFF = 88
GameBuffType_SPEED_SET_MIN_ROLE = 89
GameBuffType_HAS_BUFF_ADD_DMG = 90
GameBuffType_BUFF_DOT_ADD_DMG = 91
)

View File

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

View File

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

View File

@ -0,0 +1,71 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameHeroupstoryBattleData struct {
Id int32
FormatList []int32
BattleReadyID int32
EventList []int32
Playexp *Gameatn
Carexe int32
}
const TypeId_GameHeroupstoryBattleData = -2087695962
func (*GameHeroupstoryBattleData) GetTypeId() int32 {
return -2087695962
}
func (_v *GameHeroupstoryBattleData)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 _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["FormatList"].([]interface{}); !_ok_ { err = errors.New("FormatList error"); return }
_v.FormatList = 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.FormatList = append(_v.FormatList, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["BattleReadyID"].(float64); !_ok_ { err = errors.New("BattleReadyID error"); return }; _v.BattleReadyID = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["EventList"].([]interface{}); !_ok_ { err = errors.New("EventList error"); return }
_v.EventList = 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.EventList = append(_v.EventList, _list_v_)
}
}
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["playexp"].(map[string]interface{}); !_ok_ { err = errors.New("playexp error"); return }; if _v.Playexp, err = DeserializeGameatn(_x_); err != nil { return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["carexe"].(float64); !_ok_ { err = errors.New("carexe error"); return }; _v.Carexe = int32(_tempNum_) }
return
}
func DeserializeGameHeroupstoryBattleData(_buf map[string]interface{}) (*GameHeroupstoryBattleData, error) {
v := &GameHeroupstoryBattleData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

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

View File

@ -0,0 +1,91 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameHeroupstoryChapterData struct {
Key int32
Hero int32
Chapter int32
Onlevel int32
Onlevelstory int32
Level int32
Levellink []int32
Leveltype int32
Startstory int32
Battle int32
Reward []*Gameatn
Txt string
Circle string
Qq int32
Icon string
Head string
}
const TypeId_GameHeroupstoryChapterData = 980641011
func (*GameHeroupstoryChapterData) GetTypeId() int32 {
return 980641011
}
func (_v *GameHeroupstoryChapterData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["key"].(float64); !_ok_ { err = errors.New("key error"); return }; _v.Key = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hero"].(float64); !_ok_ { err = errors.New("hero error"); return }; _v.Hero = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["chapter"].(float64); !_ok_ { err = errors.New("chapter error"); return }; _v.Chapter = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["onlevel"].(float64); !_ok_ { err = errors.New("onlevel error"); return }; _v.Onlevel = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["onlevelstory"].(float64); !_ok_ { err = errors.New("onlevelstory error"); return }; _v.Onlevelstory = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["level"].(float64); !_ok_ { err = errors.New("level error"); return }; _v.Level = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["levellink"].([]interface{}); !_ok_ { err = errors.New("levellink error"); return }
_v.Levellink = 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.Levellink = append(_v.Levellink, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["leveltype"].(float64); !_ok_ { err = errors.New("leveltype error"); return }; _v.Leveltype = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["startstory"].(float64); !_ok_ { err = errors.New("startstory error"); return }; _v.Startstory = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["battle"].(float64); !_ok_ { err = errors.New("battle error"); return }; _v.Battle = 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["txt"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Txt error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Txt, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{ var _ok_ bool; if _v.Circle, _ok_ = _buf["circle"].(string); !_ok_ { err = errors.New("circle error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["qq"].(float64); !_ok_ { err = errors.New("qq error"); return }; _v.Qq = int32(_tempNum_) }
{ var _ok_ bool; if _v.Icon, _ok_ = _buf["icon"].(string); !_ok_ { err = errors.New("icon error"); return } }
{ var _ok_ bool; if _v.Head, _ok_ = _buf["head"].(string); !_ok_ { err = errors.New("head error"); return } }
return
}
func DeserializeGameHeroupstoryChapterData(_buf map[string]interface{}) (*GameHeroupstoryChapterData, error) {
v := &GameHeroupstoryChapterData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -0,0 +1,54 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameHeroupstoryData struct {
Heroid int32
Opentime string
Newheroday int32
Reward []*Gameatn
}
const TypeId_GameHeroupstoryData = 2045922254
func (*GameHeroupstoryData) GetTypeId() int32 {
return 2045922254
}
func (_v *GameHeroupstoryData)Deserialize(_buf map[string]interface{}) (err error) {
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["heroid"].(float64); !_ok_ { err = errors.New("heroid error"); return }; _v.Heroid = int32(_tempNum_) }
{ var _ok_ bool; if _v.Opentime, _ok_ = _buf["opentime"].(string); !_ok_ { err = errors.New("opentime error"); return } }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["newheroday"].(float64); !_ok_ { err = errors.New("newheroday error"); return }; _v.Newheroday = int32(_tempNum_) }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["reward"].([]interface{}); !_ok_ { err = errors.New("reward error"); return }
_v.Reward = make([]*Gameatn, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatn
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGameatn(_x_); err != nil { return } }
_v.Reward = append(_v.Reward, _list_v_)
}
}
return
}
func DeserializeGameHeroupstoryData(_buf map[string]interface{}) (*GameHeroupstoryData, error) {
v := &GameHeroupstoryData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -20,6 +20,7 @@ type GamePlayerInfor_overviewData struct {
Resources string
Vague string
PvpAnimator string
Mainq string
Playerhead string
Name string
}
@ -53,6 +54,7 @@ func (_v *GamePlayerInfor_overviewData)Deserialize(_buf map[string]interface{})
{ var _ok_ bool; if _v.Resources, _ok_ = _buf["resources"].(string); !_ok_ { err = errors.New("resources error"); return } }
{ var _ok_ bool; if _v.Vague, _ok_ = _buf["vague"].(string); !_ok_ { err = errors.New("vague error"); return } }
{ var _ok_ bool; if _v.PvpAnimator, _ok_ = _buf["pvpAnimator"].(string); !_ok_ { err = errors.New("pvpAnimator error"); return } }
{ var _ok_ bool; if _v.Mainq, _ok_ = _buf["mainq"].(string); !_ok_ { err = errors.New("mainq error"); return } }
{ var _ok_ bool; if _v.Playerhead, _ok_ = _buf["playerhead"].(string); !_ok_ { err = errors.New("playerhead error"); return } }
{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 } } }
return

View File

@ -113,5 +113,8 @@ const (
GamePropertyType_ExtraDmg_Per = 101
GamePropertyType_SuckBlood_Per = 102
GamePropertyType_CritDamRe = 103
GamePropertyType_Max = 104
GamePropertyType_CritResist = 104
GamePropertyType_Shield = 105
GamePropertyType_Shield_Per = 106
GamePropertyType_Max = 107
)

View File

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

View File

@ -0,0 +1,98 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameStoneStoryData struct {
Id int32
StoryGroupId int32
StepId int32
StoryDesc string
OptionEventIdGroup1 []string
EndEventId1 int32
OptionDesc1 string
OptionEventIdGroup2 []string
EndEventId2 int32
OptionDesc2 string
OptionEventIdGroup3 []string
EndEventId3 int32
OptionDesc3 string
}
const TypeId_GameStoneStoryData = -557883178
func (*GameStoneStoryData) GetTypeId() int32 {
return -557883178
}
func (_v *GameStoneStoryData)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["StoryGroupId"].(float64); !_ok_ { err = errors.New("StoryGroupId error"); return }; _v.StoryGroupId = int32(_tempNum_) }
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["StepId"].(float64); !_ok_ { err = errors.New("StepId error"); return }; _v.StepId = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["StoryDesc"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.StoryDesc error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.StoryDesc, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["OptionEventIdGroup1"].([]interface{}); !_ok_ { err = errors.New("OptionEventIdGroup1 error"); return }
_v.OptionEventIdGroup1 = make([]string, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ string
{ if _list_v_, _ok_ = _e_.(string); !_ok_ { err = errors.New("_list_v_ error"); return } }
_v.OptionEventIdGroup1 = append(_v.OptionEventIdGroup1, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["EndEventId1"].(float64); !_ok_ { err = errors.New("EndEventId1 error"); return }; _v.EndEventId1 = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["OptionDesc1"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.OptionDesc1 error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.OptionDesc1, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["OptionEventIdGroup2"].([]interface{}); !_ok_ { err = errors.New("OptionEventIdGroup2 error"); return }
_v.OptionEventIdGroup2 = make([]string, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ string
{ if _list_v_, _ok_ = _e_.(string); !_ok_ { err = errors.New("_list_v_ error"); return } }
_v.OptionEventIdGroup2 = append(_v.OptionEventIdGroup2, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["EndEventId2"].(float64); !_ok_ { err = errors.New("EndEventId2 error"); return }; _v.EndEventId2 = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["OptionDesc2"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.OptionDesc2 error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.OptionDesc2, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["OptionEventIdGroup3"].([]interface{}); !_ok_ { err = errors.New("OptionEventIdGroup3 error"); return }
_v.OptionEventIdGroup3 = make([]string, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ string
{ if _list_v_, _ok_ = _e_.(string); !_ok_ { err = errors.New("_list_v_ error"); return } }
_v.OptionEventIdGroup3 = append(_v.OptionEventIdGroup3, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["EndEventId3"].(float64); !_ok_ { err = errors.New("EndEventId3 error"); return }; _v.EndEventId3 = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["OptionDesc3"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.OptionDesc3 error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.OptionDesc3, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
return
}
func DeserializeGameStoneStoryData(_buf map[string]interface{}) (*GameStoneStoryData, error) {
v := &GameStoneStoryData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

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

View File

@ -0,0 +1,88 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameStoneTalentData struct {
Id int32
NodeType int32
NodeIcon string
Front []int32
CostItem []*Gameatn
PrivilegeId int32
AttributeDesc string
Attribute []*Gameatr
}
const TypeId_GameStoneTalentData = -186709249
func (*GameStoneTalentData) GetTypeId() int32 {
return -186709249
}
func (_v *GameStoneTalentData)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["NodeType"].(float64); !_ok_ { err = errors.New("NodeType error"); return }; _v.NodeType = int32(_tempNum_) }
{ var _ok_ bool; if _v.NodeIcon, _ok_ = _buf["NodeIcon"].(string); !_ok_ { err = errors.New("NodeIcon error"); return } }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["Front"].([]interface{}); !_ok_ { err = errors.New("Front error"); return }
_v.Front = 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.Front = append(_v.Front, _list_v_)
}
}
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["CostItem"].([]interface{}); !_ok_ { err = errors.New("CostItem error"); return }
_v.CostItem = 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.CostItem = append(_v.CostItem, _list_v_)
}
}
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["PrivilegeId"].(float64); !_ok_ { err = errors.New("PrivilegeId error"); return }; _v.PrivilegeId = int32(_tempNum_) }
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["AttributeDesc"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.AttributeDesc error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.AttributeDesc, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
{
var _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["Attribute"].([]interface{}); !_ok_ { err = errors.New("Attribute error"); return }
_v.Attribute = make([]*Gameatr, 0, len(_arr_))
for _, _e_ := range _arr_ {
var _list_v_ *Gameatr
{ 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 = DeserializeGameatr(_x_); err != nil { return } }
_v.Attribute = append(_v.Attribute, _list_v_)
}
}
return
}
func DeserializeGameStoneTalentData(_buf map[string]interface{}) (*GameStoneTalentData, error) {
v := &GameStoneTalentData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

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

View File

@ -0,0 +1,52 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
package cfg
import "errors"
type GameStoneWeekData struct {
Id int32
Rewarditem []*Gameatn
Point *Gameatn
}
const TypeId_GameStoneWeekData = -557534137
func (*GameStoneWeekData) GetTypeId() int32 {
return -557534137
}
func (_v *GameStoneWeekData)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 _arr_ []interface{}
var _ok_ bool
if _arr_, _ok_ = _buf["rewarditem"].([]interface{}); !_ok_ { err = errors.New("rewarditem error"); return }
_v.Rewarditem = 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.Rewarditem = append(_v.Rewarditem, _list_v_)
}
}
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["point"].(map[string]interface{}); !_ok_ { err = errors.New("point error"); return }; if _v.Point, err = DeserializeGameatn(_x_); err != nil { return } }
return
}
func DeserializeGameStoneWeekData(_buf map[string]interface{}) (*GameStoneWeekData, error) {
v := &GameStoneWeekData{}
if err := v.Deserialize(_buf); err == nil {
return v, nil
} else {
return nil, err
}
}

View File

@ -213,6 +213,9 @@ type Tables struct {
StoneEvent *GameStoneEvent
StoneBattle *GameStoneBattle
StoneStore *GameStoneStore
StoneStory *GameStoneStory
StoneWeek *GameStoneWeek
StoneTalent *GameStoneTalent
GameSummaryTab *GameGameSummaryTab
GameSummary *GameGameSummary
CompositeAll *GameCompositeAll
@ -229,6 +232,9 @@ type Tables struct {
ShopCenterFund *GameShopCenterFund
Accumulate *GameAccumulate
Celebration *GameCelebration
Heroupstory *GameHeroupstory
HeroupstoryChapter *GameHeroupstoryChapter
HeroupstoryBattle *GameHeroupstoryBattle
}
func NewTables(loader JsonLoader) (*Tables, error) {
@ -1448,6 +1454,24 @@ func NewTables(loader JsonLoader) (*Tables, error) {
if tables.StoneStore, err = NewGameStoneStore(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_stonestory") ; err != nil {
return nil, err
}
if tables.StoneStory, err = NewGameStoneStory(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_stoneweek") ; err != nil {
return nil, err
}
if tables.StoneWeek, err = NewGameStoneWeek(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_stonetalent") ; err != nil {
return nil, err
}
if tables.StoneTalent, err = NewGameStoneTalent(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_gamesummarytab") ; err != nil {
return nil, err
}
@ -1544,5 +1568,23 @@ func NewTables(loader JsonLoader) (*Tables, error) {
if tables.Celebration, err = NewGameCelebration(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_heroupstory") ; err != nil {
return nil, err
}
if tables.Heroupstory, err = NewGameHeroupstory(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_heroupstorychapter") ; err != nil {
return nil, err
}
if tables.HeroupstoryChapter, err = NewGameHeroupstoryChapter(buf) ; err != nil {
return nil, err
}
if buf, err = loader("game_heroupstorybattle") ; err != nil {
return nil, err
}
if tables.HeroupstoryBattle, err = NewGameHeroupstoryBattle(buf) ; err != nil {
return nil, err
}
return tables, nil
}