Merge branch 'dev' of http://git.legu.cc/liwei_3d/go_dreamfactory into dev
This commit is contained in:
commit
6b4dae65e6
@ -43,7 +43,7 @@
|
||||
"access": 0,
|
||||
"star": 2,
|
||||
"race": 0,
|
||||
"img": "",
|
||||
"img": "hy_icon_jltb",
|
||||
"ico": "",
|
||||
"intr": "友情点用于友情商店"
|
||||
}
|
||||
|
42
bin/json/game_getresource.json
Normal file
42
bin/json/game_getresource.json
Normal file
@ -0,0 +1,42 @@
|
||||
[
|
||||
{
|
||||
"id": 101,
|
||||
"typ": 0,
|
||||
"name": "商店",
|
||||
"txt": "这是商店",
|
||||
"icon": "",
|
||||
"goto": "shop"
|
||||
},
|
||||
{
|
||||
"id": 102,
|
||||
"typ": 0,
|
||||
"name": "商店",
|
||||
"txt": "这是商店",
|
||||
"icon": "",
|
||||
"goto": "shop"
|
||||
},
|
||||
{
|
||||
"id": 103,
|
||||
"typ": 0,
|
||||
"name": "商店",
|
||||
"txt": "这是商店",
|
||||
"icon": "",
|
||||
"goto": "shop"
|
||||
},
|
||||
{
|
||||
"id": 104,
|
||||
"typ": 0,
|
||||
"name": "商店",
|
||||
"txt": "这是商店",
|
||||
"icon": "",
|
||||
"goto": "shop"
|
||||
},
|
||||
{
|
||||
"id": 105,
|
||||
"typ": 0,
|
||||
"name": "商店",
|
||||
"txt": "这是商店",
|
||||
"icon": "",
|
||||
"goto": "shop"
|
||||
}
|
||||
]
|
@ -548,5 +548,370 @@
|
||||
"n": 5
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "bag",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "heroequip",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "heroup",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "herostrength",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "manual",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "rolestrategy",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "recruit",
|
||||
"var": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "30001",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "specialrecruit",
|
||||
"var": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "30002",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "30003",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "30004",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "30005",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "bagequip",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "mainworld",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "mainbarrier",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "friendsystemwin",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "friendapply",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "friend",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "friendadd",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "friend",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "blacklist",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "friend",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "friendassist",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "friend",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "pagoda",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "bagfragment",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "store",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "storediamond",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "storepvp",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "storepve",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "storeunion",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"index": "roledetail",
|
||||
"var": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
56
bin/json/game_link.json
Normal file
56
bin/json/game_link.json
Normal file
@ -0,0 +1,56 @@
|
||||
[
|
||||
{
|
||||
"id": "1",
|
||||
"uistore": "store",
|
||||
"scene": "",
|
||||
"des": "商店",
|
||||
"option": 1,
|
||||
"preid": 0,
|
||||
"presid": 0
|
||||
},
|
||||
{
|
||||
"id": "2",
|
||||
"uistore": "store",
|
||||
"scene": "",
|
||||
"des": "商店",
|
||||
"option": 1,
|
||||
"preid": 0,
|
||||
"presid": 0
|
||||
},
|
||||
{
|
||||
"id": "3",
|
||||
"uistore": "store",
|
||||
"scene": "",
|
||||
"des": "商店",
|
||||
"option": 1,
|
||||
"preid": 0,
|
||||
"presid": 0
|
||||
},
|
||||
{
|
||||
"id": "4",
|
||||
"uistore": "store",
|
||||
"scene": "",
|
||||
"des": "商店",
|
||||
"option": 1,
|
||||
"preid": 0,
|
||||
"presid": 0
|
||||
},
|
||||
{
|
||||
"id": "5",
|
||||
"uistore": "store",
|
||||
"scene": "",
|
||||
"des": "商店",
|
||||
"option": 1,
|
||||
"preid": 0,
|
||||
"presid": 0
|
||||
},
|
||||
{
|
||||
"id": "6",
|
||||
"uistore": "store",
|
||||
"scene": "",
|
||||
"des": "商店",
|
||||
"option": 1,
|
||||
"preid": 0,
|
||||
"presid": 0
|
||||
}
|
||||
]
|
17627
bin/json/game_mainline.json
Normal file
17627
bin/json/game_mainline.json
Normal file
File diff suppressed because it is too large
Load Diff
@ -5,7 +5,7 @@
|
||||
"key": "mainline_name_10001",
|
||||
"text": "Chapter 1"
|
||||
},
|
||||
"Intensity": "mainline_data_easy",
|
||||
"Intensity": 1,
|
||||
"map": "zx_ddt_zj01",
|
||||
"title": {
|
||||
"key": "mainline_title_10001",
|
||||
@ -51,7 +51,7 @@
|
||||
"key": "mainline_name_10002",
|
||||
"text": "Chapter 2"
|
||||
},
|
||||
"Intensity": "mainline_data_easy",
|
||||
"Intensity": 1,
|
||||
"map": "zx_ddt_zj02",
|
||||
"title": {
|
||||
"key": "mainline_title_10002",
|
||||
@ -97,7 +97,7 @@
|
||||
"key": "mainline_name_10003",
|
||||
"text": "Chapter 3"
|
||||
},
|
||||
"Intensity": "mainline_data_easy",
|
||||
"Intensity": 1,
|
||||
"map": "zx_ddt_zj03",
|
||||
"title": {
|
||||
"key": "mainline_title_10003",
|
||||
@ -143,7 +143,7 @@
|
||||
"key": "mainline_name_10004",
|
||||
"text": "Chapter 4"
|
||||
},
|
||||
"Intensity": "mainline_data_easy",
|
||||
"Intensity": 1,
|
||||
"map": "zx_ddt_zj04",
|
||||
"title": {
|
||||
"key": "mainline_title_10004",
|
||||
@ -189,7 +189,7 @@
|
||||
"key": "mainline_name_10005",
|
||||
"text": "Chapter 5"
|
||||
},
|
||||
"Intensity": "mainline_data_easy",
|
||||
"Intensity": 1,
|
||||
"map": "zx_ddt_zj01",
|
||||
"title": {
|
||||
"key": "mainline_title_10005",
|
||||
@ -235,7 +235,7 @@
|
||||
"key": "mainline_name_10006",
|
||||
"text": "Chapter 6"
|
||||
},
|
||||
"Intensity": "mainline_data_easy",
|
||||
"Intensity": 1,
|
||||
"map": "zx_ddt_zj02",
|
||||
"title": {
|
||||
"key": "mainline_title_10006",
|
||||
@ -281,7 +281,7 @@
|
||||
"key": "mainline_name_10007",
|
||||
"text": "Chapter 7"
|
||||
},
|
||||
"Intensity": "mainline_data_easy",
|
||||
"Intensity": 1,
|
||||
"map": "zx_ddt_zj03",
|
||||
"title": {
|
||||
"key": "mainline_title_10007",
|
||||
@ -327,7 +327,7 @@
|
||||
"key": "mainline_name_10008",
|
||||
"text": "Chapter 8"
|
||||
},
|
||||
"Intensity": "mainline_data_easy",
|
||||
"Intensity": 1,
|
||||
"map": "zx_ddt_zj04",
|
||||
"title": {
|
||||
"key": "mainline_title_10008",
|
||||
@ -373,7 +373,7 @@
|
||||
"key": "mainline_name_10009",
|
||||
"text": "Chapter 9"
|
||||
},
|
||||
"Intensity": "mainline_data_easy",
|
||||
"Intensity": 1,
|
||||
"map": "zx_ddt_zj01",
|
||||
"title": {
|
||||
"key": "mainline_title_10009",
|
||||
@ -419,7 +419,7 @@
|
||||
"key": "mainline_name_10010",
|
||||
"text": "Chapter 10"
|
||||
},
|
||||
"Intensity": "mainline_data_easy",
|
||||
"Intensity": 1,
|
||||
"map": "zx_ddt_zj02",
|
||||
"title": {
|
||||
"key": "mainline_title_10010",
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1010,7 +1010,7 @@
|
||||
{
|
||||
"id": "35001",
|
||||
"preson": "35001",
|
||||
"presonshow": "",
|
||||
"presonshow": "35001",
|
||||
"ico": "tx_js_35001",
|
||||
"fight": "ytx_js_35001",
|
||||
"img": "sbkp_js_35001",
|
||||
@ -1367,7 +1367,7 @@
|
||||
{
|
||||
"id": "44005",
|
||||
"preson": "44005",
|
||||
"presonshow": "",
|
||||
"presonshow": "44005",
|
||||
"ico": "tx_js_44005",
|
||||
"fight": "ytx_js_44005",
|
||||
"img": "sbkp_js_44005",
|
||||
@ -1388,7 +1388,7 @@
|
||||
{
|
||||
"id": "44006",
|
||||
"preson": "44006",
|
||||
"presonshow": "",
|
||||
"presonshow": "44006",
|
||||
"ico": "tx_hhjs_35002",
|
||||
"fight": "ytx_js_44006",
|
||||
"img": "sbkp_js_35002",
|
||||
|
3408
bin/json/game_monsterformat.json
Normal file
3408
bin/json/game_monsterformat.json
Normal file
File diff suppressed because it is too large
Load Diff
@ -38,20 +38,5 @@
|
||||
"msgid": "chat.send",
|
||||
"routrules": "~/worker",
|
||||
"describe": "聊天消息发送"
|
||||
},
|
||||
{
|
||||
"msgid": "forum.like",
|
||||
"routrules": "~/worker",
|
||||
"describe": "论坛点赞入口"
|
||||
},
|
||||
{
|
||||
"msgid": "moonfantasy.trigger",
|
||||
"routrules": "~/worker",
|
||||
"describe": "月之秘境触发接口"
|
||||
},
|
||||
{
|
||||
"msgid": "moonfantasy.dare",
|
||||
"routrules": "~/worker",
|
||||
"describe": "月之秘境参战接口"
|
||||
}
|
||||
]
|
@ -341,7 +341,7 @@
|
||||
"key": "num_1014",
|
||||
"text": "藏书馆"
|
||||
},
|
||||
"main": "{\"lv\": 0}",
|
||||
"main": "{\"lv\": 999}",
|
||||
"optional": "",
|
||||
"wkqbx": 0,
|
||||
"kqbx": 0,
|
||||
@ -405,7 +405,7 @@
|
||||
"key": "num_1018",
|
||||
"text": "戈伯铁匠铺"
|
||||
},
|
||||
"main": "{\"lv\": 999}",
|
||||
"main": "{\"lv\": 0}",
|
||||
"optional": "",
|
||||
"wkqbx": 0,
|
||||
"kqbx": 0,
|
||||
|
@ -20,20 +20,64 @@
|
||||
101
|
||||
],
|
||||
"sidequest": [
|
||||
1002
|
||||
1002,
|
||||
1003
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 100102,
|
||||
"group": 1,
|
||||
"type": 2,
|
||||
"preTid": 100100,
|
||||
"preTid": 100101,
|
||||
"condition": [
|
||||
101,
|
||||
107
|
||||
],
|
||||
"sidequest": [
|
||||
1003
|
||||
1004
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 100103,
|
||||
"group": 1,
|
||||
"type": 2,
|
||||
"preTid": 100102,
|
||||
"condition": [
|
||||
101,
|
||||
107
|
||||
],
|
||||
"sidequest": [
|
||||
1005
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 100104,
|
||||
"group": 1,
|
||||
"type": 2,
|
||||
"preTid": 100103,
|
||||
"condition": [
|
||||
101,
|
||||
107
|
||||
],
|
||||
"sidequest": [
|
||||
1006,
|
||||
1007,
|
||||
1008,
|
||||
1009,
|
||||
1010
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 100105,
|
||||
"group": 1,
|
||||
"type": 2,
|
||||
"preTid": 100104,
|
||||
"condition": [
|
||||
101,
|
||||
107
|
||||
],
|
||||
"sidequest": [
|
||||
1011
|
||||
]
|
||||
}
|
||||
]
|
@ -10,21 +10,13 @@
|
||||
{
|
||||
"id": 10002,
|
||||
"num": 2,
|
||||
"preTid": 107,
|
||||
"needItem": [
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 10003,
|
||||
"num": 3,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 20001,
|
||||
"id": 10003,
|
||||
"num": 1,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
@ -32,7 +24,71 @@
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 20002,
|
||||
"id": 10004,
|
||||
"num": 1,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 10005,
|
||||
"num": 2,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 10006,
|
||||
"num": 1,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 10007,
|
||||
"num": 2,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 10008,
|
||||
"num": 3,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 10009,
|
||||
"num": 1,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 100010,
|
||||
"num": 2,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 100011,
|
||||
"num": 1,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
0
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 100012,
|
||||
"num": 2,
|
||||
"preTid": 0,
|
||||
"needItem": [
|
||||
|
@ -1,6 +1,7 @@
|
||||
[
|
||||
{
|
||||
"id": 101,
|
||||
"datatype": 1,
|
||||
"type": 1,
|
||||
"data1": 25001,
|
||||
"data2": 0,
|
||||
@ -8,6 +9,7 @@
|
||||
},
|
||||
{
|
||||
"id": 102,
|
||||
"datatype": 1,
|
||||
"type": 1,
|
||||
"data1": 25001,
|
||||
"data2": 0,
|
||||
@ -15,6 +17,7 @@
|
||||
},
|
||||
{
|
||||
"id": 103,
|
||||
"datatype": 1,
|
||||
"type": 3,
|
||||
"data1": 2,
|
||||
"data2": 0,
|
||||
@ -22,6 +25,7 @@
|
||||
},
|
||||
{
|
||||
"id": 104,
|
||||
"datatype": 1,
|
||||
"type": 4,
|
||||
"data1": 25001,
|
||||
"data2": 20,
|
||||
@ -29,6 +33,7 @@
|
||||
},
|
||||
{
|
||||
"id": 105,
|
||||
"datatype": 1,
|
||||
"type": 4,
|
||||
"data1": 25001,
|
||||
"data2": 10,
|
||||
@ -36,6 +41,7 @@
|
||||
},
|
||||
{
|
||||
"id": 106,
|
||||
"datatype": 1,
|
||||
"type": 5,
|
||||
"data1": 25001,
|
||||
"data2": 2,
|
||||
@ -43,6 +49,7 @@
|
||||
},
|
||||
{
|
||||
"id": 107,
|
||||
"datatype": 1,
|
||||
"type": 1,
|
||||
"data1": 25001,
|
||||
"data2": 0,
|
||||
@ -50,6 +57,7 @@
|
||||
},
|
||||
{
|
||||
"id": 108,
|
||||
"datatype": 1,
|
||||
"type": 6,
|
||||
"data1": 25001,
|
||||
"data2": 5,
|
||||
|
@ -3,13 +3,13 @@
|
||||
"id": 1001,
|
||||
"objType": 1,
|
||||
"point": "model_01",
|
||||
"storyBegin": 4,
|
||||
"storyEnd": 0,
|
||||
"storyBegin": 1,
|
||||
"chooseId": [
|
||||
10001,
|
||||
10002,
|
||||
10003
|
||||
10002
|
||||
],
|
||||
"storyEnd": 2,
|
||||
"nextTid": 100101,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
@ -23,19 +23,18 @@
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"nextTid": 100101,
|
||||
"endTid": -1
|
||||
},
|
||||
{
|
||||
"id": 1002,
|
||||
"objType": 2,
|
||||
"point": "icon_01",
|
||||
"storyBegin": 6,
|
||||
"storyEnd": 9,
|
||||
"objType": 1,
|
||||
"point": "model_02",
|
||||
"storyBegin": 4,
|
||||
"chooseId": [
|
||||
20001,
|
||||
20002
|
||||
10003
|
||||
],
|
||||
"storyEnd": 6,
|
||||
"nextTid": 0,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
@ -49,16 +48,16 @@
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"nextTid": 100102,
|
||||
"endTid": 105
|
||||
"endTid": -1
|
||||
},
|
||||
{
|
||||
"id": 1003,
|
||||
"objType": 1,
|
||||
"point": "model_02",
|
||||
"storyBegin": 7,
|
||||
"storyEnd": 0,
|
||||
"point": "model_03",
|
||||
"storyBegin": 3,
|
||||
"chooseId": [],
|
||||
"storyEnd": 0,
|
||||
"nextTid": -1,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
@ -72,7 +71,203 @@
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"endTid": -1
|
||||
},
|
||||
{
|
||||
"id": 1004,
|
||||
"objType": 2,
|
||||
"point": "icon_01",
|
||||
"storyBegin": 7,
|
||||
"chooseId": [
|
||||
10004,
|
||||
10005
|
||||
],
|
||||
"storyEnd": 0,
|
||||
"nextTid": 100103,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1000
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"endTid": -1
|
||||
},
|
||||
{
|
||||
"id": 1005,
|
||||
"objType": 2,
|
||||
"point": "icon_02",
|
||||
"storyBegin": 9,
|
||||
"chooseId": [
|
||||
10006,
|
||||
10007,
|
||||
10008
|
||||
],
|
||||
"storyEnd": 0,
|
||||
"nextTid": 100104,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1000
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"endTid": -1
|
||||
},
|
||||
{
|
||||
"id": 1006,
|
||||
"objType": 1,
|
||||
"point": "model_01",
|
||||
"storyBegin": 15,
|
||||
"chooseId": [
|
||||
10009,
|
||||
100010
|
||||
],
|
||||
"storyEnd": 0,
|
||||
"nextTid": 100105,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1000
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"endTid": -1
|
||||
},
|
||||
{
|
||||
"id": 1007,
|
||||
"objType": 1,
|
||||
"point": "model_02",
|
||||
"storyBegin": 11,
|
||||
"chooseId": [],
|
||||
"storyEnd": 0,
|
||||
"nextTid": -1,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1000
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"endTid": -1
|
||||
},
|
||||
{
|
||||
"id": 1008,
|
||||
"objType": 1,
|
||||
"point": "model_04",
|
||||
"storyBegin": 12,
|
||||
"chooseId": [],
|
||||
"storyEnd": 0,
|
||||
"nextTid": -1,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1000
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"endTid": -1
|
||||
},
|
||||
{
|
||||
"id": 1009,
|
||||
"objType": 1,
|
||||
"point": "model_05",
|
||||
"storyBegin": 13,
|
||||
"chooseId": [],
|
||||
"storyEnd": 0,
|
||||
"nextTid": -1,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1000
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"endTid": -1
|
||||
},
|
||||
{
|
||||
"id": 1010,
|
||||
"objType": 1,
|
||||
"point": "model_06",
|
||||
"storyBegin": 14,
|
||||
"chooseId": [],
|
||||
"storyEnd": 0,
|
||||
"nextTid": -1,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1000
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"endTid": -1
|
||||
},
|
||||
{
|
||||
"id": 1011,
|
||||
"objType": 2,
|
||||
"point": "icon_03",
|
||||
"storyBegin": 8,
|
||||
"chooseId": [
|
||||
100011,
|
||||
100012
|
||||
],
|
||||
"storyEnd": 0,
|
||||
"nextTid": 0,
|
||||
"reward": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
},
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "gold",
|
||||
"n": 1000
|
||||
}
|
||||
],
|
||||
"CD": 0,
|
||||
"endTid": -1
|
||||
}
|
||||
]
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -855,6 +855,30 @@
|
||||
"buffeffect": "",
|
||||
"buffpos": ""
|
||||
},
|
||||
{
|
||||
"Id": 390001124,
|
||||
"Name": {
|
||||
"key": "skill_buff_390001124",
|
||||
"text": "无法复活"
|
||||
},
|
||||
"Desc": {
|
||||
"key": "skill_buffdes_390001124",
|
||||
"text": "无法复活"
|
||||
},
|
||||
"BuffType": 0,
|
||||
"EffectArgu": [],
|
||||
"BufParNum": 1,
|
||||
"RelyCheckArgu": [],
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 0,
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
"buffeffect": "",
|
||||
"buffpos": ""
|
||||
},
|
||||
{
|
||||
"Id": 390001201,
|
||||
"Name": {
|
||||
@ -1096,7 +1120,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 0,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1122,7 +1146,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1148,7 +1172,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1174,7 +1198,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 0,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1200,7 +1224,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1226,7 +1250,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1252,7 +1276,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1278,7 +1302,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 0,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1304,7 +1328,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1330,7 +1354,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1356,7 +1380,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 0,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1382,7 +1406,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1408,7 +1432,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1434,7 +1458,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1460,7 +1484,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 0,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1486,7 +1510,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1512,7 +1536,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1538,7 +1562,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 0,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1564,7 +1588,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1590,7 +1614,7 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
@ -1616,6 +1640,58 @@
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
"buffeffect": "",
|
||||
"buffpos": ""
|
||||
},
|
||||
{
|
||||
"Id": 390001328,
|
||||
"Name": {
|
||||
"key": "skill_buff_390001328",
|
||||
"text": "队长技-防御提升"
|
||||
},
|
||||
"Desc": {
|
||||
"key": "skill_buffdes_390001328",
|
||||
"text": "防御提升40%"
|
||||
},
|
||||
"BuffType": 2,
|
||||
"EffectArgu": [
|
||||
300
|
||||
],
|
||||
"BufParNum": 1,
|
||||
"RelyCheckArgu": [],
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"buffIcon": "",
|
||||
"buffeffect": "",
|
||||
"buffpos": ""
|
||||
},
|
||||
{
|
||||
"Id": 390001401,
|
||||
"Name": {
|
||||
"key": "skill_buff_390001401",
|
||||
"text": "中毒"
|
||||
},
|
||||
"Desc": {
|
||||
"key": "skill_buffdes_390001401",
|
||||
"text": "回合开始时受到伤害,伤害为最大生命值4%"
|
||||
},
|
||||
"BuffType": 31,
|
||||
"EffectArgu": [
|
||||
400
|
||||
],
|
||||
"BufParNum": 1,
|
||||
"RelyCheckArgu": [],
|
||||
"CoexistCheckArgu": [],
|
||||
"Effect": 1,
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
|
@ -2,8 +2,8 @@
|
||||
{
|
||||
"Id": 490067001,
|
||||
"When": "RouFro",
|
||||
"Where": "3",
|
||||
"AddCon": [],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -14,10 +14,8 @@
|
||||
{
|
||||
"Id": 490068001,
|
||||
"When": "RouFro",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"hpproless=500"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "Hpproless=500,Target=3",
|
||||
"PasPr": 500,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -28,8 +26,8 @@
|
||||
{
|
||||
"Id": 425004311,
|
||||
"When": "RouFro",
|
||||
"Where": "4",
|
||||
"AddCon": [],
|
||||
"TargetCheck": 4,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -41,8 +39,8 @@
|
||||
{
|
||||
"Id": 435002211,
|
||||
"When": "SkillStart",
|
||||
"Where": "2",
|
||||
"AddCon": [],
|
||||
"TargetCheck": 2,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -53,10 +51,8 @@
|
||||
{
|
||||
"Id": 434006211,
|
||||
"When": "ImpEff",
|
||||
"Where": "2",
|
||||
"AddCon": [
|
||||
"EffID=390002003"
|
||||
],
|
||||
"TargetCheck": 2,
|
||||
"AddCon": "EffID=390002003",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -67,10 +63,8 @@
|
||||
{
|
||||
"Id": 425001211,
|
||||
"When": "RouEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"cd=4"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -81,10 +75,8 @@
|
||||
{
|
||||
"Id": 425001212,
|
||||
"When": "SufEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"EffID=390001209"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "EffID=390001209",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -95,8 +87,8 @@
|
||||
{
|
||||
"Id": 425001213,
|
||||
"When": "RouFro",
|
||||
"Where": "3",
|
||||
"AddCon": [],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -107,10 +99,8 @@
|
||||
{
|
||||
"Id": 425001221,
|
||||
"When": "RouEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"cd=4"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -121,10 +111,8 @@
|
||||
{
|
||||
"Id": 425001222,
|
||||
"When": "SufEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"EffID=390001209"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "EffID=390001209",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -135,8 +123,8 @@
|
||||
{
|
||||
"Id": 425001223,
|
||||
"When": "RouFro",
|
||||
"Where": "3",
|
||||
"AddCon": [],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -147,10 +135,8 @@
|
||||
{
|
||||
"Id": 425001231,
|
||||
"When": "RouEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"cd=4"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -161,10 +147,8 @@
|
||||
{
|
||||
"Id": 425001232,
|
||||
"When": "SufEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"EffID=390001209"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "EffID=390001209",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -175,8 +159,8 @@
|
||||
{
|
||||
"Id": 425001233,
|
||||
"When": "RouFro",
|
||||
"Where": "3",
|
||||
"AddCon": [],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -187,10 +171,8 @@
|
||||
{
|
||||
"Id": 425001241,
|
||||
"When": "RouEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"cd=4"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -201,10 +183,8 @@
|
||||
{
|
||||
"Id": 425001242,
|
||||
"When": "SufEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"EffID=390001209"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "EffID=390001209",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -215,8 +195,8 @@
|
||||
{
|
||||
"Id": 425001243,
|
||||
"When": "RouFro",
|
||||
"Where": "3",
|
||||
"AddCon": [],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -227,10 +207,8 @@
|
||||
{
|
||||
"Id": 425001251,
|
||||
"When": "RouEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"cd=3"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -241,10 +219,8 @@
|
||||
{
|
||||
"Id": 425001252,
|
||||
"When": "SufEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"EffID=390001209"
|
||||
],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "EffID=390001209",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -255,8 +231,8 @@
|
||||
{
|
||||
"Id": 425001253,
|
||||
"When": "RouFro",
|
||||
"Where": "3",
|
||||
"AddCon": [],
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
@ -267,11 +243,8 @@
|
||||
{
|
||||
"Id": 444005311,
|
||||
"When": "RemoveBuffEnd",
|
||||
"Where": "2",
|
||||
"AddCon": [
|
||||
"EffType=0",
|
||||
"Result=1"
|
||||
],
|
||||
"TargetCheck": 2,
|
||||
"AddCon": "EffType=0,Result=1",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 10,
|
||||
@ -281,19 +254,123 @@
|
||||
},
|
||||
{
|
||||
"Id": 435001211,
|
||||
"When": "RemoveBuffEnd",
|
||||
"Where": "3",
|
||||
"AddCon": [
|
||||
"EffType=4",
|
||||
"Result=1"
|
||||
],
|
||||
"When": "AtkEnd",
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 10,
|
||||
"MaxEmitTimes": 1,
|
||||
"Callback": [
|
||||
935001213,
|
||||
935001214,
|
||||
935001215
|
||||
224004212
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 435001212,
|
||||
"When": "AtkEnd",
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 1,
|
||||
"Callback": [
|
||||
924004212
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 444006211,
|
||||
"When": "Kill",
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 0,
|
||||
"Callback": [
|
||||
244006212,
|
||||
244006213
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 444006311,
|
||||
"When": "Kill",
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "SkillID=944006313",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 0,
|
||||
"Callback": [
|
||||
944006318
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 444006321,
|
||||
"When": "Kill",
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "SkillID=944006323",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 0,
|
||||
"Callback": [
|
||||
944006328
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 444006331,
|
||||
"When": "Kill",
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "SkillID=944006333",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 0,
|
||||
"Callback": [
|
||||
944006338
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 444006341,
|
||||
"When": "Kill",
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "SkillID=944006343",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 0,
|
||||
"Callback": [
|
||||
944006348
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 444006351,
|
||||
"When": "Kill",
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "SkillID=944006353",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 0,
|
||||
"Callback": [
|
||||
944006358
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 415005211,
|
||||
"When": "TreEnd",
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 0,
|
||||
"Callback": [
|
||||
215005212
|
||||
]
|
||||
},
|
||||
{
|
||||
"Id": 415005212,
|
||||
"When": "TreStart",
|
||||
"TargetCheck": 3,
|
||||
"AddCon": "BeyondHp=1000",
|
||||
"PasPr": 1000,
|
||||
"Type": "CallSkillPas",
|
||||
"MaxEmitTimes": 0,
|
||||
"Callback": [
|
||||
915005214
|
||||
]
|
||||
}
|
||||
]
|
@ -59,7 +59,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1011",
|
||||
"text": "战斗装备"
|
||||
},
|
||||
"ico": "tjp_zb_03",
|
||||
"color": 1
|
||||
},
|
||||
{
|
||||
"id": 1002,
|
||||
@ -121,7 +127,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1011",
|
||||
"text": "战斗装备"
|
||||
},
|
||||
"ico": "tjp_zb_03",
|
||||
"color": 2
|
||||
},
|
||||
{
|
||||
"id": 1003,
|
||||
@ -183,7 +195,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1011",
|
||||
"text": "战斗装备"
|
||||
},
|
||||
"ico": "tjp_zb_03",
|
||||
"color": 3
|
||||
},
|
||||
{
|
||||
"id": 1004,
|
||||
@ -245,7 +263,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1011",
|
||||
"text": "战斗装备"
|
||||
},
|
||||
"ico": "tjp_zb_03",
|
||||
"color": 4
|
||||
},
|
||||
{
|
||||
"id": 1005,
|
||||
@ -307,7 +331,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1011",
|
||||
"text": "战斗装备"
|
||||
},
|
||||
"ico": "tjp_zb_03",
|
||||
"color": 5
|
||||
},
|
||||
{
|
||||
"id": 1006,
|
||||
@ -369,7 +399,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1011",
|
||||
"text": "战斗装备"
|
||||
},
|
||||
"ico": "tjp_zb_03",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 1007,
|
||||
@ -431,7 +467,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1011",
|
||||
"text": "战斗装备"
|
||||
},
|
||||
"ico": "tjp_zb_03",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 1008,
|
||||
@ -493,7 +535,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1011",
|
||||
"text": "战斗装备"
|
||||
},
|
||||
"ico": "tjp_zb_03",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 1009,
|
||||
@ -555,7 +603,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1011",
|
||||
"text": "战斗装备"
|
||||
},
|
||||
"ico": "tjp_zb_03",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 1010,
|
||||
@ -606,7 +660,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1011",
|
||||
"text": "战斗装备"
|
||||
},
|
||||
"ico": "tjp_zb_03",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 2001,
|
||||
@ -668,7 +728,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1012",
|
||||
"text": "辅助装备"
|
||||
},
|
||||
"ico": "tjp_zb_01",
|
||||
"color": 1
|
||||
},
|
||||
{
|
||||
"id": 2002,
|
||||
@ -730,7 +796,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1012",
|
||||
"text": "辅助装备"
|
||||
},
|
||||
"ico": "tjp_zb_01",
|
||||
"color": 2
|
||||
},
|
||||
{
|
||||
"id": 2003,
|
||||
@ -792,7 +864,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1012",
|
||||
"text": "辅助装备"
|
||||
},
|
||||
"ico": "tjp_zb_01",
|
||||
"color": 3
|
||||
},
|
||||
{
|
||||
"id": 2004,
|
||||
@ -854,7 +932,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1012",
|
||||
"text": "辅助装备"
|
||||
},
|
||||
"ico": "tjp_zb_01",
|
||||
"color": 4
|
||||
},
|
||||
{
|
||||
"id": 2005,
|
||||
@ -916,7 +1000,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1012",
|
||||
"text": "辅助装备"
|
||||
},
|
||||
"ico": "tjp_zb_01",
|
||||
"color": 5
|
||||
},
|
||||
{
|
||||
"id": 2006,
|
||||
@ -978,7 +1068,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1012",
|
||||
"text": "辅助装备"
|
||||
},
|
||||
"ico": "tjp_zb_01",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 2007,
|
||||
@ -1040,7 +1136,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1012",
|
||||
"text": "辅助装备"
|
||||
},
|
||||
"ico": "tjp_zb_01",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 2008,
|
||||
@ -1102,7 +1204,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1012",
|
||||
"text": "辅助装备"
|
||||
},
|
||||
"ico": "tjp_zb_01",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 2009,
|
||||
@ -1164,7 +1272,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1012",
|
||||
"text": "辅助装备"
|
||||
},
|
||||
"ico": "tjp_zb_01",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 2010,
|
||||
@ -1215,7 +1329,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1012",
|
||||
"text": "辅助装备"
|
||||
},
|
||||
"ico": "tjp_zb_01",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 3001,
|
||||
@ -1277,7 +1397,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1013",
|
||||
"text": "特殊装备"
|
||||
},
|
||||
"ico": "tjp_zb_02",
|
||||
"color": 1
|
||||
},
|
||||
{
|
||||
"id": 3002,
|
||||
@ -1339,7 +1465,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1013",
|
||||
"text": "特殊装备"
|
||||
},
|
||||
"ico": "tjp_zb_02",
|
||||
"color": 2
|
||||
},
|
||||
{
|
||||
"id": 3003,
|
||||
@ -1401,7 +1533,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1013",
|
||||
"text": "特殊装备"
|
||||
},
|
||||
"ico": "tjp_zb_02",
|
||||
"color": 3
|
||||
},
|
||||
{
|
||||
"id": 3004,
|
||||
@ -1463,7 +1601,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1013",
|
||||
"text": "特殊装备"
|
||||
},
|
||||
"ico": "tjp_zb_02",
|
||||
"color": 4
|
||||
},
|
||||
{
|
||||
"id": 3005,
|
||||
@ -1525,7 +1669,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1013",
|
||||
"text": "特殊装备"
|
||||
},
|
||||
"ico": "tjp_zb_02",
|
||||
"color": 5
|
||||
},
|
||||
{
|
||||
"id": 3006,
|
||||
@ -1587,7 +1737,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1013",
|
||||
"text": "特殊装备"
|
||||
},
|
||||
"ico": "tjp_zb_02",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 3007,
|
||||
@ -1649,7 +1805,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1013",
|
||||
"text": "特殊装备"
|
||||
},
|
||||
"ico": "tjp_zb_02",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 3008,
|
||||
@ -1711,7 +1873,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1013",
|
||||
"text": "特殊装备"
|
||||
},
|
||||
"ico": "tjp_zb_02",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 3009,
|
||||
@ -1773,7 +1941,13 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1013",
|
||||
"text": "特殊装备"
|
||||
},
|
||||
"ico": "tjp_zb_02",
|
||||
"color": 6
|
||||
},
|
||||
{
|
||||
"id": 3010,
|
||||
@ -1824,6 +1998,12 @@
|
||||
}
|
||||
],
|
||||
"desk": "",
|
||||
"shelves": ""
|
||||
"shelves": "",
|
||||
"name": {
|
||||
"key": "smithy_name_1013",
|
||||
"text": "特殊装备"
|
||||
},
|
||||
"ico": "tjp_zb_02",
|
||||
"color": 6
|
||||
}
|
||||
]
|
@ -237,483 +237,5 @@
|
||||
"floors": -1,
|
||||
"time": 300,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 11,
|
||||
"star": 11,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1001",
|
||||
"text": "木质"
|
||||
},
|
||||
"before": 10,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50002",
|
||||
"n": 5
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 1,
|
||||
"time": 500,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 12,
|
||||
"star": 12,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1002",
|
||||
"text": "石质"
|
||||
},
|
||||
"before": 11,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50002",
|
||||
"n": 10
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 1,
|
||||
"time": 500,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 13,
|
||||
"star": 13,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1003",
|
||||
"text": "铁质"
|
||||
},
|
||||
"before": 12,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50002",
|
||||
"n": 15
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 1,
|
||||
"time": 500,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 14,
|
||||
"star": 14,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1004",
|
||||
"text": "钢质"
|
||||
},
|
||||
"before": 13,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50002",
|
||||
"n": 20
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 2,
|
||||
"time": 500,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 15,
|
||||
"star": 15,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1005",
|
||||
"text": "铂金质"
|
||||
},
|
||||
"before": 14,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50002",
|
||||
"n": 25
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 3,
|
||||
"time": 500,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 16,
|
||||
"star": 16,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1006",
|
||||
"text": "钻石质"
|
||||
},
|
||||
"before": 15,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50002",
|
||||
"n": 30
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 4,
|
||||
"time": 500,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 17,
|
||||
"star": 17,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1007",
|
||||
"text": "星耀石质"
|
||||
},
|
||||
"before": 16,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50002",
|
||||
"n": 35
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 5,
|
||||
"time": 500,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 18,
|
||||
"star": 18,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1008",
|
||||
"text": "星陨石质"
|
||||
},
|
||||
"before": 17,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50002",
|
||||
"n": 40
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 5,
|
||||
"time": 500,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 19,
|
||||
"star": 19,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1009",
|
||||
"text": "星核质"
|
||||
},
|
||||
"before": 18,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50002",
|
||||
"n": 45
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 5,
|
||||
"time": 500,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 20,
|
||||
"star": 20,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1010",
|
||||
"text": "宇宙粒子质"
|
||||
},
|
||||
"before": 19,
|
||||
"starupneed": [],
|
||||
"probability": 100,
|
||||
"floors": -1,
|
||||
"time": 500,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 21,
|
||||
"star": 21,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1001",
|
||||
"text": "木质"
|
||||
},
|
||||
"before": 20,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50003",
|
||||
"n": 5
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 1,
|
||||
"time": 1000,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 22,
|
||||
"star": 22,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1002",
|
||||
"text": "石质"
|
||||
},
|
||||
"before": 21,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50003",
|
||||
"n": 10
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 1,
|
||||
"time": 1000,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 23,
|
||||
"star": 23,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1003",
|
||||
"text": "铁质"
|
||||
},
|
||||
"before": 22,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50003",
|
||||
"n": 15
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 1,
|
||||
"time": 1000,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 24,
|
||||
"star": 24,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1004",
|
||||
"text": "钢质"
|
||||
},
|
||||
"before": 23,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50003",
|
||||
"n": 20
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 2,
|
||||
"time": 1000,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 25,
|
||||
"star": 25,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1005",
|
||||
"text": "铂金质"
|
||||
},
|
||||
"before": 24,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50003",
|
||||
"n": 25
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 3,
|
||||
"time": 1000,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 26,
|
||||
"star": 26,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1006",
|
||||
"text": "钻石质"
|
||||
},
|
||||
"before": 25,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50003",
|
||||
"n": 30
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 4,
|
||||
"time": 1000,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 27,
|
||||
"star": 27,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1007",
|
||||
"text": "星耀石质"
|
||||
},
|
||||
"before": 26,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50003",
|
||||
"n": 35
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 5,
|
||||
"time": 1000,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 28,
|
||||
"star": 28,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1008",
|
||||
"text": "星陨石质"
|
||||
},
|
||||
"before": 27,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50003",
|
||||
"n": 40
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 5,
|
||||
"time": 1000,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 29,
|
||||
"star": 29,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1009",
|
||||
"text": "星核质"
|
||||
},
|
||||
"before": 28,
|
||||
"starupneed": [
|
||||
{
|
||||
"a": "item",
|
||||
"t": "50003",
|
||||
"n": 45
|
||||
},
|
||||
{
|
||||
"a": "item",
|
||||
"t": "10013",
|
||||
"n": 1
|
||||
}
|
||||
],
|
||||
"probability": 100,
|
||||
"floors": 5,
|
||||
"time": 1000,
|
||||
"desk": ""
|
||||
},
|
||||
{
|
||||
"id": 30,
|
||||
"star": 30,
|
||||
"starshow": {
|
||||
"key": "smithy_name_1010",
|
||||
"text": "宇宙粒子质"
|
||||
},
|
||||
"before": 29,
|
||||
"starupneed": [],
|
||||
"probability": 100,
|
||||
"floors": -1,
|
||||
"time": 1000,
|
||||
"desk": ""
|
||||
}
|
||||
]
|
66
bin/json/game_smithytext.json
Normal file
66
bin/json/game_smithytext.json
Normal file
@ -0,0 +1,66 @@
|
||||
[
|
||||
{
|
||||
"id": 101,
|
||||
"type": 1,
|
||||
"txt": {
|
||||
"key": "smithy_txt_1001",
|
||||
"text": "快给我升级"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 102,
|
||||
"type": 1,
|
||||
"txt": {
|
||||
"key": "smithy_txt_1002",
|
||||
"text": "红伞伞啊白杆杆"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 201,
|
||||
"type": 2,
|
||||
"txt": {
|
||||
"key": "smithy_txt_1003",
|
||||
"text": "找我下单"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 202,
|
||||
"type": 2,
|
||||
"txt": {
|
||||
"key": "smithy_txt_1004",
|
||||
"text": "欢迎下次再来啊"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 301,
|
||||
"type": 3,
|
||||
"txt": {
|
||||
"key": "smithy_txt_1005",
|
||||
"text": "哼哧哼哧"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 302,
|
||||
"type": 3,
|
||||
"txt": {
|
||||
"key": "smithy_txt_1006",
|
||||
"text": "点我领装备咯"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 401,
|
||||
"type": 4,
|
||||
"txt": {
|
||||
"key": "smithy_txt_1007",
|
||||
"text": "我倒是有办法制造更高级的装备,可你得先升级铸造台,否则我肯定锤坏它"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": 402,
|
||||
"type": 4,
|
||||
"txt": {
|
||||
"key": "smithy_txt_1008",
|
||||
"text": "我可是维京人中技术最高超的铁匠,童叟无欺"
|
||||
}
|
||||
}
|
||||
]
|
File diff suppressed because it is too large
Load Diff
@ -218,8 +218,8 @@ const (
|
||||
Rtype9 TaskType = 9 //连续登陆xx天
|
||||
Rtype10 TaskType = 10 //拥有xx个好友
|
||||
Rtype11 TaskType = 11 //赠送X次友情点
|
||||
Rtask12 TaskType = 12 //使用好友助战英雄xx次
|
||||
Rtask13 TaskType = 13 //更换X次助战英雄
|
||||
Rtype12 TaskType = 12 //使用好友助战英雄xx次
|
||||
Rtype13 TaskType = 13 //更换X次助战英雄
|
||||
Rtype14 TaskType = 14 //累计xx次普通招募
|
||||
Rtype15 TaskType = 15 //累计xx次阵营招募
|
||||
Rtype16 TaskType = 16 //招募获得xx品质英雄xx个
|
||||
@ -279,9 +279,9 @@ const (
|
||||
)
|
||||
|
||||
const (
|
||||
MailLineEasy string = "mainline_data_easy" // 简单
|
||||
MailLineHard string = "mainline_data_hard" // 困难
|
||||
MailLinePurgatory string = "mainline_data_purgatory" // 炼狱
|
||||
MailLineEasy int32 = 1 // 简单
|
||||
MailLineHard int32 = 2 // 困难
|
||||
MailLinePurgatory int32 = 3 // 炼狱
|
||||
)
|
||||
|
||||
const (
|
||||
@ -306,3 +306,7 @@ const (
|
||||
const (
|
||||
MaxRankList = 50
|
||||
)
|
||||
|
||||
const (
|
||||
MaxMainlineIntensity = 3 // 最大难度
|
||||
)
|
||||
|
@ -91,8 +91,6 @@ type (
|
||||
IMainline interface {
|
||||
// 修改章节信息
|
||||
ModifyMainlineData(uid string, objId string, data interface{}) (code pb.ErrorCode)
|
||||
// 检查能不能挑战该关卡
|
||||
CheckChallengeChapter(storyObjId string, uid string, zhangjieID int32) (code pb.ErrorCode)
|
||||
/// 查询章节ID
|
||||
GetUsermainLineData(uid string) (mainlineId int32)
|
||||
}
|
||||
|
8
go.mod
8
go.mod
@ -41,11 +41,16 @@ require (
|
||||
gopkg.in/yaml.v2 v2.4.0
|
||||
)
|
||||
|
||||
require github.com/kr/fs v0.1.0 // indirect
|
||||
require (
|
||||
github.com/jtolds/gls v4.20.0+incompatible // indirect
|
||||
github.com/kr/fs v0.1.0 // indirect
|
||||
github.com/smartystreets/assertions v1.2.0 // indirect
|
||||
)
|
||||
|
||||
require (
|
||||
fyne.io/systray v1.10.1-0.20220621085403-9a2652634e93 // indirect
|
||||
github.com/PuerkitoBio/goquery v1.8.0 // indirect
|
||||
github.com/agiledragon/gomonkey/v2 v2.8.0
|
||||
github.com/akutz/memconn v0.1.0 // indirect
|
||||
github.com/andybalholm/cascadia v1.3.1 // indirect
|
||||
github.com/apache/thrift v0.16.0 // indirect
|
||||
@ -136,6 +141,7 @@ require (
|
||||
github.com/samuel/go-zookeeper v0.0.0-20201211165307-7117e9ea2414 // indirect
|
||||
github.com/shirou/gopsutil/v3 v3.22.2 // indirect
|
||||
github.com/smallnest/quick v0.0.0-20220103065406-780def6371e6 // indirect
|
||||
github.com/smartystreets/goconvey v1.7.2
|
||||
github.com/soheilhy/cmux v0.1.5 // indirect
|
||||
github.com/spf13/afero v1.6.0 // indirect
|
||||
github.com/spf13/jwalterweatherman v1.1.0 // indirect
|
||||
|
6
go.sum
6
go.sum
@ -60,6 +60,8 @@ github.com/Pallinder/go-randomdata v1.2.0 h1:DZ41wBchNRb/0GfsePLiSwb0PHZmT67XY00
|
||||
github.com/Pallinder/go-randomdata v1.2.0/go.mod h1:yHmJgulpD2Nfrm0cR9tI/+oAgRqCQQixsA8HyRZfV9Y=
|
||||
github.com/PuerkitoBio/goquery v1.8.0 h1:PJTF7AmFCFKk1N6V6jmKfrNH9tV5pNE6lZMkG0gta/U=
|
||||
github.com/PuerkitoBio/goquery v1.8.0/go.mod h1:ypIiRMtY7COPGk+I/YbZLbxsxn9g5ejnI2HSMtkjZvI=
|
||||
github.com/agiledragon/gomonkey/v2 v2.8.0 h1:u2K2nNGyk0ippzklz1CWalllEB9ptD+DtSXeCX5O000=
|
||||
github.com/agiledragon/gomonkey/v2 v2.8.0/go.mod h1:ap1AmDzcVOAz1YpeJ3TCzIgstoaWLA6jbbgxfB4w2iY=
|
||||
github.com/akavel/rsrc v0.10.2/go.mod h1:uLoCtb9J+EyAqh+26kdrTgmzRBFPGOolLWKpdxkKq+c=
|
||||
github.com/akutz/memconn v0.1.0 h1:NawI0TORU4hcOMsMr11g7vwlCdkYeLKXBcxWu2W/P8A=
|
||||
github.com/akutz/memconn v0.1.0/go.mod h1:Jo8rI7m0NieZyLI5e2CDlRdRqRRB4S7Xp77ukDjH+Fw=
|
||||
@ -678,9 +680,13 @@ github.com/smallnest/rpcx v1.7.4 h1:u6ADk/Ep8BqtAoJZO7LbniWsP+nqeAtcbaPm2D4eOXg=
|
||||
github.com/smallnest/rpcx v1.7.4/go.mod h1:TSciUoPlm8MYxnC7ErCz5ZymOFxOTbhN9cRgEI6Degs=
|
||||
github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d h1:zE9ykElWQ6/NYmHa3jpm/yHnI4xSofP+UP6SpjHcSeM=
|
||||
github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
|
||||
github.com/smartystreets/assertions v1.2.0 h1:42S6lae5dvLc7BrLu/0ugRtcFVjoJNMC/N3yZFZkDFs=
|
||||
github.com/smartystreets/assertions v1.2.0/go.mod h1:tcbTF8ujkAEcZ8TElKY+i30BzYlVhC/LOxJk7iOWnoo=
|
||||
github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=
|
||||
github.com/smartystreets/goconvey v1.6.4 h1:fv0U8FUIMPNf1L9lnHLvLhgicrIVChEkdzIKYqbNC9s=
|
||||
github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=
|
||||
github.com/smartystreets/goconvey v1.7.2 h1:9RBaZCeXEQ3UselpuwUQHltGVXvdwm6cv1hgR6gDIPg=
|
||||
github.com/smartystreets/goconvey v1.7.2/go.mod h1:Vw0tHAZW6lzCRk3xgdin6fKYcG+G3Pg9vgXWeJpQFMM=
|
||||
github.com/soheilhy/cmux v0.1.5 h1:jjzc5WVemNEDTLwv9tlmemhC73tI08BNOIGwBOo10Js=
|
||||
github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0=
|
||||
github.com/sourcegraph/annotate v0.0.0-20160123013949-f4cad6c6324d/go.mod h1:UdhH50NIW0fCiwBSr0co2m7BnFLdv4fQTgdqdJTHFeE=
|
||||
|
@ -322,7 +322,12 @@ func (this *configureComp) GetHeroSkillMaxLvConfig(skillId uint32) int32 {
|
||||
|
||||
if v, err := this.GetConfigure(game_skillatk); err == nil {
|
||||
if configure, ok := v.(*cfg.GameSkillAtk); ok {
|
||||
return configure.Get(int32(skillId)).MaxLV
|
||||
//return configure.Get(int32(skillId)).MaxLV
|
||||
for _, v1 := range configure.GetDataList() {
|
||||
if v1.Id == int32(skillId) {
|
||||
return v1.MaxLV
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -36,8 +36,9 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
|
||||
}
|
||||
return
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get game_vikingboss conf err:%v", err)
|
||||
}
|
||||
log.Errorf("get game_viking conf err:%v", err)
|
||||
return
|
||||
})
|
||||
err = this.LoadConfigure(game_challenge, cfg.NewGameHuntingChallenge)
|
||||
|
@ -57,36 +57,32 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.MainlineChalle
|
||||
return
|
||||
}
|
||||
|
||||
// 根据难度找对应的配置文件
|
||||
if chaptConfig.Intensity == comm.MailLineEasy {
|
||||
con := this.module.configure.GetMainlineEasyChapter(int32(req.MainlineId)) // 根据配置文件找
|
||||
if con == nil {
|
||||
code = pb.ErrorCode_ConfigNoFound
|
||||
return
|
||||
}
|
||||
if con.Route == 1 {
|
||||
if curChapter.MainlineId == 0 { // 表示第一小关
|
||||
|
||||
} else if con.Previoustage != curChapter.MainlineId { // 前置关卡校验
|
||||
// 分支关卡也校验一下
|
||||
for _, v := range curChapter.BranchID {
|
||||
if v == con.Previoustage {
|
||||
break
|
||||
}
|
||||
}
|
||||
code = pb.ErrorCode_MainlinePreNotFound
|
||||
}
|
||||
} else if con.Route == 2 { //分支
|
||||
bBranch = true
|
||||
// 只需要校验小关ID 是不是大于当前ID就可以
|
||||
//if curChapter.MainlineId < int32(req.MainlineId) { //必须大于前置关卡才可以挑战
|
||||
// code = pb.ErrorCode_MainlineIDFailed
|
||||
// return
|
||||
//}
|
||||
}
|
||||
res = append(res, con.Award...)
|
||||
node := this.module.configure.GetMainlineConfigData(int32(req.MainlineId), curChapter.Intensity)
|
||||
if node == nil { // 配置文件校验
|
||||
code = pb.ErrorCode_MainlineNotFindChapter
|
||||
return
|
||||
}
|
||||
|
||||
if node.Route == 1 {
|
||||
if node.Previoustage != curChapter.MainlineId {
|
||||
// 分支关卡也校验一下
|
||||
for _, v := range curChapter.BranchID {
|
||||
if v == node.Previoustage {
|
||||
break
|
||||
}
|
||||
}
|
||||
code = pb.ErrorCode_MainlinePreNotFound
|
||||
}
|
||||
} else if node.Route == 2 { //分支
|
||||
bBranch = true
|
||||
// 只需要校验小关ID 是不是大于当前ID就可以
|
||||
//if curChapter.MainlineId < int32(req.MainlineId) { //必须大于前置关卡才可以挑战
|
||||
// code = pb.ErrorCode_MainlineIDFailed
|
||||
// return
|
||||
//}
|
||||
}
|
||||
res = append(res, node.Award...)
|
||||
|
||||
// TODO 调用战斗逻辑
|
||||
// 挑战成功
|
||||
curChapter.MainlineId = int32(req.MainlineId)
|
||||
@ -104,29 +100,36 @@ func (this *apiComp) Challenge(session comm.IUserSession, req *pb.MainlineChalle
|
||||
code = pb.ErrorCode_DBError
|
||||
return
|
||||
}
|
||||
newChaptConfig := this.module.configure.GetMainlineChapter(int32(curChapter.ChapterId + 1)) // 查下一章节
|
||||
if newChaptConfig != nil {
|
||||
if len(newChaptConfig.Episode) <= 0 {
|
||||
return
|
||||
}
|
||||
//mainLineID := newChaptConfig.Episode[0]
|
||||
newChaptConfig := this.module.configure.GetMainlineNextConfigData(curChapter.Intensity, curChapter.ChapterId+1) // 查下一章节
|
||||
if newChaptConfig != nil && newChaptConfig.Previoustage == curChapter.MainlineId {
|
||||
// 如果本章节打完 则创建新的章节
|
||||
if chaptConfig.Episode[len(chaptConfig.Episode)-1] == int32(req.MainlineId) {
|
||||
_data := &pb.DBMainline{}
|
||||
_data.Id = primitive.NewObjectID().Hex()
|
||||
_data.ChapterId = curChapter.ChapterId + 1
|
||||
_data.MainlineId = 0 // 第二章数据默认0
|
||||
_mData := make(map[string]interface{}, 0)
|
||||
_data.Uid = session.GetUserId()
|
||||
_mData[_data.Id] = _data
|
||||
|
||||
this.module.modelMainline.addNewChapter(session.GetUserId(), _mData)
|
||||
// 推送新的章节
|
||||
session.SendMsg(string(this.module.GetType()), MainlineNewChapterPush, &pb.MainlineNewChapterPush{Data: _data})
|
||||
} else { // 切换下个难度
|
||||
|
||||
node := this.module.configure.GetMainlineConfigData(int32(req.MainlineId+1), curChapter.Intensity)
|
||||
if node == nil && curChapter.Intensity < comm.MaxMainlineIntensity { // 配置文件校验
|
||||
_data := &pb.DBMainline{}
|
||||
_data.Id = primitive.NewObjectID().Hex()
|
||||
_data.ChapterId = curChapter.ChapterId + 1
|
||||
_data.MainlineId = 0 // 第二章数据默认0
|
||||
_data.ChapterId = 1 // 默认第一章节
|
||||
_mData := make(map[string]interface{}, 0)
|
||||
_data.Uid = session.GetUserId()
|
||||
_data.Intensity = curChapter.Intensity + 1 // 难度+1
|
||||
_mData[_data.Id] = _data
|
||||
|
||||
this.module.modelMainline.addNewChapter(session.GetUserId(), _mData)
|
||||
// 推送新的章节
|
||||
session.SendMsg(string(this.module.GetType()), MainlineNewChapterPush, &pb.MainlineNewChapterPush{Data: _data})
|
||||
|
||||
session.SendMsg(string(this.module.GetType()), MainlineNewChapterPush, &pb.MainlineNewChapterPush{Data: _data})
|
||||
}
|
||||
}
|
||||
|
||||
// 发奖 (奖励数据还没配置,后续补充)
|
||||
code = this.module.DispenseRes(session, res, true)
|
||||
if code != pb.ErrorCode_Success {
|
||||
|
@ -34,6 +34,7 @@ func (this *apiComp) GetList(session comm.IUserSession, req *pb.MainlineGetListR
|
||||
_data.ChapterId = 1 // 默认第一章节
|
||||
_mData := make(map[string]interface{}, 0)
|
||||
_data.Uid = session.GetUserId()
|
||||
_data.Intensity = 1 // 难度1
|
||||
_mData[_data.Id] = _data
|
||||
|
||||
this.module.modelMainline.addNewChapter(session.GetUserId(), _mData)
|
||||
|
@ -2,22 +2,25 @@ package mainline
|
||||
|
||||
import (
|
||||
"go_dreamfactory/lego/core"
|
||||
"go_dreamfactory/lego/sys/log"
|
||||
"go_dreamfactory/modules"
|
||||
"go_dreamfactory/sys/configure"
|
||||
cfg "go_dreamfactory/sys/configure/structs"
|
||||
"sync"
|
||||
)
|
||||
|
||||
const (
|
||||
game_mainlinechapter = "game_mainlinechapter.json"
|
||||
game_mainlineeasy = "game_mainlineeasy.json"
|
||||
game_mainlinehard = "game_mainlinehard.json"
|
||||
game_mainlinepurgatory = "game_mainlinepurgatory.json"
|
||||
game_mainlinechapter = "game_mainlinechapter.json"
|
||||
game_mainline = "game_mainline.json"
|
||||
)
|
||||
|
||||
///配置管理基础组件
|
||||
type configureComp struct {
|
||||
modules.MCompConfigure
|
||||
module *Mainline
|
||||
module *Mainline
|
||||
hlock sync.RWMutex
|
||||
_mapMainline map[int64]*cfg.GameMainlineData
|
||||
_mapMainlineNextC map[int64]*cfg.GameMainlineData // 获取下一章节的对象
|
||||
}
|
||||
|
||||
//组件初始化接口
|
||||
@ -25,18 +28,47 @@ func (this *configureComp) Init(service core.IService, module core.IModule, comp
|
||||
err = this.MCompConfigure.Init(service, module, comp, options)
|
||||
this.module = module.(*Mainline)
|
||||
err = this.LoadMultiConfigure(map[string]interface{}{
|
||||
game_mainlinechapter: cfg.NewGameMainlineChapter,
|
||||
game_mainlineeasy: cfg.NewGameMainlineEasy,
|
||||
game_mainlinehard: cfg.NewGameMainlineHard,
|
||||
game_mainlinepurgatory: cfg.NewGameMainlinePurgatory,
|
||||
game_mainlinechapter: cfg.NewGameMainlineChapter,
|
||||
})
|
||||
|
||||
this._mapMainline = make(map[int64]*cfg.GameMainlineData, 0)
|
||||
this._mapMainlineNextC = make(map[int64]*cfg.GameMainlineData, 0)
|
||||
configure.RegisterConfigure(game_mainline, cfg.NewGameMainline, this.GetMainline)
|
||||
return
|
||||
}
|
||||
|
||||
func (this *configureComp) GetMainline() {
|
||||
if v, err := this.GetConfigure(game_mainline); err == nil {
|
||||
if configure, ok := v.(*cfg.GameMainline); ok {
|
||||
this.hlock.Lock()
|
||||
defer this.hlock.Unlock()
|
||||
for _, value := range configure.GetDataList() {
|
||||
this._mapMainline[int64(value.Id<<16)+int64(value.Intensity)] = value
|
||||
}
|
||||
for _, value := range configure.GetDataList() {
|
||||
this._mapMainlineNextC[int64(value.Intensity<<16)+int64(value.Chapter)] = value
|
||||
}
|
||||
return
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get game_pagoda conf err:%v", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// id + intensity
|
||||
func (this *configureComp) GetMainlineConfigData(id, intensity int32) *cfg.GameMainlineData {
|
||||
return this._mapMainline[int64(id<<16)+int64(intensity)]
|
||||
}
|
||||
|
||||
// intensity + chapter
|
||||
func (this *configureComp) GetMainlineNextConfigData(intensity, chapter int32) *cfg.GameMainlineData {
|
||||
return this._mapMainline[int64(intensity<<16)+int64(chapter)]
|
||||
}
|
||||
|
||||
//读取配置数据
|
||||
func (this *configureComp) GetConfigure(name string) (v interface{}, err error) {
|
||||
return configure.GetConfigure(name)
|
||||
|
||||
}
|
||||
|
||||
func (this *configureComp) GetMainlineChapter(id int32) (data *cfg.GameMainlineChapterData) {
|
||||
@ -59,69 +91,3 @@ func (this *configureComp) GetMainlineChapter(id int32) (data *cfg.GameMainlineC
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// 获取简单的关卡配置信息
|
||||
func (this *configureComp) GetMainlineEasyChapter(id int32) (data *cfg.GameMainlineEasyData) {
|
||||
if v, err := this.GetConfigure(game_mainlineeasy); err != nil {
|
||||
this.module.Errorf("get global conf err:%v", err)
|
||||
return
|
||||
} else {
|
||||
var (
|
||||
configure *cfg.GameMainlineEasy
|
||||
ok bool
|
||||
)
|
||||
if configure, ok = v.(*cfg.GameMainlineEasy); !ok {
|
||||
this.module.Errorf("%T no is *cfg.Game_MainlineEasyData", v)
|
||||
return
|
||||
}
|
||||
|
||||
if data, ok = configure.GetDataMap()[id]; ok {
|
||||
return
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// 获取炼狱级别难度的关卡配置
|
||||
func (this *configureComp) GetMainlinePurgatoryChapter(id int32) (data *cfg.GameMainlinePurgatoryData) {
|
||||
if v, err := this.GetConfigure(game_mainlinepurgatory); err != nil {
|
||||
this.module.Errorf("get global conf err:%v", err)
|
||||
return
|
||||
} else {
|
||||
var (
|
||||
configure *cfg.GameMainlinePurgatory
|
||||
ok bool
|
||||
)
|
||||
if configure, ok = v.(*cfg.GameMainlinePurgatory); !ok {
|
||||
this.module.Errorf("%T no is *cfg.Game_MainlinePurgatoryData", v)
|
||||
return
|
||||
}
|
||||
|
||||
if data, ok = configure.GetDataMap()[id]; ok {
|
||||
return
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// 获取困难的关卡配置
|
||||
func (this *configureComp) GetMainlineHardChapter(id int32) (data *cfg.GameMainlineHardData) {
|
||||
if v, err := this.GetConfigure(game_mainlinehard); err != nil {
|
||||
this.module.Errorf("get global conf err:%v", err)
|
||||
return
|
||||
} else {
|
||||
var (
|
||||
configure *cfg.GameMainlineHard
|
||||
ok bool
|
||||
)
|
||||
if configure, ok = v.(*cfg.GameMainlineHard); !ok {
|
||||
this.module.Errorf("%T no is *cfg.Game_MainlineHardData", v)
|
||||
return
|
||||
}
|
||||
|
||||
if data, ok = configure.GetDataMap()[id]; ok {
|
||||
return
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
@ -45,73 +45,6 @@ func (this *Mainline) ModifyMainlineData(uid string, objId string, data map[stri
|
||||
return
|
||||
}
|
||||
|
||||
// 校验是否能挑战该关卡
|
||||
func (this *Mainline) CheckChallengeChapter(storyObjId string, uid string, zhangjieID int32, Intensity string) (code pb.ErrorCode) {
|
||||
|
||||
// _szData, err := this.modelMainline.getMainlineList(uid)
|
||||
// if err != nil {
|
||||
// code = pb.ErrorCode_DBError
|
||||
// return
|
||||
// }
|
||||
// sort.SliceStable(_szData, func(i, j int) bool { // 排序
|
||||
// return _szData[i].ChapterId > _szData[j].ChapterId
|
||||
// })
|
||||
|
||||
// 获取当前关卡数据
|
||||
curChapter := this.modelMainline.getOneChapterInfo(uid, storyObjId)
|
||||
if curChapter == nil {
|
||||
code = pb.ErrorCode_MainlineNotFindChapter // 没有找到主线关卡信息
|
||||
return
|
||||
}
|
||||
stroyId := curChapter.ChapterId
|
||||
// 获取关卡难度用来取配置文件
|
||||
if Intensity == comm.MailLineEasy {
|
||||
configData := this.configure.GetMainlineEasyChapter(curChapter.MainlineId)
|
||||
if configData != nil { // 校验章节
|
||||
if configData.Chapter != zhangjieID {
|
||||
code = pb.ErrorCode_ConfigNoFound
|
||||
return
|
||||
}
|
||||
// 如果这一关是路线二的话
|
||||
if configData.Route == 2 && curChapter.ChapterId > stroyId { // 当前的关卡ID 大于路线2的ID 即可
|
||||
return
|
||||
}
|
||||
// 判断下一关是不是当前传入的值
|
||||
if configData.Previoustage != stroyId {
|
||||
code = pb.ErrorCode_MainlineIDFailed
|
||||
return
|
||||
}
|
||||
}
|
||||
} else if Intensity == comm.MailLineHard {
|
||||
configData := this.configure.GetMainlineHardChapter(curChapter.MainlineId)
|
||||
if configData != nil { // 校验章节
|
||||
if configData.Chapter != zhangjieID {
|
||||
code = pb.ErrorCode_ConfigNoFound
|
||||
return
|
||||
}
|
||||
// 判断下一关是不是当前传入的值
|
||||
if configData.Previoustage != stroyId {
|
||||
code = pb.ErrorCode_MainlineIDFailed
|
||||
return
|
||||
}
|
||||
}
|
||||
} else {
|
||||
configData := this.configure.GetMainlinePurgatoryChapter(curChapter.MainlineId)
|
||||
if configData != nil { // 校验章节
|
||||
if configData.Chapter != zhangjieID {
|
||||
code = pb.ErrorCode_ConfigNoFound
|
||||
return
|
||||
}
|
||||
// 判断下一关是不是当前传入的值
|
||||
if configData.Previoustage != stroyId {
|
||||
code = pb.ErrorCode_MainlineIDFailed
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (this *Mainline) GetUsermainLineData(uid string) (mainlineId int32) {
|
||||
|
||||
_szData, err := this.modelMainline.getMainlineList(uid)
|
||||
|
@ -47,7 +47,8 @@ func (this *apiComp) Choose(session comm.IUserSession, req *pb.RtaskChooseReq) (
|
||||
}
|
||||
|
||||
// 校验限定条件
|
||||
if ok := this.moduleRtask.modelRtask.checkCondi(session.GetUserId(), chooseCnf.PreTid); !ok {
|
||||
if err, ok := this.moduleRtask.modelRtask.checkCondi(session.GetUserId(), chooseCnf.PreTid); !ok {
|
||||
this.moduleRtask.Error(err.Error())
|
||||
code = pb.ErrorCode_RtaskCondiNoReach
|
||||
return
|
||||
}
|
||||
|
@ -36,6 +36,7 @@ func (this *apiComp) Apply(session comm.IUserSession, req *pb.RtaskApplyReq) (co
|
||||
var (
|
||||
frtaskArr *pb.FrtaskIds
|
||||
ok bool
|
||||
err error
|
||||
)
|
||||
|
||||
if frtaskArr, ok = rtask.FrtaskIds[conf.Group]; !ok {
|
||||
@ -50,7 +51,8 @@ func (this *apiComp) Apply(session comm.IUserSession, req *pb.RtaskApplyReq) (co
|
||||
|
||||
if req.RtaskSubId == 0 {
|
||||
//校验前置任务和限定条件
|
||||
if code, ok = this.moduleRtask.modelRtask.checkHandle(session.GetUserId(), frtaskArr.RtaskIds, conf); !ok {
|
||||
if err, ok = this.moduleRtask.modelRtask.checkHandle(session.GetUserId(), frtaskArr.RtaskIds, conf); !ok {
|
||||
this.moduleRtask.Error(err.Error())
|
||||
code = pb.ErrorCode_RtaskCondiNoReach
|
||||
return
|
||||
}
|
||||
@ -78,7 +80,8 @@ func (this *apiComp) Apply(session comm.IUserSession, req *pb.RtaskApplyReq) (co
|
||||
code = this.moduleRtask.DispenseRes(session, sideConf.Reward, true)
|
||||
} else {
|
||||
// 校验完成条件
|
||||
if ok := this.moduleRtask.modelRtask.checkCondi(session.GetUserId(), sideConf.EndTid); !ok {
|
||||
if err, ok := this.moduleRtask.modelRtask.checkCondi(session.GetUserId(), sideConf.EndTid); !ok {
|
||||
this.moduleRtask.Error(err.Error())
|
||||
code = pb.ErrorCode_RtaskCondiNoReach
|
||||
return
|
||||
}
|
||||
|
35
modules/rtask/condiFindHandle.go
Normal file
35
modules/rtask/condiFindHandle.go
Normal file
@ -0,0 +1,35 @@
|
||||
// 匹配类型和参数,返回任务条件ID
|
||||
package rtask
|
||||
|
||||
import cfg "go_dreamfactory/sys/configure/structs"
|
||||
|
||||
// 与每个参数比较
|
||||
func (this *ModelRtask) equalParams(cfg *cfg.GameRdtaskCondiData, vals ...int32) (condiId int32) {
|
||||
if len(vals) != 1 {
|
||||
return
|
||||
}
|
||||
|
||||
var (
|
||||
err error
|
||||
paramLen int
|
||||
)
|
||||
if paramLen, err = verifyParam(cfg, vals...); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
if paramLen == 1 {
|
||||
if vals[0] == cfg.Data1 {
|
||||
condiId = cfg.Id
|
||||
}
|
||||
} else if paramLen == 2 {
|
||||
if vals[0] == cfg.Data1 && vals[1] == cfg.Data2 {
|
||||
condiId = cfg.Id
|
||||
}
|
||||
} else if paramLen == 3 {
|
||||
if vals[0] == cfg.Data1 && vals[1] == cfg.Data2 && vals[2] == cfg.Data3 {
|
||||
condiId = cfg.Id
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
@ -45,7 +45,7 @@ func (this *configureComp) getRtaskCfg() (data *cfg.GameRdtask, err error) {
|
||||
return
|
||||
}
|
||||
|
||||
func (this *configureComp) getRtaskTypeCfg() (data *cfg.GameRdtaskCondi, err error) {
|
||||
func (this *configureComp) getRtaskCondiCfg() (data *cfg.GameRdtaskCondi, err error) {
|
||||
var (
|
||||
v interface{}
|
||||
ok bool
|
||||
@ -120,7 +120,7 @@ func (this *configureComp) getRtaskSidById(id int32) *cfg.GameRdtaskSideData {
|
||||
|
||||
// 查询任务类型
|
||||
func (this *configureComp) getRtaskTypeById(typeId int32) (data *cfg.GameRdtaskCondiData, err error) {
|
||||
cfg, err := this.getRtaskTypeCfg()
|
||||
cfg, err := this.getRtaskCondiCfg()
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
|
94
modules/rtask/help.go
Normal file
94
modules/rtask/help.go
Normal file
@ -0,0 +1,94 @@
|
||||
package rtask
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"go_dreamfactory/pb"
|
||||
cfg "go_dreamfactory/sys/configure/structs"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
func verifyParam(cfg *cfg.GameRdtaskCondiData, vals ...int32) (n int, err error) {
|
||||
// if cfg.Data1 != 0 && cfg.Data2 != 0 && cfg.Data3 != 0 {
|
||||
// if len(vals) != 3 {
|
||||
// err = errors.New(fmt.Sprintf("参数个数不一致,期望3实际是%v", len(vals)))
|
||||
// return
|
||||
// } else {
|
||||
// n = len(vals)
|
||||
// }
|
||||
// }
|
||||
|
||||
if cfg.Data1 != 0 && cfg.Data2 != 0 && cfg.Data3 != 0 {
|
||||
if len(vals) != 3 {
|
||||
err = errors.New(fmt.Sprintf("参数个数不一致,期望3实际是%v", len(vals)))
|
||||
return
|
||||
} else {
|
||||
n = len(vals)
|
||||
}
|
||||
}
|
||||
|
||||
if cfg.Data1 != 0 && cfg.Data2 != 0 {
|
||||
if len(vals) != 2 {
|
||||
err = errors.New(fmt.Sprintf("参数个数不一致,期望2实际是%v", len(vals)))
|
||||
return
|
||||
} else {
|
||||
n = len(vals)
|
||||
}
|
||||
}
|
||||
|
||||
if cfg.Data1 != 0 {
|
||||
if len(vals) != 1 {
|
||||
err = errors.New(fmt.Sprintf("参数个数不一致,期望1实际是%v", len(vals)))
|
||||
return
|
||||
} else {
|
||||
n = len(vals)
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
func toMap(vals ...int32) map[int32]int32 {
|
||||
d := make(map[int32]int32, len(vals))
|
||||
for i, v := range vals {
|
||||
d[int32(i)] = v
|
||||
}
|
||||
return d
|
||||
}
|
||||
|
||||
func toArr(m map[int32]int32) (params []int32) {
|
||||
for _, v := range m {
|
||||
params = append(params, v)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func isEqual(len int, data *pb.RtaskData, cfg *cfg.GameRdtaskCondiData, vals ...int32) map[int32]int32 {
|
||||
if data == nil || len == 0 {
|
||||
return nil
|
||||
}
|
||||
res := make(map[int32]int32)
|
||||
|
||||
if len == 1 {
|
||||
if data.Data[0] != cfg.Data1 {
|
||||
res[0] = vals[0]
|
||||
}
|
||||
}
|
||||
|
||||
if len == 2 {
|
||||
if data.Data[0] != cfg.Data1 || data.Data[1] != cfg.Data2 {
|
||||
res[0] = vals[0]
|
||||
res[1] = vals[1]
|
||||
}
|
||||
}
|
||||
|
||||
if len == 3 {
|
||||
if data.Data[0] != cfg.Data1 || data.Data[1] != cfg.Data2 || data.Data[2] != cfg.Data3 {
|
||||
res[0] = vals[0]
|
||||
res[1] = vals[1]
|
||||
res[2] = vals[2]
|
||||
}
|
||||
}
|
||||
|
||||
return res
|
||||
}
|
@ -3,14 +3,13 @@ package rtask
|
||||
import (
|
||||
"go_dreamfactory/comm"
|
||||
"go_dreamfactory/lego/core"
|
||||
"go_dreamfactory/lego/sys/log"
|
||||
"go_dreamfactory/lego/sys/redis"
|
||||
"go_dreamfactory/modules"
|
||||
"go_dreamfactory/pb"
|
||||
cfg "go_dreamfactory/sys/configure/structs"
|
||||
"go_dreamfactory/utils"
|
||||
|
||||
"github.com/spf13/cast"
|
||||
"github.com/pkg/errors"
|
||||
"go.mongodb.org/mongo-driver/bson/primitive"
|
||||
"go.mongodb.org/mongo-driver/mongo"
|
||||
)
|
||||
@ -46,18 +45,18 @@ func (this *ModelRtask) GetRtask(uid string) *pb.DBRtask {
|
||||
}
|
||||
|
||||
// 做任务之前的校验
|
||||
func (this *ModelRtask) checkHandle(uid string, frtaskIds []int32, conf *cfg.GameRdtaskData) (code pb.ErrorCode, ok bool) {
|
||||
func (this *ModelRtask) checkHandle(uid string, frtaskIds []int32, conf *cfg.GameRdtaskData) (err error, ok bool) {
|
||||
//判断前置任务状态
|
||||
if conf.PreTid != 0 {
|
||||
if _, ok := utils.Findx(frtaskIds, conf.PreTid); !ok {
|
||||
code = pb.ErrorCode_RtaskPreNoFinish
|
||||
return code, false
|
||||
if _, ok = utils.Findx(frtaskIds, conf.PreTid); !ok {
|
||||
err = errors.New("前置任务未完成")
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
//验证限定条件
|
||||
for _, v := range conf.Condition {
|
||||
if ok = this.checkCondi(uid, v); !ok {
|
||||
if err, ok = this.checkCondi(uid, v); !ok {
|
||||
return
|
||||
}
|
||||
}
|
||||
@ -66,147 +65,52 @@ func (this *ModelRtask) checkHandle(uid string, frtaskIds []int32, conf *cfg.Gam
|
||||
}
|
||||
|
||||
// 确定选项前的校验
|
||||
func (this *ModelRtask) checkCondi(uid string, condiId int32) (ok bool) {
|
||||
func (this *ModelRtask) checkCondi(uid string, condiId int32) (err error, ok bool) {
|
||||
if condiId == 0 {
|
||||
return true
|
||||
return nil, true
|
||||
}
|
||||
//验证限定条件
|
||||
if condi, ok := this.moduleRtask.rtaskHandleMap[condiId]; ok {
|
||||
if ok = condi.fn(uid, condi.cfg); !ok {
|
||||
log.Debugf("uid: %v do rtask %v condition not reach", uid, condiId)
|
||||
return false
|
||||
var condi *rtaskCondi
|
||||
if condi, ok = this.moduleRtask.handleMap[condiId]; ok {
|
||||
if err, ok = condi.verify(uid, condi.cfg); !ok {
|
||||
err = errors.WithMessagef(err, "uid: %v do rtask %v condition not reach", uid, condiId)
|
||||
return
|
||||
}
|
||||
return true
|
||||
return
|
||||
}
|
||||
return false
|
||||
return
|
||||
}
|
||||
|
||||
// 任务记录
|
||||
func (this *ModelRtask) record(uid string,rtypeId int32, val... int32) {
|
||||
|
||||
}
|
||||
|
||||
// 英雄指定
|
||||
func (this *ModelRtask) HeroTarget(uid string, cfg *cfg.GameRdtaskCondiData) (ok bool) {
|
||||
heroModule, err := this.service.GetModule(comm.ModuleHero)
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
h := heroModule.(comm.IHero)
|
||||
for _, v := range h.GetHeroList(uid) {
|
||||
if cast.ToString(cfg.Data1) == v.HeroID {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// 指定英雄的等级
|
||||
func (this *ModelRtask) HeroLvTarget(uid string, cfg *cfg.GameRdtaskCondiData) (ok bool) {
|
||||
heroModule, err := this.service.GetModule(comm.ModuleHero)
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
h := heroModule.(comm.IHero)
|
||||
var hero *pb.DBHero
|
||||
for _, v := range h.GetHeroList(uid) {
|
||||
// 查找指定英雄
|
||||
if cast.ToString(cfg.Data1) == v.HeroID {
|
||||
hero = v
|
||||
break
|
||||
}
|
||||
}
|
||||
if hero != nil {
|
||||
return cast.ToString(cfg.Data1) == hero.HeroID && cfg.Data1 == hero.Lv
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
// 指定英雄的指定装备的数量
|
||||
func (this *ModelRtask) EquipNum(uid string, cfg *cfg.GameRdtaskCondiData) (ok bool) {
|
||||
heroModule, err := this.service.GetModule(comm.ModuleHero)
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
h := heroModule.(comm.IHero)
|
||||
var hero *pb.DBHero
|
||||
for _, v := range h.GetHeroList(uid) {
|
||||
if cast.ToString(cfg.Data1) == v.HeroID {
|
||||
hero = v
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
var count int32
|
||||
if hero != nil {
|
||||
// 验证装备
|
||||
_, ok := utils.Findx(hero.EquipID, cast.ToString(cfg.Data2))
|
||||
// 验证数量
|
||||
for _, v := range hero.EquipID {
|
||||
if v != "0" {
|
||||
count++
|
||||
func (this *ModelRtask) findAndUpdate(uid string, rtypeId comm.TaskType, vals ...int32) (err error) {
|
||||
var (
|
||||
condiId int32
|
||||
condi *rtaskCondi
|
||||
)
|
||||
// 遍历当前已注册的任务条件
|
||||
for _, v := range this.moduleRtask.handleMap {
|
||||
// 找到任务类型
|
||||
if int32(rtypeId) == v.cfg.Type {
|
||||
if condiId = v.find(v.cfg, vals...); condiId == 0 {
|
||||
continue
|
||||
}
|
||||
}
|
||||
return cast.ToString(cfg.Data1) == hero.HeroID &&
|
||||
ok && cfg.Data3 == count
|
||||
}
|
||||
|
||||
return false
|
||||
// update
|
||||
if condiId != 0 {
|
||||
err = condi.update(uid, condi.cfg, vals...)
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
// 剧情ID
|
||||
func (this *ModelRtask) PoltId(uid string, cfg *cfg.GameRdtaskCondiData) (ok bool) {
|
||||
mlModule, err := this.service.GetModule(comm.ModuleMainline)
|
||||
// 获取玩家待校验数据
|
||||
func (this *ModelRtask) GetVerifyData(uid string, condiId int32) (*pb.RtaskData, error) {
|
||||
record := &pb.DBRtaskRecord{}
|
||||
err := this.Get(uid, record)
|
||||
if err != nil {
|
||||
return false
|
||||
return nil, errors.Wrapf(err, "record Get err: %v condiId[%v]", uid, condiId)
|
||||
}
|
||||
|
||||
ml := mlModule.(comm.IMainline)
|
||||
jqId := ml.GetUsermainLineData(uid)
|
||||
return cfg.Data1 == jqId
|
||||
}
|
||||
|
||||
// 每日任务
|
||||
func (this *ModelRtask) TaskDay(uid string, cfg *cfg.GameRdtaskCondiData) (ok bool) {
|
||||
taskModule, err := this.service.GetModule(comm.ModuleTask)
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
|
||||
itask := taskModule.(comm.ITask)
|
||||
var task *pb.DBTask
|
||||
if task = itask.GetTaskById(uid, cfg.Data1); task == nil {
|
||||
return false
|
||||
} else {
|
||||
//任务完成
|
||||
if task.Status == 1 {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
// 指定英雄的星级
|
||||
func (this *ModelRtask) HeroStarTarget(uid string, cfg *cfg.GameRdtaskCondiData) (ok bool) {
|
||||
heroModule, err := this.service.GetModule(comm.ModuleHero)
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
h := heroModule.(comm.IHero)
|
||||
|
||||
var hero *pb.DBHero
|
||||
for _, v := range h.GetHeroList(uid) {
|
||||
if cast.ToString(cfg.Data1) == v.HeroID {
|
||||
hero = v
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
if hero != nil {
|
||||
return cast.ToString(cfg.Data1) == hero.HeroID && cfg.Data2 == hero.Star
|
||||
}
|
||||
|
||||
return false
|
||||
return record.Vals[condiId], nil
|
||||
}
|
||||
|
@ -10,20 +10,17 @@ import (
|
||||
cfg "go_dreamfactory/sys/configure/structs"
|
||||
)
|
||||
|
||||
// 随机任务
|
||||
// type rtask struct {
|
||||
// rtaskId int32
|
||||
// handlers []*rtaskCondi
|
||||
// }
|
||||
|
||||
// 限定条件
|
||||
type rtaskCondi struct {
|
||||
cfg *cfg.GameRdtaskCondiData
|
||||
fn rtaskHandle
|
||||
cfg *cfg.GameRdtaskCondiData
|
||||
verify verifyHandle //校验任务条件
|
||||
find condiFindHandle //检索任务条件
|
||||
update updateDataHandle //更新任务数据
|
||||
}
|
||||
|
||||
// 设定返回值
|
||||
type rtaskHandle func(uid string, cfg *cfg.GameRdtaskCondiData) (ok bool)
|
||||
type verifyHandle func(uid string, cfg *cfg.GameRdtaskCondiData) (error, bool)
|
||||
type condiFindHandle func(cfg *cfg.GameRdtaskCondiData, vals ...int32) int32
|
||||
type updateDataHandle func(uid string, cfg *cfg.GameRdtaskCondiData, vals ...int32) error
|
||||
|
||||
type ModuleRtask struct {
|
||||
modules.ModuleBase
|
||||
@ -31,12 +28,12 @@ type ModuleRtask struct {
|
||||
api *apiComp
|
||||
configure *configureComp
|
||||
|
||||
rtaskHandleMap map[int32]*rtaskCondi // 任务处理器
|
||||
handleMap map[int32]*rtaskCondi //任务校验处理器
|
||||
}
|
||||
|
||||
func NewModule() core.IModule {
|
||||
return &ModuleRtask{
|
||||
rtaskHandleMap: make(map[int32]*rtaskCondi),
|
||||
handleMap: make(map[int32]*rtaskCondi),
|
||||
}
|
||||
}
|
||||
|
||||
@ -46,7 +43,7 @@ func (this *ModuleRtask) GetType() core.M_Modules {
|
||||
|
||||
func (this *ModuleRtask) Init(service core.IService, module core.IModule, options core.IModuleOptions) (err error) {
|
||||
err = this.ModuleBase.Init(service, module, options)
|
||||
this.initRtaskHandle()
|
||||
this.initRtaskVerifyHandle()
|
||||
return
|
||||
}
|
||||
|
||||
@ -57,14 +54,15 @@ func (this *ModuleRtask) OnInstallComp() {
|
||||
this.configure = this.RegisterComp(new(configureComp)).(*configureComp)
|
||||
}
|
||||
|
||||
func (this *ModuleRtask) register(condiId int32, rtask *rtaskCondi) {
|
||||
if _, ok := this.rtaskHandleMap[condiId]; !ok {
|
||||
this.rtaskHandleMap[condiId] = rtask
|
||||
func (this *ModuleRtask) registerVerifyHandle(condiId int32, condi *rtaskCondi) {
|
||||
if _, ok := this.handleMap[condiId]; !ok {
|
||||
this.handleMap[condiId] = condi
|
||||
}
|
||||
}
|
||||
|
||||
func (this *ModuleRtask) initRtaskHandle() {
|
||||
conf, err := this.configure.getRtaskTypeCfg()
|
||||
// 条件校验初始
|
||||
func (this *ModuleRtask) initRtaskVerifyHandle() {
|
||||
conf, err := this.configure.getRtaskCondiCfg()
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
@ -74,37 +72,179 @@ func (this *ModuleRtask) initRtaskHandle() {
|
||||
if typeCfg != nil {
|
||||
switch comm.TaskType(typeCfg.Type) {
|
||||
case comm.Rtype1:
|
||||
this.register(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
fn: this.modelRtask.HeroTarget,
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
verify: this.modelRtask.verify,
|
||||
find: this.modelRtask.equalParams,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype2:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
verify: this.modelRtask.verify,
|
||||
find: this.modelRtask.equalParams,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype3:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
verify: this.modelRtask.verify,
|
||||
find: this.modelRtask.equalParams,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype4:
|
||||
this.register(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
fn: this.modelRtask.HeroLvTarget,
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
verify: this.modelRtask.verify,
|
||||
find: this.modelRtask.equalParams,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype5:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
verify: this.modelRtask.verify,
|
||||
find: this.modelRtask.equalParams,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype6:
|
||||
this.register(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
fn: this.modelRtask.HeroStarTarget,
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
|
||||
case comm.Rtype5:
|
||||
this.register(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
fn: this.modelRtask.EquipNum,
|
||||
case comm.Rtype7:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
|
||||
case comm.Rtype2:
|
||||
this.register(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
fn: this.modelRtask.PoltId,
|
||||
case comm.Rtype8:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.addUpdate,
|
||||
})
|
||||
|
||||
case comm.Rtype3:
|
||||
this.register(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
fn: this.modelRtask.TaskDay,
|
||||
case comm.Rtype9:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype10:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype11:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype12:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype13:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype14:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype15:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype16:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype17:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype18:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype19:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype20:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype21:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype22:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype23:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype24:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
case comm.Rtype25:
|
||||
this.registerVerifyHandle(v.Id, &rtaskCondi{
|
||||
cfg: typeCfg,
|
||||
find: this.modelRtask.equalParams,
|
||||
verify: this.modelRtask.verify,
|
||||
update: this.modelRtask.overrideUpdate,
|
||||
})
|
||||
default:
|
||||
log.Warnf("%v rtask type not configure", typeCfg.Type)
|
||||
|
101
modules/rtask/updateHandle.go
Normal file
101
modules/rtask/updateHandle.go
Normal file
@ -0,0 +1,101 @@
|
||||
// package 更新任务触发后的数据更新
|
||||
package rtask
|
||||
|
||||
import (
|
||||
"go_dreamfactory/pb"
|
||||
cfg "go_dreamfactory/sys/configure/structs"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
// 覆盖更新
|
||||
func (this *ModelRtask) overrideUpdate(uid string, cfg *cfg.GameRdtaskCondiData, vals ...int32) (err error) {
|
||||
var paramLen int
|
||||
if paramLen, err = verifyParam(cfg, vals...); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
record := &pb.DBRtaskRecord{}
|
||||
err = this.Get(uid, record)
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "获取玩家任务记录 err: %v rtype[%v]", uid, cfg.Id)
|
||||
}
|
||||
|
||||
if record.Vals == nil {
|
||||
data := &pb.RtaskData{
|
||||
Data: toMap(vals...),
|
||||
}
|
||||
record.Vals = map[int32]*pb.RtaskData{
|
||||
cfg.Id: data,
|
||||
}
|
||||
if err := this.Add(uid, record); err != nil {
|
||||
return errors.Wrapf(err, "添加玩家任务记录 err: %v rtype[%v]", uid, cfg.Id)
|
||||
}
|
||||
} else {
|
||||
if v, ok := record.Vals[cfg.Id]; ok {
|
||||
m := isEqual(paramLen, v, cfg, vals...)
|
||||
if len(m) > 0 {
|
||||
update := map[string]interface{}{
|
||||
"vals": m,
|
||||
}
|
||||
err = this.Change(uid, update)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
// 累计更新 - 招募等
|
||||
func (this *ModelRtask) addUpdate(uid string, cfg *cfg.GameRdtaskCondiData, vals ...int32) (err error) {
|
||||
var paramLen int
|
||||
if paramLen, err = verifyParam(cfg, vals...); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
record := &pb.DBRtaskRecord{}
|
||||
err = this.Get(uid, record)
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "获取玩家任务记录 err: %v rtype[%v]", uid, cfg.Id)
|
||||
}
|
||||
|
||||
if record.Vals == nil {
|
||||
data := &pb.RtaskData{
|
||||
Data: toMap(vals...),
|
||||
}
|
||||
|
||||
record.Vals = map[int32]*pb.RtaskData{
|
||||
cfg.Id: data,
|
||||
}
|
||||
if err := this.Add(uid, record); err != nil {
|
||||
return errors.Wrapf(err, "添加玩家任务记录 err: %v rtype[%v]", uid, cfg.Id)
|
||||
}
|
||||
} else {
|
||||
data := make(map[int32]int32)
|
||||
//查找任务数据
|
||||
if v, ok := record.Vals[cfg.Id]; ok {
|
||||
if paramLen == 1 {
|
||||
data[0] += v.Data[0]
|
||||
} else if paramLen == 2 {
|
||||
//第一个参数为累加,后续参数为判断条件
|
||||
if data[1] == cfg.Data2 {
|
||||
data[1] += v.Data[1]
|
||||
}
|
||||
} else if paramLen == 3 {
|
||||
if data[1] == cfg.Data2 && data[2] == cfg.Data3 {
|
||||
data[2] += v.Data[2]
|
||||
}
|
||||
}
|
||||
if len(data) > 0 {
|
||||
update := map[string]interface{}{
|
||||
"vals": data,
|
||||
}
|
||||
err = this.Change(uid, update)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
return
|
||||
}
|
31
modules/rtask/verifyHandle.go
Normal file
31
modules/rtask/verifyHandle.go
Normal file
@ -0,0 +1,31 @@
|
||||
// 校验任务条件
|
||||
package rtask
|
||||
|
||||
import (
|
||||
"go_dreamfactory/pb"
|
||||
cfg "go_dreamfactory/sys/configure/structs"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
func (this *ModelRtask) verify(uid string, cfg *cfg.GameRdtaskCondiData) (err error, ok bool) {
|
||||
var rd *pb.RtaskData
|
||||
if rd, err = this.GetVerifyData(uid, cfg.Id); rd != nil {
|
||||
if len(rd.Data) == 0 {
|
||||
err = errors.WithMessagef(err, "玩家参数数据缺失 %v", rd.Data)
|
||||
return
|
||||
}
|
||||
var paramLen int
|
||||
if paramLen, err = verifyParam(cfg, toArr(rd.Data)...); err == nil {
|
||||
switch paramLen {
|
||||
case 1:
|
||||
return nil, rd.Data[0] == cfg.Data1
|
||||
case 2:
|
||||
return nil, rd.Data[0] == cfg.Data1 && rd.Data[1] == cfg.Data2
|
||||
case 3:
|
||||
return nil, rd.Data[0] == cfg.Data1 && rd.Data[1] == cfg.Data2 && rd.Data[2] == cfg.Data3
|
||||
}
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
63
modules/rtask/verify_test.go
Normal file
63
modules/rtask/verify_test.go
Normal file
@ -0,0 +1,63 @@
|
||||
package rtask
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"go_dreamfactory/pb"
|
||||
cfg "go_dreamfactory/sys/configure/structs"
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"github.com/agiledragon/gomonkey/v2"
|
||||
. "github.com/smartystreets/goconvey/convey"
|
||||
)
|
||||
|
||||
var vals []int32 //通过接口传入的参数组
|
||||
var conf *cfg.GameRdtaskCondiData
|
||||
|
||||
func TestVerify(t *testing.T) {
|
||||
Convey("校验处理器测试", t, func() {
|
||||
|
||||
Convey("校验接口参数组", func() {
|
||||
patches := gomonkey.ApplyGlobalVar(&conf, &cfg.GameRdtaskCondiData{
|
||||
Id: 101,
|
||||
Type: 1,
|
||||
Data1: 25001,
|
||||
})
|
||||
defer patches.Reset()
|
||||
|
||||
patches2 := gomonkey.ApplyGlobalVar(&vals, []int32{25002})
|
||||
defer patches2.Reset()
|
||||
|
||||
n, err := verifyParam(conf, vals...)
|
||||
fmt.Println(n, err)
|
||||
})
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
func TestVerify2(t *testing.T) {
|
||||
Convey("校验处理测试", t, func() {
|
||||
Convey("rtype1", func() {
|
||||
var r *ModelRtask
|
||||
// 修改
|
||||
patches := gomonkey.ApplyMethod(reflect.TypeOf(r), "GetVerifyData", func(_ *ModelRtask, uid string, condiId int32) (*pb.RtaskData, error) {
|
||||
return &pb.RtaskData{
|
||||
Data: map[int32]int32{0: 25001},
|
||||
}, nil
|
||||
})
|
||||
defer patches.Reset()
|
||||
|
||||
//
|
||||
rtask := &ModelRtask{}
|
||||
conf := &cfg.GameRdtaskCondiData{
|
||||
Id: 101,
|
||||
Type: 1,
|
||||
Data1: 25001,
|
||||
}
|
||||
err, ok := rtask.verify("11", conf)
|
||||
So(err, ShouldEqual, nil)
|
||||
So(ok, ShouldEqual, true)
|
||||
})
|
||||
})
|
||||
|
||||
}
|
@ -31,6 +31,7 @@ type DBMainline struct {
|
||||
MainlineId int32 `protobuf:"varint,4,opt,name=mainlineId,proto3" json:"mainlineId" bson:"mainlineId"` //主线关卡ID
|
||||
AwaredID int32 `protobuf:"varint,5,opt,name=awaredID,proto3" json:"awaredID" bson:"awaredID"` //是否领奖(设置int是考虑后续扩展有多个宝箱情况)
|
||||
BranchID []int32 `protobuf:"varint,6,rep,packed,name=branchID,proto3" json:"branchID" bson:"branchID"` // 记录分支通关的情况
|
||||
Intensity int32 `protobuf:"varint,7,opt,name=intensity,proto3" json:"intensity"` // 难度
|
||||
}
|
||||
|
||||
func (x *DBMainline) Reset() {
|
||||
@ -107,11 +108,18 @@ func (x *DBMainline) GetBranchID() []int32 {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *DBMainline) GetIntensity() int32 {
|
||||
if x != nil {
|
||||
return x.Intensity
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
var File_mainline_mainline_db_proto protoreflect.FileDescriptor
|
||||
|
||||
var file_mainline_mainline_db_proto_rawDesc = []byte{
|
||||
0x0a, 0x1a, 0x6d, 0x61, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2f, 0x6d, 0x61, 0x69, 0x6e, 0x6c,
|
||||
0x69, 0x6e, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa4, 0x01, 0x0a,
|
||||
0x69, 0x6e, 0x65, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc2, 0x01, 0x0a,
|
||||
0x0a, 0x44, 0x42, 0x4d, 0x61, 0x69, 0x6e, 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, 0x1c, 0x0a,
|
||||
@ -122,8 +130,10 @@ var file_mainline_mainline_db_proto_rawDesc = []byte{
|
||||
0x77, 0x61, 0x72, 0x65, 0x64, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x61,
|
||||
0x77, 0x61, 0x72, 0x65, 0x64, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x72, 0x61, 0x6e, 0x63,
|
||||
0x68, 0x49, 0x44, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x61, 0x6e, 0x63,
|
||||
0x68, 0x49, 0x44, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
|
||||
0x74, 0x6f, 0x33,
|
||||
0x68, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79,
|
||||
0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x74,
|
||||
0x79, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
||||
0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
@ -147,23 +147,70 @@ func (x *DBRtask) GetIsReward() bool {
|
||||
return false
|
||||
}
|
||||
|
||||
type RtaskData struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Data map[int32]int32 `protobuf:"bytes,1,rep,name=data,proto3" json:"data" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3" bson:"data"` // 当前任务值
|
||||
}
|
||||
|
||||
func (x *RtaskData) Reset() {
|
||||
*x = RtaskData{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_rtask_rtask_db_proto_msgTypes[2]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
}
|
||||
|
||||
func (x *RtaskData) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*RtaskData) ProtoMessage() {}
|
||||
|
||||
func (x *RtaskData) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_rtask_rtask_db_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 RtaskData.ProtoReflect.Descriptor instead.
|
||||
func (*RtaskData) Descriptor() ([]byte, []int) {
|
||||
return file_rtask_rtask_db_proto_rawDescGZIP(), []int{2}
|
||||
}
|
||||
|
||||
func (x *RtaskData) GetData() map[int32]int32 {
|
||||
if x != nil {
|
||||
return x.Data
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// 玩家任务记录
|
||||
type DBRtaskRecord struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID
|
||||
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID
|
||||
RType int32 `protobuf:"varint,3,opt,name=rType,proto3" json:"rType" bson:"rType"` //任务类型
|
||||
Vals map[int32]int32 `protobuf:"bytes,4,rep,name=vals,proto3" json:"vals" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3" bson:"vals"` //任务记录值
|
||||
Timestamp int64 `protobuf:"varint,5,opt,name=timestamp,proto3" json:"timestamp"` //@go_tasg(`bson:"timestamp"`) 时间戳
|
||||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" bson:"_id"` //ID
|
||||
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" bson:"uid"` //用户ID
|
||||
RType int32 `protobuf:"varint,3,opt,name=rType,proto3" json:"rType" bson:"rType"` //任务类型
|
||||
Vals map[int32]*RtaskData `protobuf:"bytes,4,rep,name=vals,proto3" json:"vals" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" bson:"vals"` //任务记录值
|
||||
Timestamp int64 `protobuf:"varint,5,opt,name=timestamp,proto3" json:"timestamp"` //@go_tasg(`bson:"timestamp"`) 时间戳
|
||||
}
|
||||
|
||||
func (x *DBRtaskRecord) Reset() {
|
||||
*x = DBRtaskRecord{}
|
||||
if protoimpl.UnsafeEnabled {
|
||||
mi := &file_rtask_rtask_db_proto_msgTypes[2]
|
||||
mi := &file_rtask_rtask_db_proto_msgTypes[3]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
@ -176,7 +223,7 @@ func (x *DBRtaskRecord) String() string {
|
||||
func (*DBRtaskRecord) ProtoMessage() {}
|
||||
|
||||
func (x *DBRtaskRecord) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_rtask_rtask_db_proto_msgTypes[2]
|
||||
mi := &file_rtask_rtask_db_proto_msgTypes[3]
|
||||
if protoimpl.UnsafeEnabled && x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
@ -189,7 +236,7 @@ func (x *DBRtaskRecord) ProtoReflect() protoreflect.Message {
|
||||
|
||||
// Deprecated: Use DBRtaskRecord.ProtoReflect.Descriptor instead.
|
||||
func (*DBRtaskRecord) Descriptor() ([]byte, []int) {
|
||||
return file_rtask_rtask_db_proto_rawDescGZIP(), []int{2}
|
||||
return file_rtask_rtask_db_proto_rawDescGZIP(), []int{3}
|
||||
}
|
||||
|
||||
func (x *DBRtaskRecord) GetId() string {
|
||||
@ -213,7 +260,7 @@ func (x *DBRtaskRecord) GetRType() int32 {
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *DBRtaskRecord) GetVals() map[int32]int32 {
|
||||
func (x *DBRtaskRecord) GetVals() map[int32]*RtaskData {
|
||||
if x != nil {
|
||||
return x.Vals
|
||||
}
|
||||
@ -248,7 +295,14 @@ var file_rtask_rtask_db_proto_rawDesc = []byte{
|
||||
0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||
0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x20, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
|
||||
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x66, 0x72, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64,
|
||||
0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xcc, 0x01, 0x0a,
|
||||
0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x6e, 0x0a, 0x09,
|
||||
0x72, 0x74, 0x61, 0x73, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x28, 0x0a, 0x04, 0x64, 0x61, 0x74,
|
||||
0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x72, 0x74, 0x61, 0x73, 0x6b, 0x44,
|
||||
0x61, 0x74, 0x61, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x64,
|
||||
0x61, 0x74, 0x61, 0x1a, 0x37, 0x0a, 0x09, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79,
|
||||
0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b,
|
||||
0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
|
||||
0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd8, 0x01, 0x0a,
|
||||
0x0d, 0x44, 0x42, 0x52, 0x74, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 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,
|
||||
@ -258,11 +312,12 @@ var file_rtask_rtask_db_proto_rawDesc = []byte{
|
||||
0x63, 0x6f, 0x72, 0x64, 0x2e, 0x56, 0x61, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04,
|
||||
0x76, 0x61, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
|
||||
0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
|
||||
0x6d, 0x70, 0x1a, 0x37, 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
|
||||
0x6d, 0x70, 0x1a, 0x43, 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x73, 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,
|
||||
0x79, 0x12, 0x20, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
|
||||
0x32, 0x0a, 0x2e, 0x72, 0x74, 0x61, 0x73, 0x6b, 0x44, 0x61, 0x74, 0x61, 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 (
|
||||
@ -277,23 +332,27 @@ func file_rtask_rtask_db_proto_rawDescGZIP() []byte {
|
||||
return file_rtask_rtask_db_proto_rawDescData
|
||||
}
|
||||
|
||||
var file_rtask_rtask_db_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
|
||||
var file_rtask_rtask_db_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
|
||||
var file_rtask_rtask_db_proto_goTypes = []interface{}{
|
||||
(*FrtaskIds)(nil), // 0: frtaskIds
|
||||
(*DBRtask)(nil), // 1: DBRtask
|
||||
(*DBRtaskRecord)(nil), // 2: DBRtaskRecord
|
||||
nil, // 3: DBRtask.FrtaskIdsEntry
|
||||
nil, // 4: DBRtaskRecord.ValsEntry
|
||||
(*RtaskData)(nil), // 2: rtaskData
|
||||
(*DBRtaskRecord)(nil), // 3: DBRtaskRecord
|
||||
nil, // 4: DBRtask.FrtaskIdsEntry
|
||||
nil, // 5: rtaskData.DataEntry
|
||||
nil, // 6: DBRtaskRecord.ValsEntry
|
||||
}
|
||||
var file_rtask_rtask_db_proto_depIdxs = []int32{
|
||||
3, // 0: DBRtask.frtaskIds:type_name -> DBRtask.FrtaskIdsEntry
|
||||
4, // 1: DBRtaskRecord.vals:type_name -> DBRtaskRecord.ValsEntry
|
||||
0, // 2: DBRtask.FrtaskIdsEntry.value:type_name -> frtaskIds
|
||||
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
|
||||
4, // 0: DBRtask.frtaskIds:type_name -> DBRtask.FrtaskIdsEntry
|
||||
5, // 1: rtaskData.data:type_name -> rtaskData.DataEntry
|
||||
6, // 2: DBRtaskRecord.vals:type_name -> DBRtaskRecord.ValsEntry
|
||||
0, // 3: DBRtask.FrtaskIdsEntry.value:type_name -> frtaskIds
|
||||
2, // 4: DBRtaskRecord.ValsEntry.value:type_name -> rtaskData
|
||||
5, // [5:5] is the sub-list for method output_type
|
||||
5, // [5:5] is the sub-list for method input_type
|
||||
5, // [5:5] is the sub-list for extension type_name
|
||||
5, // [5:5] is the sub-list for extension extendee
|
||||
0, // [0:5] is the sub-list for field type_name
|
||||
}
|
||||
|
||||
func init() { file_rtask_rtask_db_proto_init() }
|
||||
@ -327,6 +386,18 @@ func file_rtask_rtask_db_proto_init() {
|
||||
}
|
||||
}
|
||||
file_rtask_rtask_db_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*RtaskData); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
case 1:
|
||||
return &v.sizeCache
|
||||
case 2:
|
||||
return &v.unknownFields
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
}
|
||||
file_rtask_rtask_db_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
||||
switch v := v.(*DBRtaskRecord); i {
|
||||
case 0:
|
||||
return &v.state
|
||||
@ -345,7 +416,7 @@ func file_rtask_rtask_db_proto_init() {
|
||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||
RawDescriptor: file_rtask_rtask_db_proto_rawDesc,
|
||||
NumEnums: 0,
|
||||
NumMessages: 5,
|
||||
NumMessages: 7,
|
||||
NumExtensions: 0,
|
||||
NumServices: 0,
|
||||
},
|
||||
|
@ -40,4 +40,5 @@ const (
|
||||
GameBuffType_EFFHITDOWN = 28
|
||||
GameBuffType_EFFREDOWN = 29
|
||||
GameBuffType_CAUSEDAMUP = 30
|
||||
GameBuffType_POISON = 31
|
||||
)
|
||||
|
42
sys/configure/structs/Game.GetResource.go
Normal file
42
sys/configure/structs/Game.GetResource.go
Normal 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 GameGetResource struct {
|
||||
_dataMap map[int32]*GameGetResourceData
|
||||
_dataList []*GameGetResourceData
|
||||
}
|
||||
|
||||
func NewGameGetResource(_buf []map[string]interface{}) (*GameGetResource, error) {
|
||||
_dataList := make([]*GameGetResourceData, 0, len(_buf))
|
||||
dataMap := make(map[int32]*GameGetResourceData)
|
||||
for _, _ele_ := range _buf {
|
||||
if _v, err2 := DeserializeGameGetResourceData(_ele_); err2 != nil {
|
||||
return nil, err2
|
||||
} else {
|
||||
_dataList = append(_dataList, _v)
|
||||
dataMap[_v.Id] = _v
|
||||
}
|
||||
}
|
||||
return &GameGetResource{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||
}
|
||||
|
||||
func (table *GameGetResource) GetDataMap() map[int32]*GameGetResourceData {
|
||||
return table._dataMap
|
||||
}
|
||||
|
||||
func (table *GameGetResource) GetDataList() []*GameGetResourceData {
|
||||
return table._dataList
|
||||
}
|
||||
|
||||
func (table *GameGetResource) Get(key int32) *GameGetResourceData {
|
||||
return table._dataMap[key]
|
||||
}
|
||||
|
||||
|
45
sys/configure/structs/Game.GetResourceData.go
Normal file
45
sys/configure/structs/Game.GetResourceData.go
Normal file
@ -0,0 +1,45 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <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 GameGetResourceData struct {
|
||||
Id int32
|
||||
Typ int32
|
||||
Name string
|
||||
Txt string
|
||||
Icon string
|
||||
Goto string
|
||||
}
|
||||
|
||||
const TypeId_GameGetResourceData = 1197339986
|
||||
|
||||
func (*GameGetResourceData) GetTypeId() int32 {
|
||||
return 1197339986
|
||||
}
|
||||
|
||||
func (_v *GameGetResourceData)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["typ"].(float64); !_ok_ { err = errors.New("typ error"); return }; _v.Typ = int32(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.Name, _ok_ = _buf["name"].(string); !_ok_ { err = errors.New("name error"); return } }
|
||||
{ var _ok_ bool; if _v.Txt, _ok_ = _buf["txt"].(string); !_ok_ { err = errors.New("txt error"); return } }
|
||||
{ var _ok_ bool; if _v.Icon, _ok_ = _buf["icon"].(string); !_ok_ { err = errors.New("icon error"); return } }
|
||||
{ var _ok_ bool; if _v.Goto, _ok_ = _buf["goto"].(string); !_ok_ { err = errors.New("goto error"); return } }
|
||||
return
|
||||
}
|
||||
|
||||
func DeserializeGameGetResourceData(_buf map[string]interface{}) (*GameGetResourceData, error) {
|
||||
v := &GameGetResourceData{}
|
||||
if err := v.Deserialize(_buf); err == nil {
|
||||
return v, nil
|
||||
} else {
|
||||
return nil, err
|
||||
}
|
||||
}
|
42
sys/configure/structs/Game.Link.go
Normal file
42
sys/configure/structs/Game.Link.go
Normal 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 GameLink struct {
|
||||
_dataMap map[string]*GameLinkData
|
||||
_dataList []*GameLinkData
|
||||
}
|
||||
|
||||
func NewGameLink(_buf []map[string]interface{}) (*GameLink, error) {
|
||||
_dataList := make([]*GameLinkData, 0, len(_buf))
|
||||
dataMap := make(map[string]*GameLinkData)
|
||||
for _, _ele_ := range _buf {
|
||||
if _v, err2 := DeserializeGameLinkData(_ele_); err2 != nil {
|
||||
return nil, err2
|
||||
} else {
|
||||
_dataList = append(_dataList, _v)
|
||||
dataMap[_v.Id] = _v
|
||||
}
|
||||
}
|
||||
return &GameLink{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||
}
|
||||
|
||||
func (table *GameLink) GetDataMap() map[string]*GameLinkData {
|
||||
return table._dataMap
|
||||
}
|
||||
|
||||
func (table *GameLink) GetDataList() []*GameLinkData {
|
||||
return table._dataList
|
||||
}
|
||||
|
||||
func (table *GameLink) Get(key string) *GameLinkData {
|
||||
return table._dataMap[key]
|
||||
}
|
||||
|
||||
|
47
sys/configure/structs/Game.LinkData.go
Normal file
47
sys/configure/structs/Game.LinkData.go
Normal file
@ -0,0 +1,47 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <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 GameLinkData struct {
|
||||
Id string
|
||||
Uistore string
|
||||
Scene string
|
||||
Des string
|
||||
Option int32
|
||||
Preid int32
|
||||
Presid int32
|
||||
}
|
||||
|
||||
const TypeId_GameLinkData = -968027840
|
||||
|
||||
func (*GameLinkData) GetTypeId() int32 {
|
||||
return -968027840
|
||||
}
|
||||
|
||||
func (_v *GameLinkData)Deserialize(_buf map[string]interface{}) (err error) {
|
||||
{ var _ok_ bool; if _v.Id, _ok_ = _buf["id"].(string); !_ok_ { err = errors.New("id error"); return } }
|
||||
{ var _ok_ bool; if _v.Uistore, _ok_ = _buf["uistore"].(string); !_ok_ { err = errors.New("uistore error"); return } }
|
||||
{ var _ok_ bool; if _v.Scene, _ok_ = _buf["scene"].(string); !_ok_ { err = errors.New("scene error"); return } }
|
||||
{ var _ok_ bool; if _v.Des, _ok_ = _buf["des"].(string); !_ok_ { err = errors.New("des error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["option"].(float64); !_ok_ { err = errors.New("option error"); return }; _v.Option = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["preid"].(float64); !_ok_ { err = errors.New("preid error"); return }; _v.Preid = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["presid"].(float64); !_ok_ { err = errors.New("presid error"); return }; _v.Presid = int32(_tempNum_) }
|
||||
return
|
||||
}
|
||||
|
||||
func DeserializeGameLinkData(_buf map[string]interface{}) (*GameLinkData, error) {
|
||||
v := &GameLinkData{}
|
||||
if err := v.Deserialize(_buf); err == nil {
|
||||
return v, nil
|
||||
} else {
|
||||
return nil, err
|
||||
}
|
||||
}
|
34
sys/configure/structs/Game.Mainline.go
Normal file
34
sys/configure/structs/Game.Mainline.go
Normal 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 GameMainline struct {
|
||||
_dataList []*GameMainlineData
|
||||
}
|
||||
|
||||
func NewGameMainline(_buf []map[string]interface{}) (*GameMainline, error) {
|
||||
_dataList := make([]*GameMainlineData, 0, len(_buf))
|
||||
for _, _ele_ := range _buf {
|
||||
if _v, err2 := DeserializeGameMainlineData(_ele_); err2 != nil {
|
||||
return nil, err2
|
||||
} else {
|
||||
_dataList = append(_dataList, _v)
|
||||
}
|
||||
}
|
||||
return &GameMainline{_dataList:_dataList}, nil
|
||||
}
|
||||
|
||||
func (table *GameMainline) GetDataList() []*GameMainlineData {
|
||||
return table._dataList
|
||||
}
|
||||
|
||||
func (table *GameMainline) Get(index int) *GameMainlineData {
|
||||
return table._dataList[index]
|
||||
}
|
||||
|
@ -10,8 +10,9 @@ package cfg
|
||||
|
||||
import "errors"
|
||||
|
||||
type GameMainlineEasyData struct {
|
||||
type GameMainlineData struct {
|
||||
Id int32
|
||||
Intensity int32
|
||||
Previoustage int32
|
||||
Order int32
|
||||
Linearnum int32
|
||||
@ -21,19 +22,8 @@ type GameMainlineEasyData struct {
|
||||
Episodelocation []int32
|
||||
Model string
|
||||
Effect string
|
||||
Enemywave int32
|
||||
Enemy1lv int32
|
||||
Enemy1hppro float32
|
||||
Enemy1atkpro float32
|
||||
Enemy1defpro float32
|
||||
Enemy2lv int32
|
||||
Enemy2hppro float32
|
||||
Enemy2atkpro float32
|
||||
Enemy2defpro float32
|
||||
Wave1enemyid []int32
|
||||
Wave2enemyid []int32
|
||||
Enemyid string
|
||||
MonsterId string
|
||||
FormatList []int32
|
||||
CaptainId string
|
||||
Battlescene string
|
||||
Sceneeffect string
|
||||
Award []*Gameatn
|
||||
@ -43,14 +33,15 @@ type GameMainlineEasyData struct {
|
||||
Condition []int32
|
||||
}
|
||||
|
||||
const TypeId_GameMainlineEasyData = -2098766443
|
||||
const TypeId_GameMainlineData = -79093005
|
||||
|
||||
func (*GameMainlineEasyData) GetTypeId() int32 {
|
||||
return -2098766443
|
||||
func (*GameMainlineData) GetTypeId() int32 {
|
||||
return -79093005
|
||||
}
|
||||
|
||||
func (_v *GameMainlineEasyData)Deserialize(_buf map[string]interface{}) (err error) {
|
||||
func (_v *GameMainlineData)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["intensity"].(float64); !_ok_ { err = errors.New("intensity error"); return }; _v.Intensity = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["previoustage"].(float64); !_ok_ { err = errors.New("previoustage error"); return }; _v.Previoustage = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["order"].(float64); !_ok_ { err = errors.New("order error"); return }; _v.Order = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["linearnum"].(float64); !_ok_ { err = errors.New("linearnum error"); return }; _v.Linearnum = int32(_tempNum_) }
|
||||
@ -73,45 +64,21 @@ func (_v *GameMainlineEasyData)Deserialize(_buf map[string]interface{}) (err err
|
||||
|
||||
{ var _ok_ bool; if _v.Model, _ok_ = _buf["model"].(string); !_ok_ { err = errors.New("model error"); return } }
|
||||
{ var _ok_ bool; if _v.Effect, _ok_ = _buf["effect"].(string); !_ok_ { err = errors.New("effect error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemywave"].(float64); !_ok_ { err = errors.New("enemywave error"); return }; _v.Enemywave = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1lv"].(float64); !_ok_ { err = errors.New("enemy1lv error"); return }; _v.Enemy1lv = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1hppro"].(float64); !_ok_ { err = errors.New("enemy1hppro error"); return }; _v.Enemy1hppro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1atkpro"].(float64); !_ok_ { err = errors.New("enemy1atkpro error"); return }; _v.Enemy1atkpro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1defpro"].(float64); !_ok_ { err = errors.New("enemy1defpro error"); return }; _v.Enemy1defpro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2lv"].(float64); !_ok_ { err = errors.New("enemy2lv error"); return }; _v.Enemy2lv = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2hppro"].(float64); !_ok_ { err = errors.New("enemy2hppro error"); return }; _v.Enemy2hppro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2atkpro"].(float64); !_ok_ { err = errors.New("enemy2atkpro error"); return }; _v.Enemy2atkpro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2defpro"].(float64); !_ok_ { err = errors.New("enemy2defpro error"); return }; _v.Enemy2defpro = float32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["wave1enemyid"].([]interface{}); !_ok_ { err = errors.New("wave1enemyid error"); return }
|
||||
if _arr_, _ok_ = _buf["FormatList"].([]interface{}); !_ok_ { err = errors.New("FormatList error"); return }
|
||||
|
||||
_v.Wave1enemyid = make([]int32, 0, len(_arr_))
|
||||
_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.Wave1enemyid = append(_v.Wave1enemyid, _list_v_)
|
||||
_v.FormatList = append(_v.FormatList, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["wave2enemyid"].([]interface{}); !_ok_ { err = errors.New("wave2enemyid error"); return }
|
||||
|
||||
_v.Wave2enemyid = 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.Wave2enemyid = append(_v.Wave2enemyid, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; if _v.Enemyid, _ok_ = _buf["enemyid"].(string); !_ok_ { err = errors.New("enemyid error"); return } }
|
||||
{ var _ok_ bool; if _v.MonsterId, _ok_ = _buf["monster_id"].(string); !_ok_ { err = errors.New("monster_id error"); return } }
|
||||
{ var _ok_ bool; if _v.CaptainId, _ok_ = _buf["captainId"].(string); !_ok_ { err = errors.New("captainId error"); return } }
|
||||
{ var _ok_ bool; if _v.Battlescene, _ok_ = _buf["battlescene"].(string); !_ok_ { err = errors.New("battlescene error"); return } }
|
||||
{ var _ok_ bool; if _v.Sceneeffect, _ok_ = _buf["sceneeffect"].(string); !_ok_ { err = errors.New("sceneeffect error"); return } }
|
||||
{
|
||||
@ -161,8 +128,8 @@ func (_v *GameMainlineEasyData)Deserialize(_buf map[string]interface{}) (err err
|
||||
return
|
||||
}
|
||||
|
||||
func DeserializeGameMainlineEasyData(_buf map[string]interface{}) (*GameMainlineEasyData, error) {
|
||||
v := &GameMainlineEasyData{}
|
||||
func DeserializeGameMainlineData(_buf map[string]interface{}) (*GameMainlineData, error) {
|
||||
v := &GameMainlineData{}
|
||||
if err := v.Deserialize(_buf); err == nil {
|
||||
return v, nil
|
||||
} else {
|
42
sys/configure/structs/Game.MonsterFormat.go
Normal file
42
sys/configure/structs/Game.MonsterFormat.go
Normal 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 GameMonsterFormat struct {
|
||||
_dataMap map[int32]*GameMonsterFormatData
|
||||
_dataList []*GameMonsterFormatData
|
||||
}
|
||||
|
||||
func NewGameMonsterFormat(_buf []map[string]interface{}) (*GameMonsterFormat, error) {
|
||||
_dataList := make([]*GameMonsterFormatData, 0, len(_buf))
|
||||
dataMap := make(map[int32]*GameMonsterFormatData)
|
||||
for _, _ele_ := range _buf {
|
||||
if _v, err2 := DeserializeGameMonsterFormatData(_ele_); err2 != nil {
|
||||
return nil, err2
|
||||
} else {
|
||||
_dataList = append(_dataList, _v)
|
||||
dataMap[_v.Id] = _v
|
||||
}
|
||||
}
|
||||
return &GameMonsterFormat{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||
}
|
||||
|
||||
func (table *GameMonsterFormat) GetDataMap() map[int32]*GameMonsterFormatData {
|
||||
return table._dataMap
|
||||
}
|
||||
|
||||
func (table *GameMonsterFormat) GetDataList() []*GameMonsterFormatData {
|
||||
return table._dataList
|
||||
}
|
||||
|
||||
func (table *GameMonsterFormat) Get(key int32) *GameMonsterFormatData {
|
||||
return table._dataMap[key]
|
||||
}
|
||||
|
||||
|
60
sys/configure/structs/Game.MonsterFormatData.go
Normal file
60
sys/configure/structs/Game.MonsterFormatData.go
Normal file
@ -0,0 +1,60 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <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 GameMonsterFormatData struct {
|
||||
Id int32
|
||||
CaptainId int32
|
||||
MonsterList []int32
|
||||
Lv int32
|
||||
Hppro float32
|
||||
Atkpro float32
|
||||
Defpro float32
|
||||
}
|
||||
|
||||
const TypeId_GameMonsterFormatData = 1141351615
|
||||
|
||||
func (*GameMonsterFormatData) GetTypeId() int32 {
|
||||
return 1141351615
|
||||
}
|
||||
|
||||
func (_v *GameMonsterFormatData)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["captainId"].(float64); !_ok_ { err = errors.New("captainId error"); return }; _v.CaptainId = int32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["monsterList"].([]interface{}); !_ok_ { err = errors.New("monsterList error"); return }
|
||||
|
||||
_v.MonsterList = 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.MonsterList = append(_v.MonsterList, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["lv"].(float64); !_ok_ { err = errors.New("lv error"); return }; _v.Lv = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hppro"].(float64); !_ok_ { err = errors.New("hppro error"); return }; _v.Hppro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["atkpro"].(float64); !_ok_ { err = errors.New("atkpro error"); return }; _v.Atkpro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["defpro"].(float64); !_ok_ { err = errors.New("defpro error"); return }; _v.Defpro = float32(_tempNum_) }
|
||||
return
|
||||
}
|
||||
|
||||
func DeserializeGameMonsterFormatData(_buf map[string]interface{}) (*GameMonsterFormatData, error) {
|
||||
v := &GameMonsterFormatData{}
|
||||
if err := v.Deserialize(_buf); err == nil {
|
||||
return v, nil
|
||||
} else {
|
||||
return nil, err
|
||||
}
|
||||
}
|
@ -12,6 +12,7 @@ import "errors"
|
||||
|
||||
type GameRdtaskCondiData struct {
|
||||
Id int32
|
||||
Datatype int32
|
||||
Type int32
|
||||
Data1 int32
|
||||
Data2 int32
|
||||
@ -26,6 +27,7 @@ func (*GameRdtaskCondiData) GetTypeId() int32 {
|
||||
|
||||
func (_v *GameRdtaskCondiData)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["datatype"].(float64); !_ok_ { err = errors.New("datatype error"); return }; _v.Datatype = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["type"].(float64); !_ok_ { err = errors.New("type error"); return }; _v.Type = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["data1"].(float64); !_ok_ { err = errors.New("data1 error"); return }; _v.Data1 = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["data2"].(float64); !_ok_ { err = errors.New("data2 error"); return }; _v.Data2 = int32(_tempNum_) }
|
||||
|
@ -15,11 +15,11 @@ type GameRdtaskSideData struct {
|
||||
ObjType int32
|
||||
Point string
|
||||
StoryBegin int32
|
||||
StoryEnd int32
|
||||
ChooseId []int32
|
||||
StoryEnd int32
|
||||
NextTid int32
|
||||
Reward []*Gameatn
|
||||
CD int32
|
||||
NextTid int32
|
||||
EndTid int32
|
||||
}
|
||||
|
||||
@ -34,7 +34,6 @@ func (_v *GameRdtaskSideData)Deserialize(_buf map[string]interface{}) (err error
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["objType"].(float64); !_ok_ { err = errors.New("objType error"); return }; _v.ObjType = int32(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.Point, _ok_ = _buf["point"].(string); !_ok_ { err = errors.New("point error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["storyBegin"].(float64); !_ok_ { err = errors.New("storyBegin error"); return }; _v.StoryBegin = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["storyEnd"].(float64); !_ok_ { err = errors.New("storyEnd error"); return }; _v.StoryEnd = int32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
@ -49,6 +48,8 @@ func (_v *GameRdtaskSideData)Deserialize(_buf map[string]interface{}) (err error
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["storyEnd"].(float64); !_ok_ { err = errors.New("storyEnd error"); return }; _v.StoryEnd = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["nextTid"].(float64); !_ok_ { err = errors.New("nextTid error"); return }; _v.NextTid = int32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
@ -64,7 +65,6 @@ func (_v *GameRdtaskSideData)Deserialize(_buf map[string]interface{}) (err error
|
||||
}
|
||||
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["CD"].(float64); !_ok_ { err = errors.New("CD error"); return }; _v.CD = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["nextTid"].(float64); !_ok_ { err = errors.New("nextTid error"); return }; _v.NextTid = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["endTid"].(float64); !_ok_ { err = errors.New("endTid error"); return }; _v.EndTid = int32(_tempNum_) }
|
||||
return
|
||||
}
|
||||
|
@ -24,4 +24,9 @@ const (
|
||||
GameSkillEffectType_SkillCD = 13
|
||||
GameSkillEffectType_MaxDmg = 14
|
||||
GameSkillEffectType_RandBuff = 15
|
||||
GameSkillEffectType_DpsByAddBuff = 16
|
||||
GameSkillEffectType_FrontDmg = 17
|
||||
GameSkillEffectType_Round = 18
|
||||
GameSkillEffectType_TreBeyondByAddBuff = 19
|
||||
GameSkillEffectType_AttrTrans = 20
|
||||
)
|
||||
|
@ -25,6 +25,9 @@ type GameSmithyData struct {
|
||||
Orderneed []*Gameatn
|
||||
Desk string
|
||||
Shelves string
|
||||
Name string
|
||||
Ico string
|
||||
Color int32
|
||||
}
|
||||
|
||||
const TypeId_GameSmithyData = 2042540316
|
||||
@ -87,6 +90,9 @@ func (_v *GameSmithyData)Deserialize(_buf map[string]interface{}) (err error) {
|
||||
|
||||
{ var _ok_ bool; if _v.Desk, _ok_ = _buf["desk"].(string); !_ok_ { err = errors.New("desk error"); return } }
|
||||
{ var _ok_ bool; if _v.Shelves, _ok_ = _buf["shelves"].(string); !_ok_ { err = errors.New("shelves 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 } } }
|
||||
{ var _ok_ bool; if _v.Ico, _ok_ = _buf["ico"].(string); !_ok_ { err = errors.New("ico error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["color"].(float64); !_ok_ { err = errors.New("color error"); return }; _v.Color = int32(_tempNum_) }
|
||||
return
|
||||
}
|
||||
|
||||
|
42
sys/configure/structs/Game.SmithyText.go
Normal file
42
sys/configure/structs/Game.SmithyText.go
Normal 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 GameSmithyText struct {
|
||||
_dataMap map[int32]*GameSmithyTextData
|
||||
_dataList []*GameSmithyTextData
|
||||
}
|
||||
|
||||
func NewGameSmithyText(_buf []map[string]interface{}) (*GameSmithyText, error) {
|
||||
_dataList := make([]*GameSmithyTextData, 0, len(_buf))
|
||||
dataMap := make(map[int32]*GameSmithyTextData)
|
||||
for _, _ele_ := range _buf {
|
||||
if _v, err2 := DeserializeGameSmithyTextData(_ele_); err2 != nil {
|
||||
return nil, err2
|
||||
} else {
|
||||
_dataList = append(_dataList, _v)
|
||||
dataMap[_v.Id] = _v
|
||||
}
|
||||
}
|
||||
return &GameSmithyText{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||
}
|
||||
|
||||
func (table *GameSmithyText) GetDataMap() map[int32]*GameSmithyTextData {
|
||||
return table._dataMap
|
||||
}
|
||||
|
||||
func (table *GameSmithyText) GetDataList() []*GameSmithyTextData {
|
||||
return table._dataList
|
||||
}
|
||||
|
||||
func (table *GameSmithyText) Get(key int32) *GameSmithyTextData {
|
||||
return table._dataMap[key]
|
||||
}
|
||||
|
||||
|
39
sys/configure/structs/Game.SmithyTextData.go
Normal file
39
sys/configure/structs/Game.SmithyTextData.go
Normal file
@ -0,0 +1,39 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <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 GameSmithyTextData struct {
|
||||
Id int32
|
||||
Type int32
|
||||
Txt string
|
||||
}
|
||||
|
||||
const TypeId_GameSmithyTextData = -2076966167
|
||||
|
||||
func (*GameSmithyTextData) GetTypeId() int32 {
|
||||
return -2076966167
|
||||
}
|
||||
|
||||
func (_v *GameSmithyTextData)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["type"].(float64); !_ok_ { err = errors.New("type error"); return }; _v.Type = int32(_tempNum_) }
|
||||
{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 } } }
|
||||
return
|
||||
}
|
||||
|
||||
func DeserializeGameSmithyTextData(_buf map[string]interface{}) (*GameSmithyTextData, error) {
|
||||
v := &GameSmithyTextData{}
|
||||
if err := v.Deserialize(_buf); err == nil {
|
||||
return v, nil
|
||||
} else {
|
||||
return nil, err
|
||||
}
|
||||
}
|
@ -11,484 +11,516 @@ package cfg
|
||||
type JsonLoader func(string) ([]map[string]interface{}, error)
|
||||
|
||||
type Tables struct {
|
||||
Global *GameGlobal
|
||||
Plot *GamePlot
|
||||
Extservers *GameExtservers
|
||||
SkillAtk *GameSkillAtk
|
||||
SkillAfteratk *GameSkillAfteratk
|
||||
SkillBuff *GameSkillBuff
|
||||
SkillPassive *GameSkillPassive
|
||||
Hero *GameHero
|
||||
HeroStargrow *GameHeroStargrow
|
||||
HeroLevelgrow *GameHeroLevelgrow
|
||||
HeroStarup *GameHeroStarup
|
||||
HeroExp *GameHeroExp
|
||||
HeroLevelup *GameHeroLevelup
|
||||
Equip *GameEquip
|
||||
EquipAttrlibrary *GameEquipAttrlibrary
|
||||
EquipSuit *GameEquipSuit
|
||||
EquipColor *GameEquipColor
|
||||
EquipIntensify *GameEquipIntensify
|
||||
Item *GameItem
|
||||
HeroSkillLevel *GameHeroSkillLevel
|
||||
HeroResonance *GameHeroResonance
|
||||
ComAtn *GameComAtn
|
||||
HeroAwaken *GameHeroAwaken
|
||||
HeroMethod *GameHeroMethod
|
||||
Shop *GameShop
|
||||
Shopitem *GameShopitem
|
||||
ActiveReward *GameActiveReward
|
||||
Skill *GameSkill
|
||||
Model *GameModel
|
||||
MainlineChapter *GameMainlineChapter
|
||||
MainlineEasy *GameMainlineEasy
|
||||
MainlineHard *GameMainlineHard
|
||||
MainlinePurgatory *GameMainlinePurgatory
|
||||
DrawCard *GameDrawCard
|
||||
ChatChannel *GameChatChannel
|
||||
ChatSystem *GameChatSystem
|
||||
ChatServerGroup *GameChatServerGroup
|
||||
ChatChannelCom *GameChatChannelCom
|
||||
ChatExpression *GameChatExpression
|
||||
TaskRound *GameTaskRound
|
||||
TaskActiveReward *GameTaskActiveReward
|
||||
Coin *GameCoin
|
||||
Initial *GameInitial
|
||||
Monster *GameMonster
|
||||
EquipPos *GameEquipPos
|
||||
Playerlv *GamePlayerlv
|
||||
Propsgroup *GamePropsgroup
|
||||
Facemod *GameFacemod
|
||||
Msgdistrib *GameMsgdistrib
|
||||
Opencond *GameOpencond
|
||||
Stroy *GameStroy
|
||||
Pagoda *GamePagoda
|
||||
PagodaTaskReward *GamePagodaTaskReward
|
||||
PagodaSeasonReward *GamePagodaSeasonReward
|
||||
PagodaseasonLoop *GamePagodaseasonLoop
|
||||
Rdtask *GameRdtask
|
||||
RdtaskCondi *GameRdtaskCondi
|
||||
RdtaskChoose *GameRdtaskChoose
|
||||
RdtaskSide *GameRdtaskSide
|
||||
KungfuUnlock *GameKungfuUnlock
|
||||
KungfuMasterworker *GameKungfuMasterworker
|
||||
Gourmet *GameGourmet
|
||||
Drop *GameDrop
|
||||
Smithy *GameSmithy
|
||||
SmithyStove *GameSmithyStove
|
||||
VikingBoss *GameVikingBoss
|
||||
VikingChallenge *GameVikingChallenge
|
||||
Global *GameGlobal
|
||||
Plot *GamePlot
|
||||
Extservers *GameExtservers
|
||||
SkillAtk *GameSkillAtk
|
||||
SkillAfteratk *GameSkillAfteratk
|
||||
SkillBuff *GameSkillBuff
|
||||
SkillPassive *GameSkillPassive
|
||||
Hero *GameHero
|
||||
HeroStargrow *GameHeroStargrow
|
||||
HeroLevelgrow *GameHeroLevelgrow
|
||||
HeroStarup *GameHeroStarup
|
||||
HeroExp *GameHeroExp
|
||||
HeroLevelup *GameHeroLevelup
|
||||
Equip *GameEquip
|
||||
EquipAttrlibrary *GameEquipAttrlibrary
|
||||
EquipSuit *GameEquipSuit
|
||||
EquipColor *GameEquipColor
|
||||
EquipIntensify *GameEquipIntensify
|
||||
Item *GameItem
|
||||
HeroSkillLevel *GameHeroSkillLevel
|
||||
HeroResonance *GameHeroResonance
|
||||
ComAtn *GameComAtn
|
||||
HeroAwaken *GameHeroAwaken
|
||||
HeroMethod *GameHeroMethod
|
||||
Shop *GameShop
|
||||
Shopitem *GameShopitem
|
||||
ActiveReward *GameActiveReward
|
||||
Model *GameModel
|
||||
MainlineChapter *GameMainlineChapter
|
||||
Mainline *GameMainline
|
||||
DrawCard *GameDrawCard
|
||||
ChatChannel *GameChatChannel
|
||||
ChatSystem *GameChatSystem
|
||||
ChatServerGroup *GameChatServerGroup
|
||||
ChatChannelCom *GameChatChannelCom
|
||||
ChatExpression *GameChatExpression
|
||||
TaskRound *GameTaskRound
|
||||
TaskActiveReward *GameTaskActiveReward
|
||||
Coin *GameCoin
|
||||
Initial *GameInitial
|
||||
Monster *GameMonster
|
||||
EquipPos *GameEquipPos
|
||||
Playerlv *GamePlayerlv
|
||||
Propsgroup *GamePropsgroup
|
||||
Facemod *GameFacemod
|
||||
Msgdistrib *GameMsgdistrib
|
||||
Opencond *GameOpencond
|
||||
Stroy *GameStroy
|
||||
Pagoda *GamePagoda
|
||||
PagodaTaskReward *GamePagodaTaskReward
|
||||
PagodaSeasonReward *GamePagodaSeasonReward
|
||||
PagodaseasonLoop *GamePagodaseasonLoop
|
||||
Rdtask *GameRdtask
|
||||
RdtaskCondi *GameRdtaskCondi
|
||||
RdtaskChoose *GameRdtaskChoose
|
||||
RdtaskSide *GameRdtaskSide
|
||||
KungfuUnlock *GameKungfuUnlock
|
||||
KungfuMasterworker *GameKungfuMasterworker
|
||||
Gourmet *GameGourmet
|
||||
Drop *GameDrop
|
||||
Smithy *GameSmithy
|
||||
SmithyStove *GameSmithyStove
|
||||
SmithyText *GameSmithyText
|
||||
VikingBoss *GameVikingBoss
|
||||
VikingChallenge *GameVikingChallenge
|
||||
DreamlandBoos *GameDreamlandBoos
|
||||
HuntingBoss *GameHuntingBoss
|
||||
HuntingChallenge *GameHuntingChallenge
|
||||
HuntingOpenTime *GameHuntingOpenTime
|
||||
MonsterFormat *GameMonsterFormat
|
||||
Link *GameLink
|
||||
GetResource *GameGetResource
|
||||
}
|
||||
|
||||
func NewTables(loader JsonLoader) (*Tables, error) {
|
||||
var err error
|
||||
var buf []map[string]interface{}
|
||||
var err error
|
||||
var buf []map[string]interface{}
|
||||
|
||||
tables := &Tables{}
|
||||
if buf, err = loader("game_global"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Global, err = NewGameGlobal(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_plot"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Plot, err = NewGamePlot(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_extservers"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Extservers, err = NewGameExtservers(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_skillatk"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SkillAtk, err = NewGameSkillAtk(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_skillafteratk"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SkillAfteratk, err = NewGameSkillAfteratk(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_skillbuff"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SkillBuff, err = NewGameSkillBuff(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_skillpassive"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SkillPassive, err = NewGameSkillPassive(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_hero"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Hero, err = NewGameHero(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_herostargrow"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroStargrow, err = NewGameHeroStargrow(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_herolevelgrow"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroLevelgrow, err = NewGameHeroLevelgrow(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_herostarup"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroStarup, err = NewGameHeroStarup(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_heroexp"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroExp, err = NewGameHeroExp(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_herolevelup"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroLevelup, err = NewGameHeroLevelup(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equip"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Equip, err = NewGameEquip(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equipattrlibrary"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.EquipAttrlibrary, err = NewGameEquipAttrlibrary(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equipsuit"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.EquipSuit, err = NewGameEquipSuit(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equipcolor"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.EquipColor, err = NewGameEquipColor(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equipintensify"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.EquipIntensify, err = NewGameEquipIntensify(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_item"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Item, err = NewGameItem(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_heroskilllevel"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroSkillLevel, err = NewGameHeroSkillLevel(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_heroresonance"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroResonance, err = NewGameHeroResonance(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_comatn"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ComAtn, err = NewGameComAtn(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_heroawaken"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroAwaken, err = NewGameHeroAwaken(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_heromethod"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroMethod, err = NewGameHeroMethod(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_shop"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Shop, err = NewGameShop(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_shopitem"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Shopitem, err = NewGameShopitem(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_activereward"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ActiveReward, err = NewGameActiveReward(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_skill"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Skill, err = NewGameSkill(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_model"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Model, err = NewGameModel(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_mainlinechapter"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.MainlineChapter, err = NewGameMainlineChapter(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_mainlineeasy"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.MainlineEasy, err = NewGameMainlineEasy(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_mainlinehard"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.MainlineHard, err = NewGameMainlineHard(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_mainlinepurgatory"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.MainlinePurgatory, err = NewGameMainlinePurgatory(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_drawcard"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.DrawCard, err = NewGameDrawCard(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_chatchannel"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ChatChannel, err = NewGameChatChannel(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_chatsystem"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ChatSystem, err = NewGameChatSystem(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_chatservergroup"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ChatServerGroup, err = NewGameChatServerGroup(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_chatchannelcom"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ChatChannelCom, err = NewGameChatChannelCom(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_chatexpression"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ChatExpression, err = NewGameChatExpression(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_taskround"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.TaskRound, err = NewGameTaskRound(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_taskactivereward"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.TaskActiveReward, err = NewGameTaskActiveReward(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_coin"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Coin, err = NewGameCoin(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_initial"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Initial, err = NewGameInitial(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_monster"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Monster, err = NewGameMonster(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equippos"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.EquipPos, err = NewGameEquipPos(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_playerlv"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Playerlv, err = NewGamePlayerlv(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_propsgroup"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Propsgroup, err = NewGamePropsgroup(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_facemod"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Facemod, err = NewGameFacemod(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_msgdistrib"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Msgdistrib, err = NewGameMsgdistrib(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_opencond"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Opencond, err = NewGameOpencond(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_stroy"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Stroy, err = NewGameStroy(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_pagoda"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Pagoda, err = NewGamePagoda(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_pagodataskreward"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.PagodaTaskReward, err = NewGamePagodaTaskReward(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_pagodaseasonreward"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.PagodaSeasonReward, err = NewGamePagodaSeasonReward(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_pagodaseasonloop"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.PagodaseasonLoop, err = NewGamePagodaseasonLoop(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_rdtask"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Rdtask, err = NewGameRdtask(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_rdtaskcondi"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.RdtaskCondi, err = NewGameRdtaskCondi(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_rdtaskchoose"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.RdtaskChoose, err = NewGameRdtaskChoose(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_rdtaskside"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.RdtaskSide, err = NewGameRdtaskSide(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_kungfuunlock"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.KungfuUnlock, err = NewGameKungfuUnlock(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_kungfumasterworker"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.KungfuMasterworker, err = NewGameKungfuMasterworker(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_gourmet"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Gourmet, err = NewGameGourmet(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_gourmetskill"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_drop"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Drop, err = NewGameDrop(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_smithy"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Smithy, err = NewGameSmithy(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_smithystove"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SmithyStove, err = NewGameSmithyStove(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_vikingboss"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.VikingBoss, err = NewGameVikingBoss(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_vikingchallenge"); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.VikingChallenge, err = NewGameVikingChallenge(buf); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return tables, nil
|
||||
tables := &Tables{}
|
||||
if buf, err = loader("game_global") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Global, err = NewGameGlobal(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_plot") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Plot, err = NewGamePlot(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_extservers") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Extservers, err = NewGameExtservers(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_skillatk") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SkillAtk, err = NewGameSkillAtk(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_skillafteratk") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SkillAfteratk, err = NewGameSkillAfteratk(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_skillbuff") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SkillBuff, err = NewGameSkillBuff(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_skillpassive") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SkillPassive, err = NewGameSkillPassive(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_hero") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Hero, err = NewGameHero(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_herostargrow") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroStargrow, err = NewGameHeroStargrow(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_herolevelgrow") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroLevelgrow, err = NewGameHeroLevelgrow(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_herostarup") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroStarup, err = NewGameHeroStarup(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_heroexp") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroExp, err = NewGameHeroExp(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_herolevelup") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroLevelup, err = NewGameHeroLevelup(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equip") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Equip, err = NewGameEquip(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equipattrlibrary") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.EquipAttrlibrary, err = NewGameEquipAttrlibrary(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equipsuit") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.EquipSuit, err = NewGameEquipSuit(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equipcolor") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.EquipColor, err = NewGameEquipColor(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equipintensify") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.EquipIntensify, err = NewGameEquipIntensify(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_item") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Item, err = NewGameItem(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_heroskilllevel") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroSkillLevel, err = NewGameHeroSkillLevel(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_heroresonance") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroResonance, err = NewGameHeroResonance(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_comatn") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ComAtn, err = NewGameComAtn(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_heroawaken") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroAwaken, err = NewGameHeroAwaken(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_heromethod") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HeroMethod, err = NewGameHeroMethod(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_shop") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Shop, err = NewGameShop(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_shopitem") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Shopitem, err = NewGameShopitem(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_activereward") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ActiveReward, err = NewGameActiveReward(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_model") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Model, err = NewGameModel(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_mainlinechapter") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.MainlineChapter, err = NewGameMainlineChapter(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_mainline") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Mainline, err = NewGameMainline(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_drawcard") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.DrawCard, err = NewGameDrawCard(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_chatchannel") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ChatChannel, err = NewGameChatChannel(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_chatsystem") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ChatSystem, err = NewGameChatSystem(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_chatservergroup") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ChatServerGroup, err = NewGameChatServerGroup(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_chatchannelcom") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ChatChannelCom, err = NewGameChatChannelCom(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_chatexpression") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.ChatExpression, err = NewGameChatExpression(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_taskround") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.TaskRound, err = NewGameTaskRound(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_taskactivereward") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.TaskActiveReward, err = NewGameTaskActiveReward(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_coin") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Coin, err = NewGameCoin(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_initial") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Initial, err = NewGameInitial(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_monster") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Monster, err = NewGameMonster(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_equippos") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.EquipPos, err = NewGameEquipPos(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_playerlv") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Playerlv, err = NewGamePlayerlv(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_propsgroup") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Propsgroup, err = NewGamePropsgroup(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_facemod") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Facemod, err = NewGameFacemod(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_msgdistrib") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Msgdistrib, err = NewGameMsgdistrib(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_opencond") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Opencond, err = NewGameOpencond(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_stroy") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Stroy, err = NewGameStroy(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_pagoda") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Pagoda, err = NewGamePagoda(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_pagodataskreward") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.PagodaTaskReward, err = NewGamePagodaTaskReward(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_pagodaseasonreward") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.PagodaSeasonReward, err = NewGamePagodaSeasonReward(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_pagodaseasonloop") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.PagodaseasonLoop, err = NewGamePagodaseasonLoop(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_rdtask") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Rdtask, err = NewGameRdtask(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_rdtaskcondi") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.RdtaskCondi, err = NewGameRdtaskCondi(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_rdtaskchoose") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.RdtaskChoose, err = NewGameRdtaskChoose(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_rdtaskside") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.RdtaskSide, err = NewGameRdtaskSide(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_kungfuunlock") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.KungfuUnlock, err = NewGameKungfuUnlock(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_kungfumasterworker") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.KungfuMasterworker, err = NewGameKungfuMasterworker(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_gourmet") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Gourmet, err = NewGameGourmet(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_drop") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Drop, err = NewGameDrop(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_smithy") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Smithy, err = NewGameSmithy(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_smithystove") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SmithyStove, err = NewGameSmithyStove(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_smithytext") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.SmithyText, err = NewGameSmithyText(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_vikingboss") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.VikingBoss, err = NewGameVikingBoss(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_vikingchallenge") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.VikingChallenge, err = NewGameVikingChallenge(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_dreamlandboos") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.DreamlandBoos, err = NewGameDreamlandBoos(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_huntingboss") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HuntingBoss, err = NewGameHuntingBoss(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_huntingchallenge") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HuntingChallenge, err = NewGameHuntingChallenge(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_huntingopentime") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.HuntingOpenTime, err = NewGameHuntingOpenTime(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_monsterformat") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.MonsterFormat, err = NewGameMonsterFormat(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_link") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.Link, err = NewGameLink(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if buf, err = loader("game_getresource") ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if tables.GetResource, err = NewGameGetResource(buf) ; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return tables, nil
|
||||
}
|
||||
|
@ -13,7 +13,7 @@ import "errors"
|
||||
type GameMainlineChapterData struct {
|
||||
Id int32
|
||||
Name string
|
||||
Intensity string
|
||||
Intensity int32
|
||||
Map string
|
||||
Title string
|
||||
Desc string
|
||||
@ -32,7 +32,7 @@ func (*GameMainlineChapterData) GetTypeId() int32 {
|
||||
func (_v *GameMainlineChapterData)Deserialize(_buf map[string]interface{}) (err error) {
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = int32(_tempNum_) }
|
||||
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Name, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||
{ var _ok_ bool; if _v.Intensity, _ok_ = _buf["Intensity"].(string); !_ok_ { err = errors.New("Intensity error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Intensity"].(float64); !_ok_ { err = errors.New("Intensity error"); return }; _v.Intensity = int32(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.Map, _ok_ = _buf["map"].(string); !_ok_ { err = errors.New("map error"); return } }
|
||||
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["title"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Title error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Title, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["desc"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Desc error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Desc, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||
|
@ -1,42 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <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 GameMainlineEasy struct {
|
||||
_dataMap map[int32]*GameMainlineEasyData
|
||||
_dataList []*GameMainlineEasyData
|
||||
}
|
||||
|
||||
func NewGameMainlineEasy(_buf []map[string]interface{}) (*GameMainlineEasy, error) {
|
||||
_dataList := make([]*GameMainlineEasyData, 0, len(_buf))
|
||||
dataMap := make(map[int32]*GameMainlineEasyData)
|
||||
for _, _ele_ := range _buf {
|
||||
if _v, err2 := DeserializeGameMainlineEasyData(_ele_); err2 != nil {
|
||||
return nil, err2
|
||||
} else {
|
||||
_dataList = append(_dataList, _v)
|
||||
dataMap[_v.Id] = _v
|
||||
}
|
||||
}
|
||||
return &GameMainlineEasy{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||
}
|
||||
|
||||
func (table *GameMainlineEasy) GetDataMap() map[int32]*GameMainlineEasyData {
|
||||
return table._dataMap
|
||||
}
|
||||
|
||||
func (table *GameMainlineEasy) GetDataList() []*GameMainlineEasyData {
|
||||
return table._dataList
|
||||
}
|
||||
|
||||
func (table *GameMainlineEasy) Get(key int32) *GameMainlineEasyData {
|
||||
return table._dataMap[key]
|
||||
}
|
||||
|
||||
|
@ -1,42 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <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 GameMainlineHard struct {
|
||||
_dataMap map[int32]*GameMainlineHardData
|
||||
_dataList []*GameMainlineHardData
|
||||
}
|
||||
|
||||
func NewGameMainlineHard(_buf []map[string]interface{}) (*GameMainlineHard, error) {
|
||||
_dataList := make([]*GameMainlineHardData, 0, len(_buf))
|
||||
dataMap := make(map[int32]*GameMainlineHardData)
|
||||
for _, _ele_ := range _buf {
|
||||
if _v, err2 := DeserializeGameMainlineHardData(_ele_); err2 != nil {
|
||||
return nil, err2
|
||||
} else {
|
||||
_dataList = append(_dataList, _v)
|
||||
dataMap[_v.Id] = _v
|
||||
}
|
||||
}
|
||||
return &GameMainlineHard{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||
}
|
||||
|
||||
func (table *GameMainlineHard) GetDataMap() map[int32]*GameMainlineHardData {
|
||||
return table._dataMap
|
||||
}
|
||||
|
||||
func (table *GameMainlineHard) GetDataList() []*GameMainlineHardData {
|
||||
return table._dataList
|
||||
}
|
||||
|
||||
func (table *GameMainlineHard) Get(key int32) *GameMainlineHardData {
|
||||
return table._dataMap[key]
|
||||
}
|
||||
|
||||
|
@ -1,141 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <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 GameMainlineHardData struct {
|
||||
Id int32
|
||||
Previoustage int32
|
||||
Order int32
|
||||
Linearnum int32
|
||||
Chapter int32
|
||||
Route int32
|
||||
Episodetype int32
|
||||
Episodelocation []int32
|
||||
Model string
|
||||
Effect string
|
||||
Enemywave int32
|
||||
Enemy1lv int32
|
||||
Enemy1hppro float32
|
||||
Enemy1atkpro float32
|
||||
Enemy1defpro float32
|
||||
Enemy2lv int32
|
||||
Enemy2hppro float32
|
||||
Enemy2atkpro float32
|
||||
Enemy2defpro float32
|
||||
Wave1enemyid []int32
|
||||
Wave2enemyid []int32
|
||||
Enemyid string
|
||||
MonsterId string
|
||||
Battlescene string
|
||||
Sceneeffect string
|
||||
Award []*Gameatn
|
||||
Title string
|
||||
Desc string
|
||||
}
|
||||
|
||||
const TypeId_GameMainlineHardData = -1213325826
|
||||
|
||||
func (*GameMainlineHardData) GetTypeId() int32 {
|
||||
return -1213325826
|
||||
}
|
||||
|
||||
func (_v *GameMainlineHardData)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["previoustage"].(float64); !_ok_ { err = errors.New("previoustage error"); return }; _v.Previoustage = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["order"].(float64); !_ok_ { err = errors.New("order error"); return }; _v.Order = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["linearnum"].(float64); !_ok_ { err = errors.New("linearnum error"); return }; _v.Linearnum = 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["route"].(float64); !_ok_ { err = errors.New("route error"); return }; _v.Route = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["episodetype"].(float64); !_ok_ { err = errors.New("episodetype error"); return }; _v.Episodetype = int32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["episodelocation"].([]interface{}); !_ok_ { err = errors.New("episodelocation error"); return }
|
||||
|
||||
_v.Episodelocation = 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.Episodelocation = append(_v.Episodelocation, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; if _v.Model, _ok_ = _buf["model"].(string); !_ok_ { err = errors.New("model error"); return } }
|
||||
{ var _ok_ bool; if _v.Effect, _ok_ = _buf["effect"].(string); !_ok_ { err = errors.New("effect error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemywave"].(float64); !_ok_ { err = errors.New("enemywave error"); return }; _v.Enemywave = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1lv"].(float64); !_ok_ { err = errors.New("enemy1lv error"); return }; _v.Enemy1lv = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1hppro"].(float64); !_ok_ { err = errors.New("enemy1hppro error"); return }; _v.Enemy1hppro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1atkpro"].(float64); !_ok_ { err = errors.New("enemy1atkpro error"); return }; _v.Enemy1atkpro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1defpro"].(float64); !_ok_ { err = errors.New("enemy1defpro error"); return }; _v.Enemy1defpro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2lv"].(float64); !_ok_ { err = errors.New("enemy2lv error"); return }; _v.Enemy2lv = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2hppro"].(float64); !_ok_ { err = errors.New("enemy2hppro error"); return }; _v.Enemy2hppro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2atkpro"].(float64); !_ok_ { err = errors.New("enemy2atkpro error"); return }; _v.Enemy2atkpro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2defpro"].(float64); !_ok_ { err = errors.New("enemy2defpro error"); return }; _v.Enemy2defpro = float32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["wave1enemyid"].([]interface{}); !_ok_ { err = errors.New("wave1enemyid error"); return }
|
||||
|
||||
_v.Wave1enemyid = 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.Wave1enemyid = append(_v.Wave1enemyid, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["wave2enemyid"].([]interface{}); !_ok_ { err = errors.New("wave2enemyid error"); return }
|
||||
|
||||
_v.Wave2enemyid = 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.Wave2enemyid = append(_v.Wave2enemyid, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; if _v.Enemyid, _ok_ = _buf["enemyid"].(string); !_ok_ { err = errors.New("enemyid error"); return } }
|
||||
{ var _ok_ bool; if _v.MonsterId, _ok_ = _buf["monster_id"].(string); !_ok_ { err = errors.New("monster_id error"); return } }
|
||||
{ var _ok_ bool; if _v.Battlescene, _ok_ = _buf["battlescene"].(string); !_ok_ { err = errors.New("battlescene error"); return } }
|
||||
{ var _ok_ bool; if _v.Sceneeffect, _ok_ = _buf["sceneeffect"].(string); !_ok_ { err = errors.New("sceneeffect error"); return } }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["award"].([]interface{}); !_ok_ { err = errors.New("award error"); return }
|
||||
|
||||
_v.Award = 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.Award = append(_v.Award, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["title"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Title error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Title, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["desc"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Desc error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Desc, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||
return
|
||||
}
|
||||
|
||||
func DeserializeGameMainlineHardData(_buf map[string]interface{}) (*GameMainlineHardData, error) {
|
||||
v := &GameMainlineHardData{}
|
||||
if err := v.Deserialize(_buf); err == nil {
|
||||
return v, nil
|
||||
} else {
|
||||
return nil, err
|
||||
}
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <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 GameMainlinePurgatory struct {
|
||||
_dataMap map[int32]*GameMainlinePurgatoryData
|
||||
_dataList []*GameMainlinePurgatoryData
|
||||
}
|
||||
|
||||
func NewGameMainlinePurgatory(_buf []map[string]interface{}) (*GameMainlinePurgatory, error) {
|
||||
_dataList := make([]*GameMainlinePurgatoryData, 0, len(_buf))
|
||||
dataMap := make(map[int32]*GameMainlinePurgatoryData)
|
||||
for _, _ele_ := range _buf {
|
||||
if _v, err2 := DeserializeGameMainlinePurgatoryData(_ele_); err2 != nil {
|
||||
return nil, err2
|
||||
} else {
|
||||
_dataList = append(_dataList, _v)
|
||||
dataMap[_v.Id] = _v
|
||||
}
|
||||
}
|
||||
return &GameMainlinePurgatory{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||
}
|
||||
|
||||
func (table *GameMainlinePurgatory) GetDataMap() map[int32]*GameMainlinePurgatoryData {
|
||||
return table._dataMap
|
||||
}
|
||||
|
||||
func (table *GameMainlinePurgatory) GetDataList() []*GameMainlinePurgatoryData {
|
||||
return table._dataList
|
||||
}
|
||||
|
||||
func (table *GameMainlinePurgatory) Get(key int32) *GameMainlinePurgatoryData {
|
||||
return table._dataMap[key]
|
||||
}
|
||||
|
||||
|
@ -1,141 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <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 GameMainlinePurgatoryData struct {
|
||||
Id int32
|
||||
Previoustage int32
|
||||
Order int32
|
||||
Linearnum int32
|
||||
Chapter int32
|
||||
Route int32
|
||||
Episodetype int32
|
||||
Episodelocation []int32
|
||||
Model string
|
||||
Effect string
|
||||
Enemywave int32
|
||||
Enemy1lv int32
|
||||
Enemy1hppro float32
|
||||
Enemy1atkpro float32
|
||||
Enemy1defpro float32
|
||||
Enemy2lv int32
|
||||
Enemy2hppro float32
|
||||
Enemy2atkpro float32
|
||||
Enemy2defpro float32
|
||||
Wave1enemyid []int32
|
||||
Wave2enemyid []int32
|
||||
Enemyid string
|
||||
MonsterId string
|
||||
Battlescene string
|
||||
Sceneeffect string
|
||||
Award []*Gameatn
|
||||
Title string
|
||||
Desc string
|
||||
}
|
||||
|
||||
const TypeId_GameMainlinePurgatoryData = -1700526774
|
||||
|
||||
func (*GameMainlinePurgatoryData) GetTypeId() int32 {
|
||||
return -1700526774
|
||||
}
|
||||
|
||||
func (_v *GameMainlinePurgatoryData)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["previoustage"].(float64); !_ok_ { err = errors.New("previoustage error"); return }; _v.Previoustage = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["order"].(float64); !_ok_ { err = errors.New("order error"); return }; _v.Order = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["linearnum"].(float64); !_ok_ { err = errors.New("linearnum error"); return }; _v.Linearnum = 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["route"].(float64); !_ok_ { err = errors.New("route error"); return }; _v.Route = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["episodetype"].(float64); !_ok_ { err = errors.New("episodetype error"); return }; _v.Episodetype = int32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["episodelocation"].([]interface{}); !_ok_ { err = errors.New("episodelocation error"); return }
|
||||
|
||||
_v.Episodelocation = 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.Episodelocation = append(_v.Episodelocation, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; if _v.Model, _ok_ = _buf["model"].(string); !_ok_ { err = errors.New("model error"); return } }
|
||||
{ var _ok_ bool; if _v.Effect, _ok_ = _buf["effect"].(string); !_ok_ { err = errors.New("effect error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemywave"].(float64); !_ok_ { err = errors.New("enemywave error"); return }; _v.Enemywave = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1lv"].(float64); !_ok_ { err = errors.New("enemy1lv error"); return }; _v.Enemy1lv = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1hppro"].(float64); !_ok_ { err = errors.New("enemy1hppro error"); return }; _v.Enemy1hppro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1atkpro"].(float64); !_ok_ { err = errors.New("enemy1atkpro error"); return }; _v.Enemy1atkpro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy1defpro"].(float64); !_ok_ { err = errors.New("enemy1defpro error"); return }; _v.Enemy1defpro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2lv"].(float64); !_ok_ { err = errors.New("enemy2lv error"); return }; _v.Enemy2lv = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2hppro"].(float64); !_ok_ { err = errors.New("enemy2hppro error"); return }; _v.Enemy2hppro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2atkpro"].(float64); !_ok_ { err = errors.New("enemy2atkpro error"); return }; _v.Enemy2atkpro = float32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["enemy2defpro"].(float64); !_ok_ { err = errors.New("enemy2defpro error"); return }; _v.Enemy2defpro = float32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["wave1enemyid"].([]interface{}); !_ok_ { err = errors.New("wave1enemyid error"); return }
|
||||
|
||||
_v.Wave1enemyid = 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.Wave1enemyid = append(_v.Wave1enemyid, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["wave2enemyid"].([]interface{}); !_ok_ { err = errors.New("wave2enemyid error"); return }
|
||||
|
||||
_v.Wave2enemyid = 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.Wave2enemyid = append(_v.Wave2enemyid, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; if _v.Enemyid, _ok_ = _buf["enemyid"].(string); !_ok_ { err = errors.New("enemyid error"); return } }
|
||||
{ var _ok_ bool; if _v.MonsterId, _ok_ = _buf["monster_id"].(string); !_ok_ { err = errors.New("monster_id error"); return } }
|
||||
{ var _ok_ bool; if _v.Battlescene, _ok_ = _buf["battlescene"].(string); !_ok_ { err = errors.New("battlescene error"); return } }
|
||||
{ var _ok_ bool; if _v.Sceneeffect, _ok_ = _buf["sceneeffect"].(string); !_ok_ { err = errors.New("sceneeffect error"); return } }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["award"].([]interface{}); !_ok_ { err = errors.New("award error"); return }
|
||||
|
||||
_v.Award = 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.Award = append(_v.Award, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["title"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Title error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Title, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["desc"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Desc error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Desc, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||
return
|
||||
}
|
||||
|
||||
func DeserializeGameMainlinePurgatoryData(_buf map[string]interface{}) (*GameMainlinePurgatoryData, error) {
|
||||
v := &GameMainlinePurgatoryData{}
|
||||
if err := v.Deserialize(_buf); err == nil {
|
||||
return v, nil
|
||||
} else {
|
||||
return nil, err
|
||||
}
|
||||
}
|
@ -9,34 +9,26 @@
|
||||
package cfg
|
||||
|
||||
type GameSkillAtk struct {
|
||||
_dataMap map[int32]*GameSkillAtkData
|
||||
_dataList []*GameSkillAtkData
|
||||
}
|
||||
|
||||
func NewGameSkillAtk(_buf []map[string]interface{}) (*GameSkillAtk, error) {
|
||||
_dataList := make([]*GameSkillAtkData, 0, len(_buf))
|
||||
dataMap := make(map[int32]*GameSkillAtkData)
|
||||
for _, _ele_ := range _buf {
|
||||
if _v, err2 := DeserializeGameSkillAtkData(_ele_); err2 != nil {
|
||||
return nil, err2
|
||||
} else {
|
||||
_dataList = append(_dataList, _v)
|
||||
dataMap[_v.Id] = _v
|
||||
}
|
||||
}
|
||||
return &GameSkillAtk{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||
}
|
||||
|
||||
func (table *GameSkillAtk) GetDataMap() map[int32]*GameSkillAtkData {
|
||||
return table._dataMap
|
||||
return &GameSkillAtk{_dataList:_dataList}, nil
|
||||
}
|
||||
|
||||
func (table *GameSkillAtk) GetDataList() []*GameSkillAtkData {
|
||||
return table._dataList
|
||||
}
|
||||
|
||||
func (table *GameSkillAtk) Get(key int32) *GameSkillAtkData {
|
||||
return table._dataMap[key]
|
||||
func (table *GameSkillAtk) Get(index int) *GameSkillAtkData {
|
||||
return table._dataList[index]
|
||||
}
|
||||
|
||||
|
||||
|
@ -12,16 +12,18 @@ import "errors"
|
||||
|
||||
type GameSkillAtkData struct {
|
||||
Id int32
|
||||
Level int32
|
||||
MaxLV int32
|
||||
Name string
|
||||
Ico string
|
||||
Act string
|
||||
Type int32
|
||||
MaxLV int32
|
||||
CD []int32
|
||||
CD int32
|
||||
Target int32
|
||||
ChildSkill []*GameChildSkills
|
||||
Desc []string
|
||||
ChildSkill *GameChildSkills
|
||||
Desc string
|
||||
Buffid []int32
|
||||
Map string
|
||||
}
|
||||
|
||||
const TypeId_GameSkillAtkData = -1737392307
|
||||
@ -31,55 +33,17 @@ func (*GameSkillAtkData) GetTypeId() int32 {
|
||||
}
|
||||
|
||||
func (_v *GameSkillAtkData)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["id"].(float64); !_ok_ { err = errors.New("id error"); return }; _v.Id = 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 _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["MaxLV"].(float64); !_ok_ { err = errors.New("MaxLV error"); return }; _v.MaxLV = int32(_tempNum_) }
|
||||
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["Name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Name, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||
{ var _ok_ bool; if _v.Ico, _ok_ = _buf["ico"].(string); !_ok_ { err = errors.New("ico error"); return } }
|
||||
{ var _ok_ bool; if _v.Act, _ok_ = _buf["act"].(string); !_ok_ { err = errors.New("act error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Type"].(float64); !_ok_ { err = errors.New("Type error"); return }; _v.Type = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["MaxLV"].(float64); !_ok_ { err = errors.New("MaxLV error"); return }; _v.MaxLV = int32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["CD"].([]interface{}); !_ok_ { err = errors.New("CD error"); return }
|
||||
|
||||
_v.CD = 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.CD = append(_v.CD, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["CD"].(float64); !_ok_ { err = errors.New("CD error"); return }; _v.CD = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Target"].(float64); !_ok_ { err = errors.New("Target error"); return }; _v.Target = int32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["ChildSkill"].([]interface{}); !_ok_ { err = errors.New("ChildSkill error"); return }
|
||||
|
||||
_v.ChildSkill = make([]*GameChildSkills, 0, len(_arr_))
|
||||
|
||||
for _, _e_ := range _arr_ {
|
||||
var _list_v_ *GameChildSkills
|
||||
{ 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 = DeserializeGameChildSkills(_x_); err != nil { return } }
|
||||
_v.ChildSkill = append(_v.ChildSkill, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["Desc"].([]interface{}); !_ok_ { err = errors.New("Desc error"); return }
|
||||
|
||||
_v.Desc = 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.Desc = append(_v.Desc, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _buf["ChildSkill"].(map[string]interface{}); !_ok_ { err = errors.New("ChildSkill error"); return }; if _v.ChildSkill, err = DeserializeGameChildSkills(_x_); err != nil { return } }
|
||||
{ var _ok_ bool; if _v.Desc, _ok_ = _buf["Desc"].(string); !_ok_ { err = errors.New("Desc error"); return } }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
@ -94,6 +58,7 @@ func (_v *GameSkillAtkData)Deserialize(_buf map[string]interface{}) (err error)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; if _v.Map, _ok_ = _buf["map"].(string); !_ok_ { err = errors.New("map error"); return } }
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -13,8 +13,8 @@ import "errors"
|
||||
type GameSkillPassiveData struct {
|
||||
Id int32
|
||||
When string
|
||||
Where string
|
||||
AddCon []string
|
||||
TargetCheck int32
|
||||
AddCon string
|
||||
PasPr int32
|
||||
Type string
|
||||
MaxEmitTimes int32
|
||||
@ -30,21 +30,8 @@ func (*GameSkillPassiveData) GetTypeId() int32 {
|
||||
func (_v *GameSkillPassiveData)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; if _v.When, _ok_ = _buf["When"].(string); !_ok_ { err = errors.New("When error"); return } }
|
||||
{ var _ok_ bool; if _v.Where, _ok_ = _buf["Where"].(string); !_ok_ { err = errors.New("Where error"); return } }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["AddCon"].([]interface{}); !_ok_ { err = errors.New("AddCon error"); return }
|
||||
|
||||
_v.AddCon = 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.AddCon = append(_v.AddCon, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["TargetCheck"].(float64); !_ok_ { err = errors.New("TargetCheck error"); return }; _v.TargetCheck = int32(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.AddCon, _ok_ = _buf["AddCon"].(string); !_ok_ { err = errors.New("AddCon error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["PasPr"].(float64); !_ok_ { err = errors.New("PasPr error"); return }; _v.PasPr = int32(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.Type, _ok_ = _buf["Type"].(string); !_ok_ { err = errors.New("Type error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["MaxEmitTimes"].(float64); !_ok_ { err = errors.New("MaxEmitTimes error"); return }; _v.MaxEmitTimes = int32(_tempNum_) }
|
||||
|
@ -18,7 +18,9 @@ type GameStroyData struct {
|
||||
Next int32
|
||||
Type int32
|
||||
Bg string
|
||||
Place int32
|
||||
Speak string
|
||||
Listen string
|
||||
Emoji string
|
||||
Des string
|
||||
Chose []int32
|
||||
@ -27,7 +29,6 @@ type GameStroyData struct {
|
||||
Move string
|
||||
Action string
|
||||
Sound string
|
||||
Place int32
|
||||
Position serialization.Vector3
|
||||
Revolve serialization.Vector3
|
||||
Size serialization.Vector3
|
||||
@ -49,7 +50,9 @@ func (_v *GameStroyData)Deserialize(_buf map[string]interface{}) (err error) {
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["next"].(float64); !_ok_ { err = errors.New("next error"); return }; _v.Next = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["type"].(float64); !_ok_ { err = errors.New("type error"); return }; _v.Type = int32(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.Bg, _ok_ = _buf["bg"].(string); !_ok_ { err = errors.New("bg error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["place"].(float64); !_ok_ { err = errors.New("place error"); return }; _v.Place = int32(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.Speak, _ok_ = _buf["speak"].(string); !_ok_ { err = errors.New("speak error"); return } }
|
||||
{ var _ok_ bool; if _v.Listen, _ok_ = _buf["listen"].(string); !_ok_ { err = errors.New("listen error"); return } }
|
||||
{ var _ok_ bool; if _v.Emoji, _ok_ = _buf["emoji"].(string); !_ok_ { err = errors.New("emoji error"); return } }
|
||||
{ var _ok_ bool; if _v.Des, _ok_ = _buf["des"].(string); !_ok_ { err = errors.New("des error"); return } }
|
||||
{
|
||||
@ -71,7 +74,6 @@ func (_v *GameStroyData)Deserialize(_buf map[string]interface{}) (err error) {
|
||||
{ var _ok_ bool; if _v.Move, _ok_ = _buf["move"].(string); !_ok_ { err = errors.New("move error"); return } }
|
||||
{ var _ok_ bool; if _v.Action, _ok_ = _buf["action"].(string); !_ok_ { err = errors.New("action error"); return } }
|
||||
{ var _ok_ bool; if _v.Sound, _ok_ = _buf["sound"].(string); !_ok_ { err = errors.New("sound error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["place"].(float64); !_ok_ { err = errors.New("place error"); return }; _v.Place = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _v_ map[string]interface{}; if _v_, _ok_ = _buf["position"].(map[string]interface{}); !_ok_ { err = errors.New("position error"); return }
|
||||
var _x_, _y_, _z_ float32;
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _v_["x"].(float64); !_ok_ { err = errors.New("x error"); return }; _x_ = float32(_tempNum_) }
|
||||
|
Loading…
Reference in New Issue
Block a user