商队系统改造
This commit is contained in:
parent
cc550d9da5
commit
d511fb2756
@ -5,7 +5,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -21,7 +21,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -37,7 +37,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_05_01"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -53,7 +53,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -69,7 +69,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -85,7 +85,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -101,7 +101,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -117,7 +117,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -133,7 +133,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -149,7 +149,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -165,7 +165,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -197,7 +197,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -213,7 +213,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
@ -229,7 +229,7 @@
|
||||
"HeroCount": 5,
|
||||
"readyScene": "scenesfight_role_interface_02",
|
||||
"battleScenes": [
|
||||
"scenesfight_03_02"
|
||||
"scenesfight_07"
|
||||
],
|
||||
"disableAiCamera": 0,
|
||||
"DefaultHero": 0,
|
||||
|
@ -1,38 +1,77 @@
|
||||
[
|
||||
{
|
||||
"num": "20030001",
|
||||
"stime": 100,
|
||||
"etime": 120,
|
||||
"id": "20030001",
|
||||
"name": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"intr": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"Color": 1,
|
||||
"Img": "",
|
||||
"access": [
|
||||
107
|
||||
],
|
||||
"model": "",
|
||||
"point": "",
|
||||
"stime": 20,
|
||||
"etime": 20,
|
||||
"hp": 7,
|
||||
"model": "",
|
||||
"point": "",
|
||||
"moderate": 0,
|
||||
"sprint": 0,
|
||||
"acceleration": 0,
|
||||
"deceleration": 0
|
||||
"moderate": 100,
|
||||
"sprint": 200,
|
||||
"acceleration": 100,
|
||||
"deceleration": 100
|
||||
},
|
||||
{
|
||||
"num": "20030002",
|
||||
"stime": 100,
|
||||
"etime": 120,
|
||||
"hp": 5,
|
||||
"id": "20030002",
|
||||
"name": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"intr": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"Color": 1,
|
||||
"Img": "",
|
||||
"access": [
|
||||
107
|
||||
],
|
||||
"model": "",
|
||||
"point": "",
|
||||
"moderate": 0,
|
||||
"sprint": 0,
|
||||
"acceleration": 0,
|
||||
"deceleration": 0
|
||||
"stime": 20,
|
||||
"etime": 20,
|
||||
"hp": 5,
|
||||
"moderate": 100,
|
||||
"sprint": 200,
|
||||
"acceleration": 100,
|
||||
"deceleration": 100
|
||||
},
|
||||
{
|
||||
"num": "20030003",
|
||||
"stime": 100,
|
||||
"etime": 120,
|
||||
"hp": 5,
|
||||
"id": "20030003",
|
||||
"name": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"intr": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"Color": 1,
|
||||
"Img": "",
|
||||
"access": [
|
||||
107
|
||||
],
|
||||
"model": "",
|
||||
"point": "",
|
||||
"moderate": 0,
|
||||
"sprint": 0,
|
||||
"acceleration": 0,
|
||||
"deceleration": 0
|
||||
"stime": 20,
|
||||
"etime": 20,
|
||||
"hp": 5,
|
||||
"moderate": 100,
|
||||
"sprint": 200,
|
||||
"acceleration": 100,
|
||||
"deceleration": 100
|
||||
}
|
||||
]
|
@ -2,6 +2,7 @@
|
||||
{
|
||||
"id": 1,
|
||||
"model": "51004",
|
||||
"idleAni": "kungfu_pavilion_action_1_act",
|
||||
"weight": 1000,
|
||||
"startstory": 4001,
|
||||
"rejectstory": 4002,
|
||||
@ -45,6 +46,7 @@
|
||||
{
|
||||
"id": 2,
|
||||
"model": "51005",
|
||||
"idleAni": "kungfu_pavilion_action_2_act",
|
||||
"weight": 1000,
|
||||
"startstory": 4001,
|
||||
"rejectstory": 4002,
|
||||
|
@ -8,7 +8,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 168,
|
||||
"tasktime": 65,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -56,7 +56,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 124,
|
||||
"tasktime": 143,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -104,7 +104,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 125,
|
||||
"tasktime": 68,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -152,7 +152,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 169,
|
||||
"tasktime": 80,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -200,7 +200,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt5",
|
||||
"taskcd": 200,
|
||||
"tasktime": 176,
|
||||
"tasktime": 157,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -248,7 +248,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt6",
|
||||
"taskcd": 200,
|
||||
"tasktime": 97,
|
||||
"tasktime": 179,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -296,7 +296,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt7",
|
||||
"taskcd": 200,
|
||||
"tasktime": 66,
|
||||
"tasktime": 175,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -344,7 +344,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 173,
|
||||
"tasktime": 75,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -392,7 +392,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 104,
|
||||
"tasktime": 86,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -440,7 +440,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 77,
|
||||
"tasktime": 119,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -488,7 +488,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 180,
|
||||
"tasktime": 144,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -536,7 +536,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt5",
|
||||
"taskcd": 200,
|
||||
"tasktime": 91,
|
||||
"tasktime": 167,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -632,7 +632,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt7",
|
||||
"taskcd": 200,
|
||||
"tasktime": 95,
|
||||
"tasktime": 87,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -680,7 +680,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 86,
|
||||
"tasktime": 133,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -728,7 +728,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 162,
|
||||
"tasktime": 172,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -776,7 +776,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 175,
|
||||
"tasktime": 164,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -824,7 +824,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 63,
|
||||
"tasktime": 85,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -872,7 +872,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt5",
|
||||
"taskcd": 200,
|
||||
"tasktime": 131,
|
||||
"tasktime": 115,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -920,7 +920,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt6",
|
||||
"taskcd": 200,
|
||||
"tasktime": 155,
|
||||
"tasktime": 148,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -968,7 +968,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt7",
|
||||
"taskcd": 200,
|
||||
"tasktime": 76,
|
||||
"tasktime": 118,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -1016,7 +1016,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 101,
|
||||
"tasktime": 174,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -1064,7 +1064,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 158,
|
||||
"tasktime": 140,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -1112,7 +1112,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 172,
|
||||
"tasktime": 147,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -1160,7 +1160,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 116,
|
||||
"tasktime": 120,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -1256,7 +1256,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt6",
|
||||
"taskcd": 200,
|
||||
"tasktime": 60,
|
||||
"tasktime": 170,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -1304,7 +1304,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt7",
|
||||
"taskcd": 200,
|
||||
"tasktime": 134,
|
||||
"tasktime": 149,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -1352,7 +1352,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 125,
|
||||
"tasktime": 132,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -1400,7 +1400,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 131,
|
||||
"tasktime": 87,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -1448,7 +1448,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 118,
|
||||
"tasktime": 149,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -1496,7 +1496,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 148,
|
||||
"tasktime": 164,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -1544,7 +1544,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt5",
|
||||
"taskcd": 200,
|
||||
"tasktime": 64,
|
||||
"tasktime": 85,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -1592,7 +1592,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt6",
|
||||
"taskcd": 200,
|
||||
"tasktime": 110,
|
||||
"tasktime": 148,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -1640,7 +1640,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt7",
|
||||
"taskcd": 200,
|
||||
"tasktime": 151,
|
||||
"tasktime": 131,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -1688,7 +1688,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 101,
|
||||
"tasktime": 125,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -1736,7 +1736,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 96,
|
||||
"tasktime": 93,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -1784,7 +1784,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 61,
|
||||
"tasktime": 162,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -1832,7 +1832,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 151,
|
||||
"tasktime": 119,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -1880,7 +1880,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt5",
|
||||
"taskcd": 200,
|
||||
"tasktime": 85,
|
||||
"tasktime": 63,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -1928,7 +1928,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt6",
|
||||
"taskcd": 200,
|
||||
"tasktime": 132,
|
||||
"tasktime": 136,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -1976,7 +1976,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt7",
|
||||
"taskcd": 200,
|
||||
"tasktime": 74,
|
||||
"tasktime": 135,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -2024,7 +2024,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 98,
|
||||
"tasktime": 69,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -2072,7 +2072,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 153,
|
||||
"tasktime": 103,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -2120,7 +2120,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 162,
|
||||
"tasktime": 66,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -2168,7 +2168,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 117,
|
||||
"tasktime": 169,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -2216,7 +2216,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt5",
|
||||
"taskcd": 200,
|
||||
"tasktime": 71,
|
||||
"tasktime": 112,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -2264,7 +2264,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt6",
|
||||
"taskcd": 200,
|
||||
"tasktime": 119,
|
||||
"tasktime": 62,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -2312,7 +2312,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt7",
|
||||
"taskcd": 200,
|
||||
"tasktime": 166,
|
||||
"tasktime": 92,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -2360,7 +2360,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 100,
|
||||
"tasktime": 156,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -2408,7 +2408,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 148,
|
||||
"tasktime": 92,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -2456,7 +2456,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 154,
|
||||
"tasktime": 170,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -2504,7 +2504,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 119,
|
||||
"tasktime": 69,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -2552,7 +2552,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt5",
|
||||
"taskcd": 200,
|
||||
"tasktime": 93,
|
||||
"tasktime": 75,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -2600,7 +2600,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt6",
|
||||
"taskcd": 200,
|
||||
"tasktime": 163,
|
||||
"tasktime": 80,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -2648,7 +2648,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt7",
|
||||
"taskcd": 200,
|
||||
"tasktime": 180,
|
||||
"tasktime": 134,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -2696,7 +2696,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 104,
|
||||
"tasktime": 120,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -2744,7 +2744,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 119,
|
||||
"tasktime": 117,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -2792,7 +2792,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 103,
|
||||
"tasktime": 119,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -2840,7 +2840,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 164,
|
||||
"tasktime": 109,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -2888,7 +2888,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt5",
|
||||
"taskcd": 200,
|
||||
"tasktime": 90,
|
||||
"tasktime": 114,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -2936,7 +2936,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt6",
|
||||
"taskcd": 200,
|
||||
"tasktime": 113,
|
||||
"tasktime": 70,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -2984,7 +2984,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt7",
|
||||
"taskcd": 200,
|
||||
"tasktime": 138,
|
||||
"tasktime": 117,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -3032,7 +3032,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 178,
|
||||
"tasktime": 143,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -3080,7 +3080,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 113,
|
||||
"tasktime": 92,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -3128,7 +3128,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 165,
|
||||
"tasktime": 130,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -3176,7 +3176,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 155,
|
||||
"tasktime": 105,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -3224,7 +3224,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt5",
|
||||
"taskcd": 200,
|
||||
"tasktime": 107,
|
||||
"tasktime": 152,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -3272,7 +3272,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt6",
|
||||
"taskcd": 200,
|
||||
"tasktime": 141,
|
||||
"tasktime": 98,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -3320,7 +3320,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt7",
|
||||
"taskcd": 200,
|
||||
"tasktime": 70,
|
||||
"tasktime": 167,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
@ -3368,7 +3368,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt1",
|
||||
"taskcd": 200,
|
||||
"tasktime": 115,
|
||||
"tasktime": 179,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Tiger",
|
||||
"text": "这是属于悍娇虎的专属委托"
|
||||
@ -3416,7 +3416,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt2",
|
||||
"taskcd": 200,
|
||||
"tasktime": 65,
|
||||
"tasktime": 109,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Shifu",
|
||||
"text": "这是属于师父的专属委托"
|
||||
@ -3464,7 +3464,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt3",
|
||||
"taskcd": 200,
|
||||
"tasktime": 160,
|
||||
"tasktime": 68,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Po",
|
||||
"text": "这是属于阿宝的专属委托"
|
||||
@ -3512,7 +3512,7 @@
|
||||
},
|
||||
"icon": "xmwg_rw_pt4",
|
||||
"taskcd": 200,
|
||||
"tasktime": 106,
|
||||
"tasktime": 96,
|
||||
"tasktxt": {
|
||||
"key": "Entrustment details of Bobi",
|
||||
"text": "这是属于波比的专属委托"
|
||||
|
@ -735,6 +735,7 @@
|
||||
"v": 500
|
||||
}
|
||||
],
|
||||
"mounts": "20030001"
|
||||
"mounts": "20030001",
|
||||
"buzkashi_recentPlayer": 10
|
||||
}
|
||||
]
|
File diff suppressed because it is too large
Load Diff
@ -2,6 +2,12 @@
|
||||
{
|
||||
"id": 1,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text1",
|
||||
"text": "1阶攻击图纸"
|
||||
@ -48,6 +54,12 @@
|
||||
{
|
||||
"id": 2,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text2",
|
||||
"text": "2阶攻击图纸"
|
||||
@ -95,6 +107,12 @@
|
||||
{
|
||||
"id": 3,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text3",
|
||||
"text": "3阶攻击图纸"
|
||||
@ -143,6 +161,12 @@
|
||||
{
|
||||
"id": 4,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text4",
|
||||
"text": "4阶攻击图纸"
|
||||
@ -190,6 +214,12 @@
|
||||
{
|
||||
"id": 5,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text5",
|
||||
"text": "5阶攻击图纸"
|
||||
@ -238,6 +268,12 @@
|
||||
{
|
||||
"id": 6,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text6",
|
||||
"text": "6阶攻击图纸"
|
||||
@ -285,6 +321,12 @@
|
||||
{
|
||||
"id": 7,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text7",
|
||||
"text": "7阶攻击图纸"
|
||||
@ -333,6 +375,12 @@
|
||||
{
|
||||
"id": 8,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text8",
|
||||
"text": "8阶攻击图纸"
|
||||
@ -380,6 +428,12 @@
|
||||
{
|
||||
"id": 9,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text9",
|
||||
"text": "9阶攻击图纸"
|
||||
@ -428,6 +482,12 @@
|
||||
{
|
||||
"id": 10,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text10",
|
||||
"text": "10阶攻击图纸"
|
||||
@ -480,6 +540,12 @@
|
||||
{
|
||||
"id": 11,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text11",
|
||||
"text": "11阶攻击图纸"
|
||||
@ -531,6 +597,12 @@
|
||||
{
|
||||
"id": 12,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text12",
|
||||
"text": "12阶攻击图纸"
|
||||
@ -582,6 +654,12 @@
|
||||
{
|
||||
"id": 13,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text13",
|
||||
"text": "13阶攻击图纸"
|
||||
@ -633,6 +711,12 @@
|
||||
{
|
||||
"id": 14,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text14",
|
||||
"text": "14阶攻击图纸"
|
||||
@ -684,6 +768,12 @@
|
||||
{
|
||||
"id": 15,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text15",
|
||||
"text": "15阶攻击图纸"
|
||||
@ -735,6 +825,12 @@
|
||||
{
|
||||
"id": 16,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text16",
|
||||
"text": "16阶攻击图纸"
|
||||
@ -786,6 +882,12 @@
|
||||
{
|
||||
"id": 17,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text17",
|
||||
"text": "17阶攻击图纸"
|
||||
@ -837,6 +939,12 @@
|
||||
{
|
||||
"id": 18,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text18",
|
||||
"text": "18阶攻击图纸"
|
||||
@ -888,6 +996,12 @@
|
||||
{
|
||||
"id": 19,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text19",
|
||||
"text": "19阶攻击图纸"
|
||||
@ -939,6 +1053,12 @@
|
||||
{
|
||||
"id": 20,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text20",
|
||||
"text": "20阶攻击图纸"
|
||||
@ -995,6 +1115,12 @@
|
||||
{
|
||||
"id": 21,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text21",
|
||||
"text": "21阶攻击图纸"
|
||||
@ -1051,6 +1177,12 @@
|
||||
{
|
||||
"id": 22,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text22",
|
||||
"text": "22阶攻击图纸"
|
||||
@ -1107,6 +1239,12 @@
|
||||
{
|
||||
"id": 23,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text23",
|
||||
"text": "23阶攻击图纸"
|
||||
@ -1163,6 +1301,12 @@
|
||||
{
|
||||
"id": 24,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text24",
|
||||
"text": "24阶攻击图纸"
|
||||
@ -1219,6 +1363,12 @@
|
||||
{
|
||||
"id": 25,
|
||||
"type": 1,
|
||||
"type2_png": "tj_img_gjtz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text25",
|
||||
"text": "25阶攻击图纸"
|
||||
@ -1275,6 +1425,12 @@
|
||||
{
|
||||
"id": 26,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text26",
|
||||
"text": "1阶防御图纸"
|
||||
@ -1321,6 +1477,12 @@
|
||||
{
|
||||
"id": 27,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text27",
|
||||
"text": "2阶防御图纸"
|
||||
@ -1368,6 +1530,12 @@
|
||||
{
|
||||
"id": 28,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text28",
|
||||
"text": "3阶防御图纸"
|
||||
@ -1416,6 +1584,12 @@
|
||||
{
|
||||
"id": 29,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text29",
|
||||
"text": "4阶防御图纸"
|
||||
@ -1463,6 +1637,12 @@
|
||||
{
|
||||
"id": 30,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text30",
|
||||
"text": "5阶防御图纸"
|
||||
@ -1511,6 +1691,12 @@
|
||||
{
|
||||
"id": 31,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text31",
|
||||
"text": "6阶防御图纸"
|
||||
@ -1558,6 +1744,12 @@
|
||||
{
|
||||
"id": 32,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text32",
|
||||
"text": "7阶防御图纸"
|
||||
@ -1606,6 +1798,12 @@
|
||||
{
|
||||
"id": 33,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text33",
|
||||
"text": "8阶防御图纸"
|
||||
@ -1653,6 +1851,12 @@
|
||||
{
|
||||
"id": 34,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text34",
|
||||
"text": "9阶防御图纸"
|
||||
@ -1701,6 +1905,12 @@
|
||||
{
|
||||
"id": 35,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text35",
|
||||
"text": "10阶防御图纸"
|
||||
@ -1753,6 +1963,12 @@
|
||||
{
|
||||
"id": 36,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text36",
|
||||
"text": "11阶防御图纸"
|
||||
@ -1804,6 +2020,12 @@
|
||||
{
|
||||
"id": 37,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text37",
|
||||
"text": "12阶防御图纸"
|
||||
@ -1855,6 +2077,12 @@
|
||||
{
|
||||
"id": 38,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text38",
|
||||
"text": "13阶防御图纸"
|
||||
@ -1906,6 +2134,12 @@
|
||||
{
|
||||
"id": 39,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text39",
|
||||
"text": "14阶防御图纸"
|
||||
@ -1957,6 +2191,12 @@
|
||||
{
|
||||
"id": 40,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text40",
|
||||
"text": "15阶防御图纸"
|
||||
@ -2008,6 +2248,12 @@
|
||||
{
|
||||
"id": 41,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text41",
|
||||
"text": "16阶防御图纸"
|
||||
@ -2059,6 +2305,12 @@
|
||||
{
|
||||
"id": 42,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text42",
|
||||
"text": "17阶防御图纸"
|
||||
@ -2110,6 +2362,12 @@
|
||||
{
|
||||
"id": 43,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text43",
|
||||
"text": "18阶防御图纸"
|
||||
@ -2161,6 +2419,12 @@
|
||||
{
|
||||
"id": 44,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text44",
|
||||
"text": "19阶防御图纸"
|
||||
@ -2212,6 +2476,12 @@
|
||||
{
|
||||
"id": 45,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text45",
|
||||
"text": "20阶防御图纸"
|
||||
@ -2268,6 +2538,12 @@
|
||||
{
|
||||
"id": 46,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text46",
|
||||
"text": "21阶防御图纸"
|
||||
@ -2324,6 +2600,12 @@
|
||||
{
|
||||
"id": 47,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text47",
|
||||
"text": "22阶防御图纸"
|
||||
@ -2380,6 +2662,12 @@
|
||||
{
|
||||
"id": 48,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text48",
|
||||
"text": "23阶防御图纸"
|
||||
@ -2436,6 +2724,12 @@
|
||||
{
|
||||
"id": 49,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text49",
|
||||
"text": "24阶防御图纸"
|
||||
@ -2492,6 +2786,12 @@
|
||||
{
|
||||
"id": 50,
|
||||
"type": 2,
|
||||
"type2_png": "tj_img_fytz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text50",
|
||||
"text": "25阶防御图纸"
|
||||
@ -2548,6 +2848,12 @@
|
||||
{
|
||||
"id": 51,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text51",
|
||||
"text": "1阶辅助图纸"
|
||||
@ -2594,6 +2900,12 @@
|
||||
{
|
||||
"id": 52,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text52",
|
||||
"text": "2阶辅助图纸"
|
||||
@ -2641,6 +2953,12 @@
|
||||
{
|
||||
"id": 53,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text53",
|
||||
"text": "3阶辅助图纸"
|
||||
@ -2689,6 +3007,12 @@
|
||||
{
|
||||
"id": 54,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text54",
|
||||
"text": "4阶辅助图纸"
|
||||
@ -2736,6 +3060,12 @@
|
||||
{
|
||||
"id": 55,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 1,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text55",
|
||||
"text": "5阶辅助图纸"
|
||||
@ -2784,6 +3114,12 @@
|
||||
{
|
||||
"id": 56,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text56",
|
||||
"text": "6阶辅助图纸"
|
||||
@ -2831,6 +3167,12 @@
|
||||
{
|
||||
"id": 57,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text57",
|
||||
"text": "7阶辅助图纸"
|
||||
@ -2879,6 +3221,12 @@
|
||||
{
|
||||
"id": 58,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text58",
|
||||
"text": "8阶辅助图纸"
|
||||
@ -2926,6 +3274,12 @@
|
||||
{
|
||||
"id": 59,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text59",
|
||||
"text": "9阶辅助图纸"
|
||||
@ -2974,6 +3328,12 @@
|
||||
{
|
||||
"id": 60,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 2,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text60",
|
||||
"text": "10阶辅助图纸"
|
||||
@ -3026,6 +3386,12 @@
|
||||
{
|
||||
"id": 61,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text61",
|
||||
"text": "11阶辅助图纸"
|
||||
@ -3077,6 +3443,12 @@
|
||||
{
|
||||
"id": 62,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text62",
|
||||
"text": "12阶辅助图纸"
|
||||
@ -3128,6 +3500,12 @@
|
||||
{
|
||||
"id": 63,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text63",
|
||||
"text": "13阶辅助图纸"
|
||||
@ -3179,6 +3557,12 @@
|
||||
{
|
||||
"id": 64,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text64",
|
||||
"text": "14阶辅助图纸"
|
||||
@ -3230,6 +3614,12 @@
|
||||
{
|
||||
"id": 65,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 3,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text65",
|
||||
"text": "15阶辅助图纸"
|
||||
@ -3281,6 +3671,12 @@
|
||||
{
|
||||
"id": 66,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text66",
|
||||
"text": "16阶辅助图纸"
|
||||
@ -3332,6 +3728,12 @@
|
||||
{
|
||||
"id": 67,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text67",
|
||||
"text": "17阶辅助图纸"
|
||||
@ -3383,6 +3785,12 @@
|
||||
{
|
||||
"id": 68,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text68",
|
||||
"text": "18阶辅助图纸"
|
||||
@ -3434,6 +3842,12 @@
|
||||
{
|
||||
"id": 69,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text69",
|
||||
"text": "19阶辅助图纸"
|
||||
@ -3485,6 +3899,12 @@
|
||||
{
|
||||
"id": 70,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 4,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text70",
|
||||
"text": "20阶辅助图纸"
|
||||
@ -3541,6 +3961,12 @@
|
||||
{
|
||||
"id": 71,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_1",
|
||||
"text": "一阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text71",
|
||||
"text": "21阶辅助图纸"
|
||||
@ -3597,6 +4023,12 @@
|
||||
{
|
||||
"id": 72,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_2",
|
||||
"text": "二阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text72",
|
||||
"text": "22阶辅助图纸"
|
||||
@ -3653,6 +4085,12 @@
|
||||
{
|
||||
"id": 73,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_3",
|
||||
"text": "三阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text73",
|
||||
"text": "23阶辅助图纸"
|
||||
@ -3709,6 +4147,12 @@
|
||||
{
|
||||
"id": 74,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_4",
|
||||
"text": "四阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text74",
|
||||
"text": "24阶辅助图纸"
|
||||
@ -3765,6 +4209,12 @@
|
||||
{
|
||||
"id": 75,
|
||||
"type": 3,
|
||||
"type2_png": "tj_img_fztz",
|
||||
"type2_star": 5,
|
||||
"type3_name": {
|
||||
"key": "newsmithy_maketype3_name_5",
|
||||
"text": "五阶"
|
||||
},
|
||||
"drawing_name": {
|
||||
"key": "newsmithy_drawing_name_text75",
|
||||
"text": "25阶辅助图纸"
|
||||
|
@ -11,7 +11,9 @@
|
||||
"text": "双脚并立,双臂自然垂在身体的两侧。向上跳,双腿打开,双手举过头顶。\n再向上跳,双脚并拢,手臂放回身体两侧,重复这个动作。这项运动锻炼身体所有的大肌肉群。"
|
||||
},
|
||||
"ticks": 3,
|
||||
"time": 60,
|
||||
"ani": "fitness_action1",
|
||||
"energy": "",
|
||||
"p": 500,
|
||||
"before_training": 25003,
|
||||
"after_training": 25004,
|
||||
@ -29,7 +31,9 @@
|
||||
"text": "双腿与肩同宽,双臂与肩同高平伸于身体两侧。\n然后双臂进行顺时针绕环活动,之后逆时针绕环。"
|
||||
},
|
||||
"ticks": 3,
|
||||
"time": 60,
|
||||
"ani": "fitness_action2",
|
||||
"energy": "",
|
||||
"p": 500,
|
||||
"before_training": 25003,
|
||||
"after_training": 25004,
|
||||
|
@ -5748,7 +5748,7 @@
|
||||
"type_sp": 1,
|
||||
"tasktxt": {
|
||||
"key": "20001_taskcond",
|
||||
"text": "和骇客蛛进行对话"
|
||||
"text": "触碰能源石"
|
||||
},
|
||||
"type": 20001,
|
||||
"valid": 1,
|
||||
|
@ -3024,7 +3024,6 @@
|
||||
"text": "攻击1个敌方4次,每次伤害为自身攻击力45%,每次有30%概率为目标附加1回合【眩晕】。"
|
||||
},
|
||||
"buffid": [
|
||||
390001105,
|
||||
390001105
|
||||
],
|
||||
"map": ""
|
||||
@ -6184,7 +6183,9 @@
|
||||
"key": "skill_1240021111",
|
||||
"text": "攻击随机2个敌方,伤害为自身攻击力55%,为目标附加【童真】。"
|
||||
},
|
||||
"buffid": [],
|
||||
"buffid": [
|
||||
390001211
|
||||
],
|
||||
"map": ""
|
||||
},
|
||||
{
|
||||
@ -6352,7 +6353,10 @@
|
||||
"key": "skill_1240022111",
|
||||
"text": "攻击时,若目标有【童真】,附加2回合【速度下降】。受击时,若攻击者有【童真】,50%概率反击。"
|
||||
},
|
||||
"buffid": [],
|
||||
"buffid": [
|
||||
390001211,
|
||||
390001008
|
||||
],
|
||||
"map": ""
|
||||
},
|
||||
{
|
||||
|
@ -1356,7 +1356,7 @@
|
||||
"OverlayTimes": 5,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
"buffIcon": "",
|
||||
"buffIcon": "ty_zd_buff_j009",
|
||||
"buffeffect": "",
|
||||
"buffpos": "根节点"
|
||||
},
|
||||
|
@ -8,15 +8,15 @@
|
||||
"text": "进行10次普通招募"
|
||||
},
|
||||
"type_id": 3018001,
|
||||
"active": 20,
|
||||
"active": 40,
|
||||
"id_after": 0,
|
||||
"jump_interface": 107,
|
||||
"icon": "wp_icon_0001",
|
||||
"reword": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
"a": "item",
|
||||
"t": "151001",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -29,15 +29,15 @@
|
||||
"text": "为任意英雄提升10次等级"
|
||||
},
|
||||
"type_id": 3024001,
|
||||
"active": 20,
|
||||
"active": 40,
|
||||
"id_after": 0,
|
||||
"jump_interface": 103,
|
||||
"icon": "wp_icon_0001",
|
||||
"reword": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
"a": "item",
|
||||
"t": "151001",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -50,15 +50,15 @@
|
||||
"text": "强化任意装备成功6次"
|
||||
},
|
||||
"type_id": 3047001,
|
||||
"active": 20,
|
||||
"active": 40,
|
||||
"id_after": 0,
|
||||
"jump_interface": 102,
|
||||
"icon": "wp_icon_0001",
|
||||
"reword": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 20
|
||||
"a": "item",
|
||||
"t": "151001",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -71,15 +71,15 @@
|
||||
"text": "在商店购买任意7件商品"
|
||||
},
|
||||
"type_id": 3064001,
|
||||
"active": 30,
|
||||
"active": 40,
|
||||
"id_after": 0,
|
||||
"jump_interface": 122,
|
||||
"icon": "wp_icon_0001",
|
||||
"reword": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
"a": "item",
|
||||
"t": "151001",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -92,15 +92,15 @@
|
||||
"text": "使用好友助战英雄战斗7次"
|
||||
},
|
||||
"type_id": 3012001,
|
||||
"active": 30,
|
||||
"active": 40,
|
||||
"id_after": 0,
|
||||
"jump_interface": 113,
|
||||
"icon": "wp_icon_0001",
|
||||
"reword": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
"a": "item",
|
||||
"t": "151001",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -113,15 +113,15 @@
|
||||
"text": "刷新商店10次"
|
||||
},
|
||||
"type_id": 3105001,
|
||||
"active": 30,
|
||||
"active": 40,
|
||||
"id_after": 0,
|
||||
"jump_interface": 122,
|
||||
"icon": "wp_icon_0001",
|
||||
"reword": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
"a": "item",
|
||||
"t": "151001",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -134,15 +134,15 @@
|
||||
"text": "消费1000颗钻石"
|
||||
},
|
||||
"type_id": 3104001,
|
||||
"active": 30,
|
||||
"active": 40,
|
||||
"id_after": 0,
|
||||
"jump_interface": 122,
|
||||
"icon": "wp_icon_0001",
|
||||
"reword": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 20
|
||||
"a": "item",
|
||||
"t": "151001",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
@ -155,15 +155,15 @@
|
||||
"text": "进行30场竞技场挑战"
|
||||
},
|
||||
"type_id": 3130001,
|
||||
"active": 30,
|
||||
"active": 40,
|
||||
"id_after": 0,
|
||||
"jump_interface": 156,
|
||||
"icon": "wp_icon_0001",
|
||||
"reword": [
|
||||
{
|
||||
"a": "attr",
|
||||
"t": "diamond",
|
||||
"n": 10
|
||||
"a": "item",
|
||||
"t": "151001",
|
||||
"n": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -937,7 +937,7 @@
|
||||
"key": 80010,
|
||||
"lock": 1,
|
||||
"lockend": 0,
|
||||
"ontxe": 20060,
|
||||
"ontxe": 200600,
|
||||
"id_after": 0,
|
||||
"group": 360,
|
||||
"des": 3,
|
||||
|
37
modules/caravan/api.go
Normal file
37
modules/caravan/api.go
Normal file
@ -0,0 +1,37 @@
|
||||
package caravan
|
||||
|
||||
import (
|
||||
"go_dreamfactory/lego/core"
|
||||
"go_dreamfactory/modules"
|
||||
)
|
||||
|
||||
const (
|
||||
TrollGetListResp = "getlist"
|
||||
TrollBuyOrSellResp = "buyorsell"
|
||||
TrollNpcRewardResp = "npcreward"
|
||||
TrollRankListResp = "ranklist"
|
||||
TrollRecordListResp = "recordlist"
|
||||
TrollAfkSetResp = "afkset"
|
||||
TrollSurpriseIdResp = "surpriseid"
|
||||
)
|
||||
|
||||
type apiComp struct {
|
||||
modules.MCompGate
|
||||
service core.IService
|
||||
configure *configureComp
|
||||
module *Caravan
|
||||
}
|
||||
|
||||
//组件初始化接口
|
||||
func (this *apiComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
|
||||
err = this.MCompGate.Init(service, module, comp, options)
|
||||
this.module = module.(*Caravan)
|
||||
this.service = service
|
||||
return
|
||||
}
|
||||
|
||||
func (this *apiComp) Start() (err error) {
|
||||
err = this.MCompGate.Start()
|
||||
|
||||
return
|
||||
}
|
169
modules/caravan/api_buyorsell.go
Normal file
169
modules/caravan/api_buyorsell.go
Normal file
@ -0,0 +1,169 @@
|
||||
package caravan
|
||||
|
||||
import (
|
||||
"go_dreamfactory/comm"
|
||||
"go_dreamfactory/pb"
|
||||
"go_dreamfactory/sys/configure"
|
||||
"math"
|
||||
)
|
||||
|
||||
//参数校验
|
||||
func (this *apiComp) BuyOrSellCheck(session comm.IUserSession, req *pb.TrollBuyOrSellReq) (code pb.ErrorCode) {
|
||||
if len(req.Items) == 0 {
|
||||
code = pb.ErrorCode_ReqParameterError
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (this *apiComp) BuyOrSell(session comm.IUserSession, req *pb.TrollBuyOrSellReq) (code pb.ErrorCode, data *pb.ErrorData) {
|
||||
var (
|
||||
bSell bool // 是否有出售
|
||||
gold int32 // 当次交易 获得的金币
|
||||
earn int32 // 只统计赚的金币
|
||||
update map[string]interface{}
|
||||
gridNum int32 // 格子数量
|
||||
)
|
||||
update = make(map[string]interface{})
|
||||
if code = this.BuyOrSellCheck(session, req); code != pb.ErrorCode_Success {
|
||||
return // 参数校验失败直接返回
|
||||
}
|
||||
trolltrain, err := this.module.modelTroll.getTrollList(session.GetUserId())
|
||||
if err != nil {
|
||||
code = pb.ErrorCode_DBError
|
||||
return
|
||||
}
|
||||
dayMaxCount := this.configure.GetTrollRule(comm.TrollBuyCount)
|
||||
aiMaxCount := this.configure.GetTrollRule(comm.TrollAIBuyCount)
|
||||
for k, v := range req.Items {
|
||||
|
||||
if v == 0 { // 过滤数量为0 的消息
|
||||
continue
|
||||
}
|
||||
if trolltrain.RangeId == 0 {
|
||||
trolltrain.RangeId = 1
|
||||
update["rangeId"] = trolltrain.RangeId
|
||||
}
|
||||
if v < 0 {
|
||||
if !bSell {
|
||||
bSell = true
|
||||
trolltrain.SellCount += 1 // 交易次数+1
|
||||
if trolltrain.SellCount > dayMaxCount || (trolltrain.SellCount+trolltrain.AiCount) > aiMaxCount {
|
||||
code = pb.ErrorCode_TrollMaxSellCount // 达到最大交易次数 直接返回
|
||||
return
|
||||
}
|
||||
update["sellCount"] = trolltrain.SellCount
|
||||
}
|
||||
}
|
||||
|
||||
if _, ok := trolltrain.Shop[k]; !ok {
|
||||
if v > 0 {
|
||||
trolltrain.Shop[k] = v // 限购
|
||||
}
|
||||
} else {
|
||||
if v > 0 {
|
||||
trolltrain.Shop[k] += v // 限购
|
||||
}
|
||||
}
|
||||
// 校验 是否大于买入最大限制
|
||||
goods := this.configure.GetTrollGoods(k)
|
||||
if goods == nil {
|
||||
return
|
||||
}
|
||||
if trolltrain.Shop[k] > goods.Max { // 判断是否有效交易
|
||||
// 买入上限 直接返回
|
||||
code = pb.ErrorCode_TrollBuyMax
|
||||
return
|
||||
} else if trolltrain.Items[k]+v < 0 { //卖出数量不足
|
||||
code = pb.ErrorCode_TrollSellMax
|
||||
return
|
||||
}
|
||||
|
||||
// 第一次购买商品
|
||||
if trolltrain.TarinPos == 0 {
|
||||
if _, ok := trolltrain.Price[k]; !ok {
|
||||
trolltrain.Price[k] = 0
|
||||
}
|
||||
trolltrain.Price[k] = goods.Goodsprice * goods.StarMoney / 1000
|
||||
trolltrain.RefreshTime = configure.Now().Unix()
|
||||
//消耗的金币
|
||||
gold -= trolltrain.Price[k] * trolltrain.Items[k]
|
||||
} else {
|
||||
p := this.configure.GetTrollCoefficient(trolltrain.RangeId)
|
||||
if p == nil {
|
||||
return
|
||||
}
|
||||
var sellPrice int32 // 交易价格
|
||||
if trolltrain.TarinPos == 0 {
|
||||
sellPrice = goods.Goodsprice * goods.StarMoney / 1000
|
||||
} else {
|
||||
sellPrice = int32(p.Coefficient) * goods.Goodsprice / 1000
|
||||
}
|
||||
// 校验是不是惊喜价格
|
||||
if d1, ok := trolltrain.SurpriseID[trolltrain.TarinPos-1]; ok {
|
||||
if d1 == k {
|
||||
sellPrice = this.configure.GetTrollRule(comm.TrollSurprise) / 1000
|
||||
}
|
||||
}
|
||||
if v < 0 { // 卖出
|
||||
trolltrain.Items[k] += v
|
||||
if sellPrice > trolltrain.Price[k] { // 赚了
|
||||
earn += (sellPrice - trolltrain.Price[k]) * v
|
||||
}
|
||||
gold -= sellPrice * v
|
||||
} else { // 买入 计算平均价格
|
||||
totalGold := trolltrain.Items[k] * trolltrain.Price[k]
|
||||
totalGold += v * sellPrice
|
||||
trolltrain.Items[k] += v
|
||||
trolltrain.Price[k] = totalGold / trolltrain.Items[k]
|
||||
gold -= v * sellPrice
|
||||
}
|
||||
}
|
||||
}
|
||||
// 重新计算格子数量
|
||||
grid := this.configure.GetTrollRule(comm.TrollItemCount)
|
||||
for _, v := range trolltrain.Items {
|
||||
if v > 0 {
|
||||
gridNum += int32(math.Ceil(float64(v) / float64(grid)))
|
||||
}
|
||||
}
|
||||
|
||||
trolltrain.GridNum = gridNum
|
||||
if gridNum > this.configure.GetTrollRule(comm.TrollGridCount) { // 背包格子上限
|
||||
code = pb.ErrorCode_TrollMaxItemCount
|
||||
return
|
||||
}
|
||||
code = this.module.ModuleUser.AddAttributeValue(session, comm.ResGold, int32(gold), true)
|
||||
if code != pb.ErrorCode_Success { // 金币不足
|
||||
code = pb.ErrorCode_GoldNoEnough
|
||||
return
|
||||
}
|
||||
|
||||
// 清除数量为0 的
|
||||
for k, v := range trolltrain.Items {
|
||||
if v == 0 {
|
||||
delete(trolltrain.Items, k)
|
||||
if _, ok := trolltrain.Price[k]; ok {
|
||||
delete(trolltrain.Price, k) // 清除价格
|
||||
}
|
||||
}
|
||||
}
|
||||
trolltrain.TotalEarn += -int64(earn) // 累计获得的金币
|
||||
// check npc level
|
||||
if confLv := this.configure.GetTrollLv(trolltrain.GetNpcLv() + 1); confLv != nil {
|
||||
if trolltrain.TotalEarn >= int64(confLv.Money) {
|
||||
trolltrain.NpcLv += 1 // npc levelUp
|
||||
update["npcLv"] = trolltrain.NpcLv
|
||||
}
|
||||
}
|
||||
update["items"] = trolltrain.Items
|
||||
update["price"] = trolltrain.Price
|
||||
update["totalEarn"] = trolltrain.TotalEarn
|
||||
|
||||
update["gridNum"] = trolltrain.GridNum
|
||||
update["shop"] = trolltrain.Shop
|
||||
this.module.ModifyTrollData(session.GetUserId(), update)
|
||||
|
||||
// this.module.ModuleRtask.SendToRtask(session, comm.Rtype153, 1)
|
||||
go this.module.ModuleRtask.TriggerTask(session.GetUserId(), comm.GettaskParam(comm.Rtype153, 1))
|
||||
return
|
||||
}
|
111
modules/caravan/api_getlist.go
Normal file
111
modules/caravan/api_getlist.go
Normal file
@ -0,0 +1,111 @@
|
||||
package caravan
|
||||
|
||||
import (
|
||||
"crypto/rand"
|
||||
"go_dreamfactory/comm"
|
||||
"go_dreamfactory/pb"
|
||||
"go_dreamfactory/sys/configure"
|
||||
"go_dreamfactory/utils"
|
||||
"math/big"
|
||||
)
|
||||
|
||||
//参数校验
|
||||
func (this *apiComp) GetListCheck(session comm.IUserSession, req *pb.TrollGetListReq) (code pb.ErrorCode) {
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
func (this *apiComp) GetList(session comm.IUserSession, req *pb.TrollGetListReq) (code pb.ErrorCode, data *pb.ErrorData) {
|
||||
var (
|
||||
update map[string]interface{}
|
||||
maxCoefficient int32
|
||||
)
|
||||
|
||||
update = make(map[string]interface{})
|
||||
if code = this.GetListCheck(session, req); code != pb.ErrorCode_Success {
|
||||
return // 参数校验失败直接返回
|
||||
}
|
||||
trolltrain, err := this.module.modelTroll.getTrollList(session.GetUserId())
|
||||
if err != nil {
|
||||
code = pb.ErrorCode_DBError
|
||||
return
|
||||
}
|
||||
// 自动交易
|
||||
this.module.TrollAI(session, trolltrain)
|
||||
|
||||
maxCoefficient = this.configure.GetTrollMaxCoefficientNux() // 增长幅度的最大值
|
||||
if maxCoefficient == 0 {
|
||||
code = pb.ErrorCode_ConfigNoFound
|
||||
return
|
||||
}
|
||||
// 跨天 则清除 每日交易次数
|
||||
if !utils.IsToday(trolltrain.ResetTime) {
|
||||
trolltrain.ResetTime = configure.Now().Unix()
|
||||
update["resetTime"] = trolltrain.ResetTime
|
||||
trolltrain.SellCount = 0
|
||||
update["sellCount"] = trolltrain.SellCount // 重置每日交易次数
|
||||
trolltrain.AiCount = 0
|
||||
update["aiCount"] = trolltrain.AiCount // 重置ai 交易次数
|
||||
this.module.ModifyTrollData(session.GetUserId(), update)
|
||||
}
|
||||
|
||||
/// 计算经过了多少个周期
|
||||
szTrain := this.configure.GetTrollAllTrain()
|
||||
var (
|
||||
circletime int32 // 循环一个周期的时间
|
||||
circleCount int32 // 循环的次数
|
||||
leftTime int32 // 离到达最后一站剩余的时间
|
||||
index int32 // 总共经过了多少次车站
|
||||
)
|
||||
for _, v := range szTrain {
|
||||
circletime += v
|
||||
}
|
||||
if int32(len(szTrain)) < trolltrain.TarinPos {
|
||||
this.module.Errorf("TarinPos error: TarinPos:%d,maxLen:%d", trolltrain.TarinPos, len(szTrain))
|
||||
code = pb.ErrorCode_ConfigNoFound
|
||||
return
|
||||
}
|
||||
if configure.Now().Unix()-trolltrain.RefreshTime < int64(szTrain[trolltrain.TarinPos-1]) {
|
||||
session.SendMsg(string(this.module.GetType()), TrollGetListResp, &pb.TrollGetListResp{Data: trolltrain})
|
||||
return
|
||||
}
|
||||
trainNum := this.configure.GetTrollMaxTraintNum()
|
||||
trolltrain.Shop = make(map[int32]int32) // 清空商人的购买数据
|
||||
update["shop"] = trolltrain.Shop
|
||||
t := int32(configure.Now().Unix() - trolltrain.Ctime)
|
||||
circleCount = t / circletime // 经过的周期数
|
||||
leftTime = t % circletime
|
||||
if trolltrain.Circle != circleCount {
|
||||
trolltrain.SurpriseID = make(map[int32]int32, 0)
|
||||
n, _ := rand.Int(rand.Reader, big.NewInt(int64(trainNum)))
|
||||
// 只算当前商人所属的货物
|
||||
g := this.configure.GetTrollGoodsFor(int32(n.Int64()) + 1)
|
||||
n2, _ := rand.Int(rand.Reader, big.NewInt(int64(len(g))))
|
||||
trolltrain.SurpriseID[int32(n.Int64())+1] = g[int32(n2.Int64())]
|
||||
update["surpriseID"] = trolltrain.SurpriseID
|
||||
trolltrain.Circle = circleCount
|
||||
update["circle"] = trolltrain.Circle
|
||||
}
|
||||
|
||||
index = circleCount * trainNum // 计算火车的位置信息
|
||||
for _, v := range szTrain {
|
||||
if leftTime <= v {
|
||||
trolltrain.RefreshTime = configure.Now().Unix() - int64(leftTime) //trolltrain.Ctime + int64(circleCount*circletime+leftTime)
|
||||
trolltrain.RangeId = (index % maxCoefficient) + 1
|
||||
trolltrain.TarinPos = (index % trainNum) + 1
|
||||
break
|
||||
}
|
||||
index += 1
|
||||
leftTime -= v
|
||||
}
|
||||
update["aiCount"] = trolltrain.AiCount
|
||||
update["refreshTime"] = trolltrain.RefreshTime
|
||||
update["tarinPos"] = trolltrain.TarinPos
|
||||
update["rangeId"] = trolltrain.RangeId
|
||||
update["shop"] = trolltrain.Shop
|
||||
update["items"] = trolltrain.Items
|
||||
update["price"] = trolltrain.Price
|
||||
this.module.ModifyTrollData(session.GetUserId(), update)
|
||||
session.SendMsg(string(this.module.GetType()), TrollGetListResp, &pb.TrollGetListResp{Data: trolltrain})
|
||||
return
|
||||
}
|
185
modules/caravan/comp_configure.go
Normal file
185
modules/caravan/comp_configure.go
Normal file
@ -0,0 +1,185 @@
|
||||
package caravan
|
||||
|
||||
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_trollgoods = "game_trollgoods.json"
|
||||
game_trollcoefficient = "game_trollcoefficient.json"
|
||||
game_trolltrain = "game_trolltrain.json"
|
||||
game_trollrule = "game_trollrule.json"
|
||||
game_trolllv = "game_trolllv.json"
|
||||
)
|
||||
|
||||
///配置管理基础组件
|
||||
type configureComp struct {
|
||||
hlock sync.RWMutex
|
||||
modules.MCompConfigure
|
||||
}
|
||||
|
||||
//组件初始化接口
|
||||
func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
|
||||
err = this.MCompConfigure.Init(service, module, comp, options)
|
||||
this.LoadConfigure(game_trollgoods, cfg.NewGameTrollGoods)
|
||||
this.LoadConfigure(game_trollcoefficient, cfg.NewGameTrollCoefficient)
|
||||
this.LoadConfigure(game_trolltrain, cfg.NewGameTrollTrain)
|
||||
this.LoadConfigure(game_trollrule, cfg.NewGameTrollRule)
|
||||
this.LoadConfigure(game_trolllv, cfg.NewGameTrollLv)
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
//加载多个配置文件
|
||||
func (this *configureComp) LoadMultiConfigure(confs map[string]interface{}) (err error) {
|
||||
for k, v := range confs {
|
||||
err = configure.RegisterConfigure(k, v, nil)
|
||||
if err != nil {
|
||||
log.Errorf("配置文件:%s解析失败!", k)
|
||||
break
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
//读取配置数据
|
||||
func (this *configureComp) GetConfigure(name string) (v interface{}, err error) {
|
||||
return configure.GetConfigure(name)
|
||||
}
|
||||
|
||||
// 获取列车货物信息
|
||||
func (this *configureComp) GetTrollGoods(itemId int32) (data *cfg.GameTrollGoodsData) {
|
||||
if v, err := this.GetConfigure(game_trollgoods); err == nil {
|
||||
if configure, ok := v.(*cfg.GameTrollGoods); ok {
|
||||
data = configure.Get(itemId)
|
||||
return
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get GameTrollGoodsData conf err:%v", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// 获取商人位置信息
|
||||
func (this *configureComp) GetTrollTrain(id int32) (data *cfg.GameTrollTrainData) {
|
||||
if v, err := this.GetConfigure(game_trolltrain); err == nil {
|
||||
if configure, ok := v.(*cfg.GameTrollTrain); ok {
|
||||
data = configure.Get(id)
|
||||
return
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get GameTrollTrainData conf err:%v", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// 获取基本规则
|
||||
func (this *configureComp) GetTrollRule(id int32) int32 {
|
||||
if v, err := this.GetConfigure(game_trollrule); err == nil {
|
||||
if configure, ok := v.(*cfg.GameTrollRule); ok {
|
||||
return configure.Get(id).Quantity
|
||||
}
|
||||
}
|
||||
log.Errorf("get GetTrollRule conf err:%d", id)
|
||||
|
||||
return 1
|
||||
}
|
||||
|
||||
func (this *configureComp) GetTrollCoefficient(id int32) (data *cfg.GameTrollCoefficientData) {
|
||||
if v, err := this.GetConfigure(game_trollcoefficient); err == nil {
|
||||
if configure, ok := v.(*cfg.GameTrollCoefficient); ok {
|
||||
data = configure.Get(id)
|
||||
return
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get GameTrollCoefficientData conf err:%v", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (this *configureComp) GetTrollLv(id int32) (data *cfg.GameTrollLvData) {
|
||||
if v, err := this.GetConfigure(game_trolllv); err == nil {
|
||||
if configure, ok := v.(*cfg.GameTrollLv); ok {
|
||||
data = configure.Get(id)
|
||||
return
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get GameTrollCoefficientData conf err:%v", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (this *configureComp) GetTrollAllTrain() (data []int32) {
|
||||
data = make([]int32, 0)
|
||||
if v, err := this.GetConfigure(game_trolltrain); err == nil {
|
||||
if configure, ok := v.(*cfg.GameTrollTrain); ok {
|
||||
for _, v := range configure.GetDataList() {
|
||||
time := v.Time
|
||||
data = append(data, time)
|
||||
}
|
||||
return
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get GameTrollTrainData conf err:%v", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (this *configureComp) GetTrollMaxCoefficientNux() int32 {
|
||||
if v, err := this.GetConfigure(game_trollcoefficient); err == nil {
|
||||
if configure, ok := v.(*cfg.GameTrollCoefficient); ok {
|
||||
|
||||
return int32(len(configure.GetDataList()))
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get GameTrollTrainData conf err:%v", err)
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
// 获取车站的数量
|
||||
func (this *configureComp) GetTrollMaxTraintNum() int32 {
|
||||
if v, err := this.GetConfigure(game_trolltrain); err == nil {
|
||||
if configure, ok := v.(*cfg.GameTrollTrain); ok {
|
||||
|
||||
return int32(len(configure.GetDataList()))
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get GameTrollTrainData conf err:%v", err)
|
||||
}
|
||||
return 1 // 至少有1个车站
|
||||
}
|
||||
|
||||
func (this *configureComp) GetTrollAllGoods() (data []*cfg.GameTrollGoodsData) {
|
||||
if v, err := this.GetConfigure(game_trollgoods); err == nil {
|
||||
if configure, ok := v.(*cfg.GameTrollGoods); ok {
|
||||
data = configure.GetDataList()
|
||||
return
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get GameTrollGoodsData conf err:%v", err)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// 返回商人货物信息
|
||||
func (this *configureComp) GetTrollGoodsFor(trainID int32) (data []int32) {
|
||||
if v, err := this.GetConfigure(game_trollgoods); err == nil {
|
||||
if configure, ok := v.(*cfg.GameTrollGoods); ok {
|
||||
for _, v := range configure.GetDataList() {
|
||||
if v.Goodsfor == trainID {
|
||||
data = append(data, v.Id)
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
} else {
|
||||
log.Errorf("get GameTrollGoodsData conf err:%v", err)
|
||||
}
|
||||
return
|
||||
}
|
65
modules/caravan/model_troll.go
Normal file
65
modules/caravan/model_troll.go
Normal file
@ -0,0 +1,65 @@
|
||||
package caravan
|
||||
|
||||
import (
|
||||
"go_dreamfactory/comm"
|
||||
"go_dreamfactory/lego/core"
|
||||
"go_dreamfactory/lego/sys/mgo"
|
||||
"go_dreamfactory/modules"
|
||||
"go_dreamfactory/pb"
|
||||
"go_dreamfactory/sys/configure"
|
||||
|
||||
"go.mongodb.org/mongo-driver/bson/primitive"
|
||||
"go.mongodb.org/mongo-driver/mongo"
|
||||
"go.mongodb.org/mongo-driver/x/bsonx"
|
||||
)
|
||||
|
||||
type modelCaravan struct {
|
||||
modules.MCompModel
|
||||
module *Caravan
|
||||
}
|
||||
|
||||
func (this *modelCaravan) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
|
||||
this.TableName = string(comm.TableTroll)
|
||||
err = this.MCompModel.Init(service, module, comp, options)
|
||||
this.module = module.(*Caravan)
|
||||
// uid 创建索引
|
||||
this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{
|
||||
Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}},
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
func (this *modelCaravan) getTrollList(uid string) (result *pb.DBTrollTrain, err error) {
|
||||
result = &pb.DBTrollTrain{
|
||||
Id: primitive.NewObjectID().Hex(),
|
||||
Uid: uid,
|
||||
Items: map[int32]int32{},
|
||||
Price: map[int32]int32{},
|
||||
GridNum: 0,
|
||||
TarinPos: 1,
|
||||
RangeId: 0,
|
||||
Buy: 0,
|
||||
Sell: 0,
|
||||
NpcLv: 0,
|
||||
NpcReward: map[int32]int32{},
|
||||
TotalEarn: 0,
|
||||
SellCount: 0,
|
||||
RefreshTime: configure.Now().Unix(),
|
||||
AiCount: 0,
|
||||
Shop: map[int32]int32{},
|
||||
Ctime: configure.Now().Unix(),
|
||||
Circle: 0,
|
||||
SurpriseID: map[int32]int32{},
|
||||
ResetTime: configure.Now().Unix(),
|
||||
}
|
||||
if err = this.Get(uid, result); err != nil && mgo.MongodbNil == err {
|
||||
// 创建一条数据
|
||||
err = this.Add(uid, result)
|
||||
return
|
||||
}
|
||||
err = nil
|
||||
return result, err
|
||||
}
|
||||
func (this *modelCaravan) modifyTrollDataByObjId(uid string, data map[string]interface{}) error {
|
||||
return this.Change(uid, data)
|
||||
}
|
270
modules/caravan/module.go
Normal file
270
modules/caravan/module.go
Normal file
@ -0,0 +1,270 @@
|
||||
package caravan
|
||||
|
||||
import (
|
||||
"go_dreamfactory/comm"
|
||||
"go_dreamfactory/lego/core"
|
||||
"go_dreamfactory/modules"
|
||||
"go_dreamfactory/pb"
|
||||
"go_dreamfactory/sys/configure"
|
||||
"math"
|
||||
)
|
||||
|
||||
type Caravan struct {
|
||||
modules.ModuleBase
|
||||
modelTroll *modelCaravan
|
||||
api *apiComp
|
||||
configure *configureComp
|
||||
}
|
||||
|
||||
func NewModule() core.IModule {
|
||||
return &Caravan{}
|
||||
}
|
||||
|
||||
func (this *Caravan) GetType() core.M_Modules {
|
||||
return comm.ModuleTroll
|
||||
}
|
||||
|
||||
func (this *Caravan) Init(service core.IService, module core.IModule, options core.IModuleOptions) (err error) {
|
||||
err = this.ModuleBase.Init(service, module, options)
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
func (this *Caravan) OnInstallComp() {
|
||||
this.ModuleBase.OnInstallComp()
|
||||
this.api = this.RegisterComp(new(apiComp)).(*apiComp)
|
||||
this.modelTroll = this.RegisterComp(new(modelCaravan)).(*modelCaravan)
|
||||
this.configure = this.RegisterComp(new(configureComp)).(*configureComp)
|
||||
}
|
||||
|
||||
// 接口信息
|
||||
func (this *Caravan) ModifyTrollData(uid string, data map[string]interface{}) (code pb.ErrorCode) {
|
||||
err := this.modelTroll.modifyTrollDataByObjId(uid, data)
|
||||
if err != nil {
|
||||
code = pb.ErrorCode_DBError
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (this *Caravan) TrollAI(session comm.IUserSession, troll *pb.DBTrollTrain) (code pb.ErrorCode) {
|
||||
var (
|
||||
sellPrice map[int32]int32 // 出售货物价格
|
||||
totalGold int32
|
||||
index int32
|
||||
update map[string]interface{}
|
||||
rangeId int32 // 增幅ID
|
||||
tarinPos int32 // 火车位置
|
||||
refreshTime int64 // 刷新时间
|
||||
)
|
||||
if troll.Buy == 0 && troll.Sell == 0 {
|
||||
return
|
||||
}
|
||||
update = make(map[string]interface{})
|
||||
sellPrice = make(map[int32]int32)
|
||||
now := configure.Now().Unix()
|
||||
trainNum := this.configure.GetTrollMaxTraintNum()
|
||||
maxCoefficient := this.configure.GetTrollMaxCoefficientNux() // 增长幅度的最大值
|
||||
if maxCoefficient == 0 {
|
||||
code = pb.ErrorCode_ConfigNoFound
|
||||
return
|
||||
}
|
||||
rangeId = troll.RangeId
|
||||
tarinPos = troll.TarinPos
|
||||
refreshTime = troll.RefreshTime
|
||||
|
||||
goods := this.configure.GetTrollAllGoods()
|
||||
for _, v := range goods {
|
||||
sellPrice[v.Id] = v.Goodsprice
|
||||
}
|
||||
sz := this.configure.GetTrollAllTrain()
|
||||
if len(sz) == 0 {
|
||||
this.Errorf("GetTrollAllTrain configure err") // 配置异常 打个日志
|
||||
return
|
||||
}
|
||||
iCount := this.configure.GetTrollRule(comm.TrollAIBuyCount)
|
||||
for index = 0; ; index++ {
|
||||
if index < tarinPos-1 { // 起始位置
|
||||
continue
|
||||
}
|
||||
index := int32(index) % trainNum
|
||||
refreshTime += int64(sz[index])
|
||||
|
||||
if now >= refreshTime {
|
||||
rangeId = (rangeId % maxCoefficient) + 1
|
||||
tarinPos = (tarinPos % trainNum) + 1
|
||||
|
||||
coefficient := this.configure.GetTrollCoefficient(rangeId) // 获取当前级别的涨幅数据
|
||||
if coefficient == nil {
|
||||
return
|
||||
}
|
||||
if troll.Sell <= coefficient.Coefficient { // 可以出售
|
||||
var preGold int32 // 成本价
|
||||
for _, v := range goods {
|
||||
sellPrice[v.Id] = v.Goodsprice * coefficient.Coefficient / 1000
|
||||
preGold += troll.Price[v.Id] * troll.Items[v.Id]
|
||||
}
|
||||
// 出售之前算成本
|
||||
if len(troll.Items) > 0 {
|
||||
sellGold := this.SellAllItem(session.GetUserId(), troll, sellPrice, tarinPos)
|
||||
if sellGold != 0 {
|
||||
if code = this.ModuleUser.AddAttributeValue(session, comm.ResGold, sellGold, true); code != pb.ErrorCode_Success {
|
||||
this.Errorf("玩家 uid:%s 金币不足,获得金币%d", session.GetUserId(), sellGold)
|
||||
} // 一次交易完成做一次结算
|
||||
}
|
||||
totalGold += sellGold
|
||||
// 计算本次出售赚的金币
|
||||
if sellGold-preGold > 0 {
|
||||
troll.TotalEarn += int64(sellGold - preGold)
|
||||
}
|
||||
|
||||
troll.AiCount++
|
||||
aiMaxCount := this.configure.GetTrollRule(comm.TrollAIBuyCount)
|
||||
if troll.AiCount+troll.SellCount > aiMaxCount { //达到最大交易次数
|
||||
break
|
||||
}
|
||||
}
|
||||
} else if troll.Buy >= coefficient.Coefficient { // 可以购买
|
||||
for _, v := range goods {
|
||||
sellPrice[v.Id] = v.Goodsprice * coefficient.Coefficient / 1000
|
||||
}
|
||||
troll.Shop = make(map[int32]int32) // 买之前清除购买上限
|
||||
buyGold := this.BuyAllItem(session.GetUserId(), troll, sellPrice, tarinPos)
|
||||
if buyGold != 0 {
|
||||
if code = this.ModuleUser.AddAttributeValue(session, comm.ResGold, buyGold, true); code != pb.ErrorCode_Success {
|
||||
this.Errorf("玩家 uid:%s 金币不足,获得金币%d", session.GetUserId(), buyGold)
|
||||
}
|
||||
}
|
||||
totalGold += buyGold
|
||||
}
|
||||
} else { // 超过当前时间
|
||||
refreshTime -= int64(sz[index])
|
||||
|
||||
break
|
||||
}
|
||||
if index > iCount*maxCoefficient { // ai挂机最大限制
|
||||
break
|
||||
}
|
||||
}
|
||||
update["shop"] = troll.Shop
|
||||
update["items"] = troll.Items
|
||||
update["price"] = troll.Price
|
||||
update["aiCount"] = troll.AiCount
|
||||
update["gridNum"] = troll.GridNum
|
||||
update["totalEarn"] = troll.TotalEarn
|
||||
if confLv := this.configure.GetTrollLv(troll.GetNpcLv() + 1); confLv != nil {
|
||||
if troll.TotalEarn >= int64(confLv.Money) {
|
||||
troll.NpcLv += 1 // npc levelUp
|
||||
update["npcLv"] = troll.NpcLv
|
||||
}
|
||||
}
|
||||
this.ModifyTrollData(session.GetUserId(), update)
|
||||
return
|
||||
}
|
||||
|
||||
// 出售所有货物
|
||||
func (this *Caravan) SellAllItem(uid string, troll *pb.DBTrollTrain, price map[int32]int32, tarinPos int32) (gold int32) {
|
||||
for k, v := range troll.Items {
|
||||
if _, ok := price[k]; ok {
|
||||
gold += price[k] * v
|
||||
}
|
||||
delete(troll.Items, k) // 清除数据
|
||||
}
|
||||
troll.Price = make(map[int32]int32, 0) // 原来的价格也清除
|
||||
troll.GridNum = 0 // 清空格子
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
// 可以购买商品
|
||||
func (this *Caravan) BuyAllItem(uid string, troll *pb.DBTrollTrain, price map[int32]int32, tarinPos int32) (gold int32) {
|
||||
var (
|
||||
box map[int32]int32 // 盒子 存放可购买的物品
|
||||
leftGirdNum int32 // 剩余可购买格子数量
|
||||
costGold int32
|
||||
buyBox map[int32]int32 // 盒子 存放可购买的物品
|
||||
)
|
||||
|
||||
maxGirdNum := this.configure.GetTrollRule(comm.TrollGridCount) // 获取背包最大格子数量
|
||||
maxgoods := this.configure.GetTrollRule(comm.TrollItemCount) // 获取单个物品最大上限 20个
|
||||
|
||||
leftGirdNum = maxGirdNum - troll.GridNum
|
||||
box = make(map[int32]int32, 0)
|
||||
buyBox = make(map[int32]int32, 0)
|
||||
goods := this.configure.GetTrollAllGoods()
|
||||
for _, v := range goods {
|
||||
for {
|
||||
if leftGirdNum > 0 && troll.Shop[v.Id] < v.Max {
|
||||
leftGirdNum--
|
||||
troll.Shop[v.Id] += maxgoods
|
||||
box[v.Id] += maxgoods // 加入篮子
|
||||
} else {
|
||||
break
|
||||
}
|
||||
}
|
||||
// 检查该位置的格子没有补满
|
||||
full := (troll.Items[v.Id] + box[v.Id]) % maxgoods
|
||||
if full != 0 {
|
||||
box[v.Id] += (maxgoods - full) // 格子补满
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// 通过金币来校验哪些物品可以买
|
||||
curGold := this.ModuleUser.QueryAttributeValue(uid, comm.ResGold)
|
||||
for k, v := range box {
|
||||
for i := 0; i < int(v); i++ { //0 1 2 3
|
||||
curGold -= int64(price[k])
|
||||
costGold -= price[k]
|
||||
if curGold < 0 {
|
||||
box[k] = int32(i)
|
||||
costGold += price[k] // 返还之前扣的
|
||||
break
|
||||
}
|
||||
buyBox[k]++
|
||||
}
|
||||
}
|
||||
if len(buyBox) == 0 {
|
||||
return // 没有可购买的直接返回
|
||||
}
|
||||
for _, v := range goods { // 计算购买后的平均价格
|
||||
g := troll.Items[v.Id] * troll.Price[v.Id]
|
||||
g += buyBox[v.Id] * price[v.Id]
|
||||
troll.Items[v.Id] += buyBox[v.Id]
|
||||
|
||||
if troll.Items[v.Id] != 0 {
|
||||
troll.Price[v.Id] = g / troll.Items[v.Id]
|
||||
}
|
||||
|
||||
}
|
||||
gold = costGold
|
||||
// 统计格子
|
||||
troll.GridNum = 0
|
||||
for _, v := range troll.Items {
|
||||
if v > 0 {
|
||||
troll.GridNum += int32(math.Ceil(float64(v) / float64(maxgoods)))
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
func (this *Caravan) QueryRankList() (ranks []string, gold []int64, err error) {
|
||||
var (
|
||||
result []string
|
||||
)
|
||||
tableName := "trollRank"
|
||||
|
||||
if result, err = this.modelTroll.Redis.ZRevRange(tableName, 0, comm.MaxRankList).Result(); err != nil {
|
||||
this.Errorln(err)
|
||||
return
|
||||
}
|
||||
|
||||
ranks = make([]string, 0)
|
||||
for i := 0; i < len(result); i++ {
|
||||
if _d, err := this.modelTroll.Redis.ZScore(tableName, result[i]); err == nil {
|
||||
gold = append(gold, int64(_d))
|
||||
ranks = append(ranks, result[i])
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
@ -21,7 +21,7 @@ func NewGameBuzkashiMount(_buf []map[string]interface{}) (*GameBuzkashiMount, er
|
||||
return nil, err2
|
||||
} else {
|
||||
_dataList = append(_dataList, _v)
|
||||
dataMap[_v.Num] = _v
|
||||
dataMap[_v.Id] = _v
|
||||
}
|
||||
}
|
||||
return &GameBuzkashiMount{_dataList:_dataList, _dataMap:dataMap}, nil
|
||||
|
@ -11,12 +11,17 @@ package cfg
|
||||
import "errors"
|
||||
|
||||
type GameBuzkashiMountData struct {
|
||||
Num string
|
||||
Id string
|
||||
Name string
|
||||
Intr string
|
||||
Color int32
|
||||
Img string
|
||||
Access []int32
|
||||
Model string
|
||||
Point string
|
||||
Stime int32
|
||||
Etime int32
|
||||
Hp int32
|
||||
Model string
|
||||
Point string
|
||||
Moderate int32
|
||||
Sprint int32
|
||||
Acceleration int32
|
||||
@ -30,12 +35,30 @@ func (*GameBuzkashiMountData) GetTypeId() int32 {
|
||||
}
|
||||
|
||||
func (_v *GameBuzkashiMountData)Deserialize(_buf map[string]interface{}) (err error) {
|
||||
{ var _ok_ bool; if _v.Num, _ok_ = _buf["num"].(string); !_ok_ { err = errors.New("num error"); return } }
|
||||
{ var _ok_ bool; if _v.Id, _ok_ = _buf["id"].(string); !_ok_ { err = errors.New("id 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; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["intr"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Intr error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Intr, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text 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_) }
|
||||
{ var _ok_ bool; if _v.Img, _ok_ = _buf["Img"].(string); !_ok_ { err = errors.New("Img error"); return } }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["access"].([]interface{}); !_ok_ { err = errors.New("access error"); return }
|
||||
|
||||
_v.Access = 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.Access = append(_v.Access, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
{ var _ok_ bool; if _v.Model, _ok_ = _buf["model"].(string); !_ok_ { err = errors.New("model error"); return } }
|
||||
{ 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["stime"].(float64); !_ok_ { err = errors.New("stime error"); return }; _v.Stime = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["etime"].(float64); !_ok_ { err = errors.New("etime error"); return }; _v.Etime = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["hp"].(float64); !_ok_ { err = errors.New("hp error"); return }; _v.Hp = int32(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.Model, _ok_ = _buf["model"].(string); !_ok_ { err = errors.New("model error"); return } }
|
||||
{ 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["moderate"].(float64); !_ok_ { err = errors.New("moderate error"); return }; _v.Moderate = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["sprint"].(float64); !_ok_ { err = errors.New("sprint error"); return }; _v.Sprint = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["acceleration"].(float64); !_ok_ { err = errors.New("acceleration error"); return }; _v.Acceleration = int32(_tempNum_) }
|
||||
|
@ -13,6 +13,7 @@ import "errors"
|
||||
type GameDispatch_BattleData struct {
|
||||
Id int32
|
||||
Model string
|
||||
IdleAni string
|
||||
Weight int32
|
||||
Startstory int32
|
||||
Rejectstory int32
|
||||
@ -37,6 +38,7 @@ func (*GameDispatch_BattleData) GetTypeId() int32 {
|
||||
func (_v *GameDispatch_BattleData)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.Model, _ok_ = _buf["model"].(string); !_ok_ { err = errors.New("model error"); return } }
|
||||
{ var _ok_ bool; if _v.IdleAni, _ok_ = _buf["idleAni"].(string); !_ok_ { err = errors.New("idleAni error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["weight"].(float64); !_ok_ { err = errors.New("weight error"); return }; _v.Weight = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["startstory"].(float64); !_ok_ { err = errors.New("startstory error"); return }; _v.Startstory = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["rejectstory"].(float64); !_ok_ { err = errors.New("rejectstory error"); return }; _v.Rejectstory = int32(_tempNum_) }
|
||||
|
@ -13,6 +13,9 @@ import "errors"
|
||||
type GameNewSmithyData struct {
|
||||
Id int32
|
||||
Type int32
|
||||
Type2Png string
|
||||
Type2Star int32
|
||||
Type3Name string
|
||||
DrawingName string
|
||||
QualityText string
|
||||
DrawingPng string
|
||||
@ -36,6 +39,9 @@ func (*GameNewSmithyData) GetTypeId() int32 {
|
||||
func (_v *GameNewSmithyData)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; if _v.Type2Png, _ok_ = _buf["type2_png"].(string); !_ok_ { err = errors.New("type2_png error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["type2_star"].(float64); !_ok_ { err = errors.New("type2_star error"); return }; _v.Type2Star = int32(_tempNum_) }
|
||||
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["type3_name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Type3Name error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Type3Name, _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["drawing_name"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.DrawingName error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.DrawingName, _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["quality_text"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.QualityText error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.QualityText, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||
{ var _ok_ bool; if _v.DrawingPng, _ok_ = _buf["drawing_png"].(string); !_ok_ { err = errors.New("drawing_png error"); return } }
|
||||
|
@ -16,7 +16,9 @@ type GamePandamasMrylData struct {
|
||||
Icon string
|
||||
Des string
|
||||
Ticks int32
|
||||
Time int32
|
||||
Ani string
|
||||
Energy string
|
||||
P int32
|
||||
BeforeTraining int32
|
||||
AfterTraining int32
|
||||
@ -35,7 +37,9 @@ func (_v *GamePandamasMrylData)Deserialize(_buf map[string]interface{}) (err err
|
||||
{ var _ok_ bool; if _v.Icon, _ok_ = _buf["icon"].(string); !_ok_ { err = errors.New("icon error"); return } }
|
||||
{var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["des"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.Des error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.Des, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["ticks"].(float64); !_ok_ { err = errors.New("ticks error"); return }; _v.Ticks = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["time"].(float64); !_ok_ { err = errors.New("time error"); return }; _v.Time = int32(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.Ani, _ok_ = _buf["ani"].(string); !_ok_ { err = errors.New("ani error"); return } }
|
||||
{ var _ok_ bool; if _v.Energy, _ok_ = _buf["energy"].(string); !_ok_ { err = errors.New("energy error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["p"].(float64); !_ok_ { err = errors.New("p error"); return }; _v.P = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["before_training"].(float64); !_ok_ { err = errors.New("before_training error"); return }; _v.BeforeTraining = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["after_training"].(float64); !_ok_ { err = errors.New("after_training error"); return }; _v.AfterTraining = int32(_tempNum_) }
|
||||
|
@ -224,6 +224,7 @@ type GameGlobalData struct {
|
||||
BuzkashiResurrection int32
|
||||
FavorabilityAttenuation []*Gamekv
|
||||
Mounts string
|
||||
BuzkashiRecentPlayer int32
|
||||
}
|
||||
|
||||
const TypeId_GameGlobalData = 477542761
|
||||
@ -927,6 +928,7 @@ func (_v *GameGlobalData)Deserialize(_buf map[string]interface{}) (err error) {
|
||||
}
|
||||
|
||||
{ var _ok_ bool; if _v.Mounts, _ok_ = _buf["mounts"].(string); !_ok_ { err = errors.New("mounts error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["buzkashi_recentPlayer"].(float64); !_ok_ { err = errors.New("buzkashi_recentPlayer error"); return }; _v.BuzkashiRecentPlayer = int32(_tempNum_) }
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -21,6 +21,7 @@ type GameItemData struct {
|
||||
Time int32
|
||||
Reddottype int32
|
||||
Effects string
|
||||
ModelName string
|
||||
BoxId int32
|
||||
SynthetizeNum int32
|
||||
Access []int32
|
||||
@ -50,6 +51,7 @@ func (_v *GameItemData)Deserialize(_buf map[string]interface{}) (err error) {
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["time"].(float64); !_ok_ { err = errors.New("time error"); return }; _v.Time = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["reddottype"].(float64); !_ok_ { err = errors.New("reddottype error"); return }; _v.Reddottype = int32(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.Effects, _ok_ = _buf["effects"].(string); !_ok_ { err = errors.New("effects error"); return } }
|
||||
{ var _ok_ bool; if _v.ModelName, _ok_ = _buf["modelName"].(string); !_ok_ { err = errors.New("modelName error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["box_id"].(float64); !_ok_ { err = errors.New("box_id error"); return }; _v.BoxId = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["synthetize_num"].(float64); !_ok_ { err = errors.New("synthetize_num error"); return }; _v.SynthetizeNum = int32(_tempNum_) }
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user