浏览代码

Merge branch 'master' of http://192.168.123.2:3000/ck/XiuXianGame

DESKTOP-FB72PO8\Administrator 4 天之前
父节点
当前提交
0d6c7dc300

+ 54 - 52
Assets/Res/Config/EventConfig.json

@@ -1394,6 +1394,7 @@
         1000019,
         1000020,
         1000021,
+        1000022,
         102
       ],
       "EventTriggerType": 99,
@@ -1714,6 +1715,7 @@
         1001004,
         1001005,
         1001006,
+        1001007,
         102
       ],
       "EventTriggerType": 4,
@@ -4606,7 +4608,7 @@
       "SmallPlacesId": 1,
       "XiantuID": 0,
       "EventName": 4244,
-      "Description": 0
+      "Description": 4326
     },
     {
       "ID": 9112,
@@ -4643,7 +4645,7 @@
         9111
       ],
       "EventName": 4245,
-      "Description": 0
+      "Description": 4327
     },
     {
       "ID": 9113,
@@ -4678,7 +4680,7 @@
         9112
       ],
       "EventName": 4246,
-      "Description": 0
+      "Description": 4328
     },
     {
       "ID": 9114,
@@ -4716,7 +4718,7 @@
         9113
       ],
       "EventName": 4247,
-      "Description": 0
+      "Description": 4329
     },
     {
       "ID": 9115,
@@ -4742,7 +4744,7 @@
         9114
       ],
       "EventName": 4248,
-      "Description": 0
+      "Description": 4330
     },
     {
       "ID": 9116,
@@ -4795,7 +4797,7 @@
         3
       ],
       "EventName": 4249,
-      "Description": 0
+      "Description": 4331
     },
     {
       "ID": 9117,
@@ -4824,7 +4826,7 @@
       "SmallPlacesId": 2,
       "XiantuID": 0,
       "EventName": 4250,
-      "Description": 0
+      "Description": 4332
     },
     {
       "ID": 9118,
@@ -4862,7 +4864,7 @@
         9117
       ],
       "EventName": 4251,
-      "Description": 0
+      "Description": 4333
     },
     {
       "ID": 9119,
@@ -4899,7 +4901,7 @@
         9118
       ],
       "EventName": 4252,
-      "Description": 0
+      "Description": 4334
     },
     {
       "ID": 9120,
@@ -4937,7 +4939,7 @@
         9119
       ],
       "EventName": 4253,
-      "Description": 0
+      "Description": 4335
     },
     {
       "ID": 9121,
@@ -4967,7 +4969,7 @@
         9120
       ],
       "EventName": 4254,
-      "Description": 0
+      "Description": 4336
     },
     {
       "ID": 9122,
@@ -5012,7 +5014,7 @@
         9121
       ],
       "EventName": 4255,
-      "Description": 0
+      "Description": 4337
     },
     {
       "ID": 9123,
@@ -5059,7 +5061,7 @@
       "SmallPlacesId": 4,
       "XiantuID": 0,
       "EventName": 4256,
-      "Description": 0
+      "Description": 4338
     },
     {
       "ID": 9124,
@@ -5092,7 +5094,7 @@
         9123
       ],
       "EventName": 4257,
-      "Description": 0
+      "Description": 4339
     },
     {
       "ID": 9125,
@@ -5125,7 +5127,7 @@
         9124
       ],
       "EventName": 4258,
-      "Description": 0
+      "Description": 4340
     },
     {
       "ID": 9126,
@@ -5159,7 +5161,7 @@
         9125
       ],
       "EventName": 4259,
-      "Description": 0
+      "Description": 4341
     },
     {
       "ID": 9127,
@@ -5186,7 +5188,7 @@
       "SmallPlacesId": 5,
       "XiantuID": 0,
       "EventName": 4260,
-      "Description": 0
+      "Description": 4342
     },
     {
       "ID": 9128,
@@ -5223,7 +5225,7 @@
         9127
       ],
       "EventName": 4261,
-      "Description": 0
+      "Description": 4343
     },
     {
       "ID": 9129,
@@ -5262,7 +5264,7 @@
         9128
       ],
       "EventName": 4262,
-      "Description": 0
+      "Description": 4344
     },
     {
       "ID": 9130,
@@ -5293,7 +5295,7 @@
       "SmallPlacesId": 5,
       "XiantuID": 0,
       "EventName": 4263,
-      "Description": 0
+      "Description": 4345
     },
     {
       "ID": 9131,
@@ -5321,7 +5323,7 @@
         9130
       ],
       "EventName": 4264,
-      "Description": 0
+      "Description": 4346
     },
     {
       "ID": 9132,
@@ -5364,7 +5366,7 @@
         9131
       ],
       "EventName": 4265,
-      "Description": 0
+      "Description": 4347
     },
     {
       "ID": 9133,
@@ -5391,7 +5393,7 @@
       "SmallPlacesId": 6,
       "XiantuID": 0,
       "EventName": 4266,
-      "Description": 0
+      "Description": 4348
     },
     {
       "ID": 9134,
@@ -5438,7 +5440,7 @@
         9133
       ],
       "EventName": 4267,
-      "Description": 0
+      "Description": 4349
     },
     {
       "ID": 9135,
@@ -5466,7 +5468,7 @@
         9134
       ],
       "EventName": 4268,
-      "Description": 0
+      "Description": 4350
     },
     {
       "ID": 9136,
@@ -5501,7 +5503,7 @@
         9135
       ],
       "EventName": 4269,
-      "Description": 0
+      "Description": 4351
     },
     {
       "ID": 9137,
@@ -5532,7 +5534,7 @@
         9136
       ],
       "EventName": 4270,
-      "Description": 0
+      "Description": 4352
     },
     {
       "ID": 9138,
@@ -5571,7 +5573,7 @@
         9140
       ],
       "EventName": 4271,
-      "Description": 0
+      "Description": 4353
     },
     {
       "ID": 9139,
@@ -5598,7 +5600,7 @@
       "SmallPlacesId": 7,
       "XiantuID": 0,
       "EventName": 4272,
-      "Description": 0
+      "Description": 4354
     },
     {
       "ID": 9140,
@@ -5631,7 +5633,7 @@
         9139
       ],
       "EventName": 4273,
-      "Description": 0
+      "Description": 4355
     },
     {
       "ID": 9141,
@@ -5657,7 +5659,7 @@
       "SmallPlacesId": 8,
       "XiantuID": 0,
       "EventName": 4274,
-      "Description": 0
+      "Description": 4356
     },
     {
       "ID": 9142,
@@ -5693,7 +5695,7 @@
         30023
       ],
       "EventName": 4277,
-      "Description": 0
+      "Description": 4357
     },
     {
       "ID": 9143,
@@ -5723,7 +5725,7 @@
       "SmallPlacesId": 9,
       "XiantuID": 0,
       "EventName": 4278,
-      "Description": 0
+      "Description": 4358
     },
     {
       "ID": 9144,
@@ -5757,7 +5759,7 @@
         30024
       ],
       "EventName": 4279,
-      "Description": 0
+      "Description": 4359
     },
     {
       "ID": 9145,
@@ -5794,7 +5796,7 @@
         9144
       ],
       "EventName": 4280,
-      "Description": 0
+      "Description": 4360
     },
     {
       "ID": 9146,
@@ -5835,7 +5837,7 @@
         9145
       ],
       "EventName": 4281,
-      "Description": 0
+      "Description": 4361
     },
     {
       "ID": 9147,
@@ -5863,7 +5865,7 @@
         9111
       ],
       "EventName": 4282,
-      "Description": 0
+      "Description": 4362
     },
     {
       "ID": 9148,
@@ -5893,7 +5895,7 @@
         20
       ],
       "EventName": 4283,
-      "Description": 0
+      "Description": 4363
     },
     {
       "ID": 9149,
@@ -5924,7 +5926,7 @@
         40
       ],
       "EventName": 4284,
-      "Description": 0
+      "Description": 4364
     },
     {
       "ID": 9150,
@@ -5953,7 +5955,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4285,
-      "Description": 0
+      "Description": 4365
     },
     {
       "ID": 9151,
@@ -5985,7 +5987,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4286,
-      "Description": 0
+      "Description": 4366
     },
     {
       "ID": 9152,
@@ -6017,7 +6019,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4287,
-      "Description": 0
+      "Description": 4367
     },
     {
       "ID": 9153,
@@ -6051,7 +6053,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4288,
-      "Description": 0
+      "Description": 4368
     },
     {
       "ID": 9154,
@@ -6082,7 +6084,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4289,
-      "Description": 0
+      "Description": 4369
     },
     {
       "ID": 9155,
@@ -6111,7 +6113,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4290,
-      "Description": 0
+      "Description": 4370
     },
     {
       "ID": 9156,
@@ -6142,7 +6144,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4291,
-      "Description": 0
+      "Description": 4371
     },
     {
       "ID": 9157,
@@ -6170,7 +6172,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4292,
-      "Description": 0
+      "Description": 4372
     },
     {
       "ID": 9158,
@@ -6198,7 +6200,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4293,
-      "Description": 0
+      "Description": 4373
     },
     {
       "ID": 9159,
@@ -6226,7 +6228,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4294,
-      "Description": 0
+      "Description": 4374
     },
     {
       "ID": 9160,
@@ -6255,7 +6257,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4295,
-      "Description": 0
+      "Description": 4375
     },
     {
       "ID": 9161,
@@ -6284,7 +6286,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4296,
-      "Description": 0
+      "Description": 4376
     },
     {
       "ID": 9162,
@@ -6313,7 +6315,7 @@
       "SmallPlacesId": 0,
       "XiantuID": 0,
       "EventName": 4297,
-      "Description": 0
+      "Description": 4377
     }
   ]
 }

+ 55 - 13
Assets/Res/Config/EventLinkConfig.json

@@ -1673,11 +1673,17 @@
       "PreShowPar": 0,
       "NPCID": 137,
       "LanID": [
-        5147
+        5145
       ],
       "DialogueType": 0,
       "EventID": 10000,
-      "optionType": 0,
+      "optionType": 1,
+      "optionPara1": [
+        1000019
+      ],
+      "optionPara2": [
+        5146
+      ],
       "ResultType": 1,
       "ResultOptions": [
         1000019
@@ -1689,9 +1695,9 @@
       "EventConditionMessage": 0,
       "PreShow": 0,
       "PreShowPar": 0,
-      "NPCID": 157,
+      "NPCID": 137,
       "LanID": [
-        5148
+        5147
       ],
       "DialogueType": 0,
       "EventID": 10000,
@@ -1707,9 +1713,9 @@
       "EventConditionMessage": 0,
       "PreShow": 0,
       "PreShowPar": 0,
-      "NPCID": 161,
+      "NPCID": 157,
       "LanID": [
-        5149
+        5148
       ],
       "DialogueType": 0,
       "EventID": 10000,
@@ -1725,6 +1731,24 @@
       "EventConditionMessage": 0,
       "PreShow": 0,
       "PreShowPar": 0,
+      "NPCID": 161,
+      "LanID": [
+        5149
+      ],
+      "DialogueType": 0,
+      "EventID": 10000,
+      "optionType": 0,
+      "ResultType": 1,
+      "ResultOptions": [
+        1000022
+      ]
+    },
+    {
+      "ID": 1000022,
+      "conciseEventMessage": 0,
+      "EventConditionMessage": 0,
+      "PreShow": 0,
+      "PreShowPar": 0,
       "NPCID": 0,
       "LanID": [
         5150
@@ -3080,6 +3104,24 @@
         101
       ]
     },
+    {
+      "ID": 1001007,
+      "conciseEventMessage": 5247,
+      "EventConditionMessage": 0,
+      "PreShow": 0,
+      "PreShowPar": 0,
+      "NPCID": 0,
+      "LanID": [
+        5249
+      ],
+      "DialogueType": 0,
+      "EventID": 10010,
+      "optionType": 0,
+      "ResultType": 3,
+      "ResultOptions": [
+        10011
+      ]
+    },
     {
       "ID": 1001101,
       "conciseEventMessage": 5249,
@@ -22237,7 +22279,7 @@
       "EventConditionMessage": 0,
       "PreShow": 0,
       "PreShowPar": 0,
-      "NPCID": 0,
+      "NPCID": 151,
       "LanID": [
         6644
       ],
@@ -22265,7 +22307,7 @@
       "EventConditionMessage": 0,
       "PreShow": 0,
       "PreShowPar": 0,
-      "NPCID": 0,
+      "NPCID": 151,
       "LanID": [
         6648
       ],
@@ -22280,7 +22322,7 @@
       "EventConditionMessage": 0,
       "PreShow": 0,
       "PreShowPar": 0,
-      "NPCID": 0,
+      "NPCID": 151,
       "LanID": [
         6649
       ],
@@ -22295,7 +22337,7 @@
       "EventConditionMessage": 0,
       "PreShow": 0,
       "PreShowPar": 0,
-      "NPCID": 0,
+      "NPCID": 151,
       "LanID": [
         6650
       ],
@@ -22310,7 +22352,7 @@
       "EventConditionMessage": 0,
       "PreShow": 0,
       "PreShowPar": 0,
-      "NPCID": 0,
+      "NPCID": 152,
       "LanID": [
         6652
       ],
@@ -22338,7 +22380,7 @@
       "EventConditionMessage": 0,
       "PreShow": 0,
       "PreShowPar": 0,
-      "NPCID": 0,
+      "NPCID": 152,
       "LanID": [
         6656
       ],
@@ -22353,7 +22395,7 @@
       "EventConditionMessage": 0,
       "PreShow": 0,
       "PreShowPar": 0,
-      "NPCID": 0,
+      "NPCID": 152,
       "LanID": [
         6657
       ],

+ 2 - 2
Assets/Res/Config/HeroModelConfig.json

@@ -355,9 +355,9 @@
       "isUseGpu": false,
       "heroType": 2,
       "attack": 80,
-      "hp": 500,
+      "hp": 200,
       "def": 100,
-      "shield": 500,
+      "shield": 200,
       "speed_atk": 0.0,
       "Linggen": [
         100,

+ 129 - 129
Assets/Res/Config/LanguageChineseConfig.json

@@ -13314,15 +13314,15 @@
     },
     {
       "ID": 4069,
-      "txt": "风影为二"
+      "txt": ""
     },
     {
       "ID": 4070,
-      "txt": "风影合一"
+      "txt": ""
     },
     {
       "ID": 4071,
-      "txt": "北海剑妖"
+      "txt": ""
     },
     {
       "ID": 4072,
@@ -13342,111 +13342,111 @@
     },
     {
       "ID": 4076,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4077,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4078,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4079,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4080,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4081,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4082,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4083,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4084,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4085,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4086,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4087,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4088,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4089,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4090,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4091,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4092,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4093,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4094,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4095,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4096,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4097,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4098,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4099,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4100,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4101,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4102,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4103,
@@ -13494,7 +13494,7 @@
     },
     {
       "ID": 4114,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4115,
@@ -13558,11 +13558,11 @@
     },
     {
       "ID": 4130,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4131,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4132,
@@ -13614,15 +13614,15 @@
     },
     {
       "ID": 4144,
-      "txt": "风影为二详情占位"
+      "txt": ""
     },
     {
       "ID": 4145,
-      "txt": "风影合一详情占位"
+      "txt": ""
     },
     {
       "ID": 4146,
-      "txt": "百年化妖为红颜,一剑焚海断孽缘"
+      "txt": ""
     },
     {
       "ID": 4147,
@@ -13646,7 +13646,7 @@
     },
     {
       "ID": 4152,
-      "txt": "雀灵儿1"
+      "txt": "调皮的麻雀精灵儿缠着你去树顶赛跑,却被护短的姐姐云枝强行制止。"
     },
     {
       "ID": 4153,
@@ -13654,7 +13654,7 @@
     },
     {
       "ID": 4154,
-      "txt": "雀灵儿2"
+      "txt": "灵儿让你找回风铃,听到铃声就不再害怕北海的寂寞。"
     },
     {
       "ID": 4155,
@@ -13662,7 +13662,7 @@
     },
     {
       "ID": 4156,
-      "txt": "雀灵儿3"
+      "txt": "灵儿拉着你击退风妖,月光下的树林从战场变回她最珍视的乐园。"
     },
     {
       "ID": 4157,
@@ -13670,7 +13670,7 @@
     },
     {
       "ID": 4158,
-      "txt": "雀灵儿4"
+      "txt": "灵儿在你的陪伴下初尝飞翔远方,从此向往更远的天空。"
     },
     {
       "ID": 4159,
@@ -13678,7 +13678,7 @@
     },
     {
       "ID": 4160,
-      "txt": "雀灵儿5"
+      "txt": "你从风妖口中救下灵儿,破碎的飞翔梦在她紧握的手中愈合。"
     },
     {
       "ID": 4161,
@@ -13686,7 +13686,7 @@
     },
     {
       "ID": 4162,
-      "txt": "雀灵儿6"
+      "txt": "灵儿褪去怯懦,主动牵起你的手奔向比天池更远的未来"
     },
     {
       "ID": 4163,
@@ -13722,27 +13722,27 @@
     },
     {
       "ID": 4171,
-      "txt": "云枝1"
+      "txt": "云枝以风妖为考题,冰冷试探你保护灵儿的资格。"
     },
     {
       "ID": 4172,
-      "txt": "云枝2"
+      "txt": "云枝借风妖试探玩家实力,冰冷态度随妖兽溃败而稍缓。"
     },
     {
       "ID": 4173,
-      "txt": "云枝3"
+      "txt": "云枝抚琴护草,你剑斩风妖,冷傲守护者首次交付信任。"
     },
     {
       "ID": 4174,
-      "txt": "云枝4"
+      "txt": "云枝泪诉父母殒于风暴的往事,袒露束缚灵儿的真相。"
     },
     {
       "ID": 4175,
-      "txt": "云枝5"
+      "txt": "妖兽群袭中,云枝重伤仍护妹,你的剑光成为姐妹新的守护结界。"
     },
     {
       "ID": 4176,
-      "txt": "云枝6"
+      "txt": "云枝褪尽冷傲,与你携手飞向象征自由的云海尽头。"
     },
     {
       "ID": 4177,
@@ -13778,27 +13778,27 @@
     },
     {
       "ID": 4185,
-      "txt": "风瑶1"
+      "txt": "在浮岛邂逅风瑶,接过她收集风灵碎片的委托。"
     },
     {
       "ID": 4186,
-      "txt": "风瑶2"
+      "txt": "你集齐碎片,风瑶透露云隐宗长老勾结外域的魔气线索。"
     },
     {
       "ID": 4187,
-      "txt": "风瑶3"
+      "txt": "收集云隐宗异常线索,风瑶确认长老勾结魔修的猜测。"
     },
     {
       "ID": 4188,
-      "txt": "风瑶4"
+      "txt": "妖兽体内灵石惊现禁地阵纹,宗门黑幕终现端倪。"
     },
     {
       "ID": 4189,
-      "txt": "风瑶5"
+      "txt": "截获风信证实长老禁术,风瑶急寻疯道人相助。"
     },
     {
       "ID": 4190,
-      "txt": "风瑶6"
+      "txt": "疯道人坦露早知宗门黑幕,兄妹对峙揭示正道抉择。"
     },
     {
       "ID": 4191,
@@ -13806,7 +13806,7 @@
     },
     {
       "ID": 4192,
-      "txt": "0"
+      "txt": ""
     },
     {
       "ID": 4193,
@@ -13866,27 +13866,27 @@
     },
     {
       "ID": 4207,
-      "txt": "婉溪1"
+      "txt": "隐士婉溪邀你共护灵田,茶香中暗藏七道心境线索。"
     },
     {
       "ID": 4208,
-      "txt": "婉溪2"
+      "txt": "灵田水影映照道心蜕变,婉溪以茶道为引助玩家悟境。"
     },
     {
       "ID": 4209,
-      "txt": "婉溪3"
+      "txt": "你讲述外界故事,婉溪茶雾中的眼眸初现波澜。"
     },
     {
       "ID": 4210,
-      "txt": "婉溪4"
+      "txt": "玩家寻来尧都玉佩稳茶树灵气,婉溪展露隐世家族的秘辛。"
     },
     {
       "ID": 4211,
-      "txt": "婉溪5"
+      "txt": "玩家清除溪水灵影,发现暗藏外来修士的窥探痕迹。"
     },
     {
       "ID": 4212,
-      "txt": "婉溪6"
+      "txt": "许由婉溪对峙家族秘密,旧敌阴影随溪流暗涌。"
     },
     {
       "ID": 4213,
@@ -13922,27 +13922,27 @@
     },
     {
       "ID": 4221,
-      "txt": "许由1"
+      "txt": "拜访许由,受托采药延续修行机缘。"
     },
     {
       "ID": 4222,
-      "txt": "许由2"
+      "txt": "许由借采药时辰喻修道机缘,点化玩家顺时而行。"
     },
     {
       "ID": 4223,
-      "txt": "许由3"
+      "txt": "许由控火时流露道心困惑,避世与执着之辩随丹烟升起。"
     },
     {
       "ID": 4224,
-      "txt": "许由4"
+      "txt": "许由借秘境种子引发大小之辩,你应答展露修道悟性。"
     },
     {
       "ID": 4225,
-      "txt": "许由5"
+      "txt": "许由借茶论道,以三则典故诘问修道本质。"
     },
     {
       "ID": 4226,
-      "txt": "许由6"
+      "txt": "许以茶烟送别,将修行感悟系于你未来旅途。"
     },
     {
       "ID": 4227,
@@ -13986,23 +13986,23 @@
     },
     {
       "ID": 4237,
-      "txt": "疯道人1"
+      "txt": "疯道人笑揽清风,讨甜果润喉"
     },
     {
       "ID": 4238,
-      "txt": "疯道人2"
+      "txt": "为疯仙寻得灵果,巧避守护兽归来"
     },
     {
       "ID": 4239,
-      "txt": "疯道人3"
+      "txt": "疯道人需灵果驱妖,你冒险采集相助"
     },
     {
       "ID": 4240,
-      "txt": "疯道人4"
+      "txt": "疯道人灵石耗尽,你慷慨相助"
     },
     {
       "ID": 4241,
-      "txt": "疯道人5"
+      "txt": "疯道人把借的灵石全赌输了,你气得直接动手"
     },
     {
       "ID": 4242,
@@ -14150,7 +14150,7 @@
     },
     {
       "ID": 4278,
-      "txt": "遇馨儿"
+      "txt": "遇馨儿"
     },
     {
       "ID": 4279,
@@ -14342,211 +14342,211 @@
     },
     {
       "ID": 4326,
-      "txt": ""
+      "txt": "渔民遇海怪求助,你收下线索准备行动"
     },
     {
       "ID": 4327,
-      "txt": ""
+      "txt": "傀儡真相终揭晓,神秘龙鳞引争夺"
     },
     {
       "ID": 4328,
-      "txt": ""
+      "txt": "水怪虽除,老李攥着儿子的平安符沉默不语"
     },
     {
       "ID": 4329,
-      "txt": ""
+      "txt": "灵姬托你取三颗幽魂石,镇压古战场暴动怨魂。"
     },
     {
       "ID": 4330,
-      "txt": ""
+      "txt": "击败幽魂石守护兽"
     },
     {
       "ID": 4331,
-      "txt": ""
+      "txt": "灵姬借幽魂石镇压仙宗怨魂,赠龙鳞指引圣地之谜。"
     },
     {
       "ID": 4332,
-      "txt": ""
+      "txt": "馨儿强拉你去寻密信,雾林中铃铛与威胁齐飞。"
     },
     {
       "ID": 4333,
-      "txt": ""
+      "txt": "雾妖伏诛,密信危机现转机。"
     },
     {
       "ID": 4334,
-      "txt": ""
+      "txt": "你亲自护法助馨儿破阵,云隐密信危机终解。"
     },
     {
       "ID": 4335,
-      "txt": ""
+      "txt": "助馨儿智擒偷盗灵草的风灵鸟。"
     },
     {
       "ID": 4336,
-      "txt": ""
+      "txt": "协馨儿斩泉中妖物,灵泉复清,暗藏宗门算计。"
     },
     {
       "ID": 4337,
-      "txt": ""
+      "txt": "协助馨儿击败浮岛盗修获得宝盒"
     },
     {
       "ID": 4338,
-      "txt": ""
+      "txt": "被迫卷入秘钥争夺,重伤柳轻烟托付宗门存亡重任。"
     },
     {
       "ID": 4339,
-      "txt": ""
+      "txt": "击败血海宗敌人"
     },
     {
       "ID": 4340,
-      "txt": ""
+      "txt": "击败血海宗敌人"
     },
     {
       "ID": 4341,
-      "txt": ""
+      "txt": "归还秘钥,柳轻烟以宗门承诺相赠,江湖再会。"
     },
     {
       "ID": 4342,
-      "txt": ""
+      "txt": "协战夺灵花,馨儿邀你前去拍卖会"
     },
     {
       "ID": 4343,
-      "txt": ""
+      "txt": "馨儿笑退拦路散修,你警觉暗处危机。"
     },
     {
       "ID": 4344,
-      "txt": ""
+      "txt": "斩除精英散修,馨儿拐楚云缪组队奔赴拍卖会。"
     },
     {
       "ID": 4345,
-      "txt": ""
+      "txt": "楚云缪遇袭失碧云佩,你赶赴东南救援被追击的馨儿。"
     },
     {
       "ID": 4346,
-      "txt": ""
+      "txt": "你与馨儿发现偷袭者另有接应,劫案背后暗藏更大阴谋。"
     },
     {
       "ID": 4347,
-      "txt": ""
+      "txt": "你与馨儿击败青狼散人夺回碧云佩,青狼帮的威胁还未散。"
     },
     {
       "ID": 4348,
-      "txt": ""
+      "txt": "击杀劫道的血海宗弟子,宗门恩怨初现端倪。"
     },
     {
       "ID": 4349,
-      "txt": ""
+      "txt": "救下被追杀的林风,携玄冥晶踏上危机四伏的护送路。"
     },
     {
       "ID": 4350,
-      "txt": ""
+      "txt": "击退三波追兵,护送林风抵达青云镇。"
     },
     {
       "ID": 4351,
-      "txt": ""
+      "txt": "婉拒柳清清谢礼,为玄冥晶护送画上侠义句点。"
     },
     {
       "ID": 4352,
-      "txt": ""
+      "txt": "血海宗夺晶重伤柳清清,携林风赠宝再赴杀局。"
     },
     {
       "ID": 4353,
-      "txt": ""
+      "txt": "归还部分玄冥晶,血海宗秘密仍藏于迷雾。"
     },
     {
       "ID": 4354,
-      "txt": ""
+      "txt": "击杀血海宗修士却触发求救信号,携玄冥晶紧急撤离。"
     },
     {
       "ID": 4355,
-      "txt": ""
+      "txt": "血海宗为师弟复仇而来,立誓以血还血。"
     },
     {
       "ID": 4356,
-      "txt": ""
+      "txt": "受玄水真人所托,探查被紫光污染的灵泉核心。"
     },
     {
       "ID": 4357,
-      "txt": ""
+      "txt": "玩家平息灵泉异变获采药权,玄水真人暗示山顶新危机。"
     },
     {
       "ID": 4358,
-      "txt": ""
+      "txt": "与馨儿、柳如烟重逢,组队清剿仙山异象引来的妖物。"
     },
     {
       "ID": 4359,
-      "txt": ""
+      "txt": "妖物清剿完毕,与馨儿、柳如烟暂别分头行动。"
     },
     {
       "ID": 4360,
-      "txt": ""
+      "txt": "击败守护圣地的云霄龙鹰,龙族再现预言随灵气震荡天地。"
     },
     {
       "ID": 4361,
-      "txt": ""
+      "txt": "龙鳞不足难启石门,双姝回宗禀报,玩家留待后续。"
     },
     {
       "ID": 4362,
-      "txt": ""
+      "txt": "鲤鱼卖惨求丹"
     },
     {
       "ID": 4363,
-      "txt": ""
+      "txt": "鲤鱼二次卖惨求丹"
     },
     {
       "ID": 4364,
-      "txt": ""
+      "txt": "鲤鱼假扮化龙继续骗丹"
     },
     {
       "ID": 4365,
-      "txt": ""
+      "txt": "剑仙化石,是真?是假?"
     },
     {
       "ID": 4366,
-      "txt": ""
+      "txt": "天下真有白吃的灵石午餐。"
     },
     {
       "ID": 4367,
-      "txt": ""
+      "txt": "石头精不服输再挑战,猜拳博弈变尊严之战。"
     },
     {
       "ID": 4368,
-      "txt": ""
+      "txt": "石头精画假布设陷阱"
     },
     {
       "ID": 4369,
-      "txt": ""
+      "txt": "石头精识破玩家善意,归还灵石领悟游戏真谛。"
     },
     {
       "ID": 4370,
-      "txt": ""
+      "txt": "一只浑身带电的小兽蜷缩在树洞"
     },
     {
       "ID": 4371,
-      "txt": ""
+      "txt": "一只肥大的蚊子在你神识中嗡嗡直叫"
     },
     {
       "ID": 4372,
-      "txt": ""
+      "txt": "一只小灵雀坠落在林间"
     },
     {
       "ID": 4373,
-      "txt": ""
+      "txt": "一只瘦骨嶙峋的老犬趴在一座坟前"
     },
     {
       "ID": 4374,
-      "txt": ""
+      "txt": "一群萤火虫被困在蛛网中"
     },
     {
       "ID": 4375,
-      "txt": ""
+      "txt": "一只小妖在地上嚎啕大哭"
     },
     {
       "ID": 4376,
-      "txt": ""
+      "txt": "一只老龟趴在溪水边"
     },
     {
       "ID": 4377,
-      "txt": ""
+      "txt": "一块灵石长出嘴巴,正跑调唱歌?"
     },
     {
       "ID": 4378,
@@ -17618,11 +17618,11 @@
     },
     {
       "ID": 5145,
-      "txt": "天机不可泄露。\n(说罢,从袖中拿出一个风铃..)\n但此风铃,可以为你指引前路。"
+      "txt": "参透七道心境,才有望窥见天道..\n去吧,历红尘,破心障,游三界,方能领悟。"
     },
     {
       "ID": 5146,
-      "txt": "多谢前辈赠铃.."
+      "txt": "七道心境?那是何物,请前辈指点?"
     },
     {
       "ID": 5147,
@@ -18034,7 +18034,7 @@
     },
     {
       "ID": 5249,
-      "txt": "与鲲鹏对话"
+      "txt": "与鲲鹏对话妖兽被击退了。"
     },
     {
       "ID": 5250,
@@ -23714,7 +23714,7 @@
     },
     {
       "ID": 6669,
-      "txt": "只老龟趴在溪水边,神识触及"
+      "txt": "只老龟趴在溪水边,神识触及"
     },
     {
       "ID": 6670,

+ 6 - 6
Assets/Res/Config/ShopItemConfig.json

@@ -1635,7 +1635,7 @@
     },
     {
       "ID": 301,
-      "giftID": "",
+      "giftID": "com.xysj.goodsid_301_6",
       "itemId": [
         10002
       ],
@@ -1658,7 +1658,7 @@
     },
     {
       "ID": 302,
-      "giftID": "",
+      "giftID": "com.xysj.goodsid_302_6",
       "itemId": [
         12016
       ],
@@ -1681,7 +1681,7 @@
     },
     {
       "ID": 303,
-      "giftID": "",
+      "giftID": "com.xysj.goodsid_303_6",
       "itemId": [
         12518
       ],
@@ -1704,7 +1704,7 @@
     },
     {
       "ID": 304,
-      "giftID": "",
+      "giftID": "com.xysj.goodsid_304_12",
       "itemId": [
         1703
       ],
@@ -1727,7 +1727,7 @@
     },
     {
       "ID": 305,
-      "giftID": "",
+      "giftID": "com.xysj.goodsid_305_12",
       "itemId": [
         21013
       ],
@@ -1750,7 +1750,7 @@
     },
     {
       "ID": 306,
-      "giftID": "",
+      "giftID": "com.xysj.goodsid_306_30",
       "itemId": [
         23002
       ],

+ 72 - 0
Assets/Scripts/Core/UI/UTool/AccumulatorUtility.cs

@@ -0,0 +1,72 @@
+using Fort23.Core;
+using UnityEngine;
+
+namespace Core.UI.UTool
+{
+    public class AccumulatorUtility
+    {
+        public class AccumulationData
+        {
+            public float currentTotal;
+            public float targetTotal;
+            public float duration;
+            public System.Action<float> onIncrement;
+            public System.Action onComplete;
+        }
+
+        /// <summary>
+        /// 开始精确累加
+        /// </summary>
+        public static async void StartAccumulation(int targetTotal, float duration, int steps,
+            System.Action<int> onStep, System.Action onComplete = null)
+        {
+            int stepValue = targetTotal / (steps);
+            float timePerStep = duration / steps;
+            int currentTotal = 0;
+
+            for (int i = 0; i < steps-1; i++)
+            {
+                await TimerComponent.Instance.WaitAsync((int)(timePerStep * 1000));
+
+
+                currentTotal += stepValue;
+                onStep?.Invoke(stepValue);
+            }
+
+            // 确保最终精度
+            // currentTotal = targetTotal;
+            onStep?.Invoke(targetTotal - currentTotal);
+            onComplete?.Invoke();
+        }
+
+        /// <summary>
+        /// 开始实时累加(基于Update)
+        /// </summary>
+        public static async void StartRealtimeAccumulation(AccumulationData data)
+        {
+            float timer = 0f;
+            data.currentTotal = 0f;
+
+            while (timer < data.duration)
+            {
+                timer += Time.deltaTime;
+                float progress = timer / data.duration;
+
+                float newTotal = progress * data.targetTotal;
+                float increment = newTotal - data.currentTotal;
+
+                if (increment > 0)
+                {
+                    data.currentTotal = newTotal;
+                    data.onIncrement?.Invoke(data.currentTotal);
+                }
+
+                // yield return null;
+            }
+
+            data.currentTotal = data.targetTotal;
+            data.onIncrement?.Invoke(data.currentTotal);
+            data.onComplete?.Invoke();
+        }
+    }
+}

+ 3 - 0
Assets/Scripts/Core/UI/UTool/AccumulatorUtility.cs.meta

@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 6a60933f9bd54e7ab8dfcc39a272dab3
+timeCreated: 1759998153

+ 1 - 1
Assets/Scripts/GameData/ExcelConfig/SkillConfig.cs

@@ -1,5 +1,5 @@
 // Auto Generated Code By excel2json
-// Generate From Excel\Skill.xlsx. SheetName: SkillConfig
+// Generate From Excel\skill.xlsx. SheetName: SkillConfig
 
 using System;
 using Fort23.GameData;

+ 1 - 1
Assets/Scripts/GameData/ExcelConfig/SkillConstant.cs

@@ -1,5 +1,5 @@
 // Auto Generated Code By excel2json
-// Generate From Excel\Skill.xlsx. SheetName: SkillConstant
+// Generate From Excel\skill.xlsx. SheetName: SkillConstant
 
 using System;
 using Fort23.GameData;

+ 1 - 1
Assets/Scripts/GameData/ExcelConfig/SkillPowerupConfig.cs

@@ -1,5 +1,5 @@
 // Auto Generated Code By excel2json
-// Generate From Excel\Skill.xlsx. SheetName: SkillPowerupConfig
+// Generate From Excel\skill.xlsx. SheetName: SkillPowerupConfig
 
 using System;
 using Fort23.GameData;

+ 31 - 12
Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroBreakthroughPanel.cs

@@ -99,15 +99,35 @@ namespace Fort23.Mono
                 }
 
                 //扣除道具
-                foreach (var breakthroughItemWidget in breakthroughItemWidgets)
+                // foreach (var breakthroughItemWidget in breakthroughItemWidgets)
+                // {
+                //     if (breakthroughItemWidget.itemInfo != null)
+                //     {
+                //         if (!PlayerManager.Instance.BagController.IsEnough(breakthroughItemWidget.itemInfo.itemID, 1))
+                //         {
+                //             TipMessagePanel tipMessage = await TipMessagePanel.OpenTipMessagePanel("道具不足!");
+                //             return;
+                //         }
+                //     }
+                // }
+
+                for (var i = 0; i < PlayerManager.Instance.myHero.powerUpConfig.DujieMustItemIDs.Length; i++)
                 {
-                    if (breakthroughItemWidget.itemInfo != null)
+                    if (!PlayerManager.Instance.BagController.IsEnough(
+                            PlayerManager.Instance.myHero.powerUpConfig.DujieMustItemIDs[i], 1))
                     {
-                        if (!PlayerManager.Instance.BagController.DeductItem(breakthroughItemWidget.itemInfo.itemID, 1))
-                        {
-                            TipMessagePanel tipMessage = await TipMessagePanel.OpenTipMessagePanel("道具不足!");
-                            return;
-                        }
+                        TipMessagePanel tipMessage = await TipMessagePanel.OpenTipMessagePanel("道具不足!");
+                        return;
+                    }
+                }
+
+                for (var i = 0; i < PlayerManager.Instance.myHero.powerUpConfig.DujieMustItemIDs.Length; i++)
+                {
+                    if (!PlayerManager.Instance.BagController.DeductItem(
+                            PlayerManager.Instance.myHero.powerUpConfig.DujieMustItemIDs[i], 1))
+                    {
+                        TipMessagePanel tipMessage = await TipMessagePanel.OpenTipMessagePanel("道具不足!");
+                        return;
                     }
                 }
 
@@ -122,8 +142,6 @@ namespace Fort23.Mono
                 //突破成功
                 if (ramdomValue < list[0])
                 {
-              
-
                     bool isTuPoSuccess = true;
                     if (PlayerManager.Instance.myHero.powerUpConfig.jingjie1 != nextHeroInfo.powerUpConfig.jingjie1)
                     {
@@ -133,7 +151,7 @@ namespace Fort23.Mono
                             GObjectPoolInterface.SetActive(false);
                             BackgroundPanel backgroundPanel = UIManager.Instance.GetComponent<BackgroundPanel>();
                             backgroundPanel.GObjectPoolInterface.SetActive(false);
-                          
+
                             type1 = 3;
                             ramdomValue = Random.Range(PlayerManager.Instance.myHero.powerUpConfig.LeijieDamages[0],
                                 PlayerManager.Instance.myHero.powerUpConfig.LeijieDamages[1]);
@@ -152,7 +170,7 @@ namespace Fort23.Mono
                             }
                         }
                     }
-                
+
                     if (isTuPoSuccess)
                     {
                         AudioManager.Instance.PlayAudio("ui_tupo.wav");
@@ -168,6 +186,7 @@ namespace Fort23.Mono
                         await HeroBreakthroughFailPanel.OpenPanel(2, list[1]);
                     await heroBreakthroughFailPanel.UIClosed();
                 }
+
                 heroInformationPanel.RecoverDujie();
                 UIManager.Instance.HideUIUIPanel(this);
             });
@@ -291,7 +310,7 @@ namespace Fort23.Mono
                     }
                     else
                     {
-                        Text_HeroHp.color = new Color32(249,240,204,255);
+                        Text_HeroHp.color = new Color32(249, 240, 204, 255);
                     }
                 }
                 else

+ 29 - 1
Assets/Scripts/GameUI/UI/HeroInformationPanel/HeroInformationPanel.cs

@@ -11,6 +11,7 @@ using Fort23.UTool;
 using GameLogic.Combat.CombatTool;
 using GameLogic.Hero;
 using UnityEngine;
+using Utility.CTween;
 
 
 namespace Fort23.Mono
@@ -119,6 +120,7 @@ namespace Fort23.Mono
                         fx_ui_tupo1.gameObject.SetActive(true);
                         fx_ui_tupo1.Play();
                         await TimerComponent.Instance.WaitAsync(500);
+                        CustomInit();
                         for (var i = 0; i < JingJieIcons.Count; i++)
                         {
                             if (PlayerManager.Instance.myHero.powerUpConfig.jingjie3 - 1 == i)
@@ -136,7 +138,7 @@ namespace Fort23.Mono
                         fx_ui_tupo1.gameObject.SetActive(false);
                         MarskPanel.ClosePanel();
                         HeroBreakthroughSuccessPanel.OpenPanel(1, heroAttributData);
-                        CustomInit();
+
                         AudioManager.Instance.PlayAudio("ui_shengji.wav");
                     }
                     //大突破
@@ -405,6 +407,32 @@ namespace Fort23.Mono
             }
         }
 
+
+        /// <summary>
+        /// 吃丹药
+        /// </summary>
+        public async CTask UseExpElixir(Vector2 startPos)
+        {
+            GameObjectPool gameObjectPool = null;
+            gameObjectPool = await GObjectPool.Instance.FetchAsync<GameObjectPool>("fx_ui_danyao_tw");
+            gameObjectPool.own.transform.SetParent(this.transform);
+
+
+            Vector2 pos = transform.worldToLocalMatrix * startPos;
+            Vector2 pos1 = transform.worldToLocalMatrix *
+                           fxroot.GetComponent<RectTransform>().position;
+            gameObjectPool.own.GetComponent<RectTransform>().anchoredPosition = pos;
+            CustomTweenManager
+                .To(() => pos, x => gameObjectPool.own.transform.GetComponent<RectTransform>().anchoredPosition = x,
+                    pos1, 0.5f, gameObjectPool.own)
+                .SetEase(CustomTweenEX.CustomAnimationCurve.Line).SetLoop(false).OnCompleteAction = () =>
+            {
+                GObjectPool.Instance.Recycle(gameObjectPool);
+                fx_ui_danyao_shi.gameObject.SetActive(true);
+                fx_ui_danyao_shi.Play();
+            };
+        }
+
         public void ChangeLayerRecursively(GameObject obj, int newLayer)
         {
             if (obj == null || obj.layer == newLayer) return;

+ 20 - 10
Assets/Scripts/GameUI/UI/HeroInformationPanel/UseExpElixirPanel.cs

@@ -1,6 +1,7 @@
 using System.Collections.Generic;
 using System.Linq;
 using Core.Audio;
+using Core.UI.UTool;
 using Excel2Json;
 using Fort23.Core;
 using Fort23.UTool;
@@ -68,7 +69,7 @@ namespace Fort23.Mono
 
             if (PlayerManager.Instance.BagController.DeductItem(elixirItemWidget.ItemConfig.ID, 1))
             {
-                PlayerManager.Instance.myHero.heroData.exp += elixirItemWidget.ItemConfig.associateVlaue[0];
+                // PlayerManager.Instance.myHero.heroData.exp += elixirItemWidget.ItemConfig.associateVlaue[0];
                 AccountFileInfo.Instance.playerData.todayUseExpElixrPanelCount++;
                 AccountFileInfo.Instance.SavePlayerData();
                 AudioManager.Instance.PlayAudio("ui_shiyonghuode");
@@ -83,24 +84,17 @@ namespace Fort23.Mono
             elixirItemWidget.fx_ui_danyao_qi.Play();
 
 
-            // CustomTweenManager.To()
             HeroInformationPanel heroInformationPanel = UIManager.Instance.GetComponent<HeroInformationPanel>();
-            // ImageMoveContainer imageMoveContainer = new ImageMoveContainer();
+            // heroInformationPanel.UseExpElixir()
             GameObjectPool gameObjectPool = null;
             gameObjectPool = await GObjectPool.Instance.FetchAsync<GameObjectPool>("fx_ui_danyao_tw");
             gameObjectPool.own.transform.SetParent(this.transform);
-            // gameObjectPool.own.transform.GetComponent<RectTransform>().anchoredPosition = transform.worldToLocalMatrix *
-            //     elixirItemWidget.fx_ui_danyao_qi.transform.position;
+
 
             Vector2 pos = transform.worldToLocalMatrix * elixirItemWidget.fx_ui_danyao_qi.transform.position;
             Vector2 pos1 = transform.worldToLocalMatrix *
                            heroInformationPanel.fxroot.GetComponent<RectTransform>().position;
             gameObjectPool.own.GetComponent<RectTransform>().anchoredPosition = pos;
-            // imageMoveContainer.AddACurve(pos, pos1, 0, 1.5f, gameObjectPool, (i) =>
-            // {
-            //     heroInformationPanel.fx_ui_danyao_shi.gameObject.SetActive(true);
-            //     heroInformationPanel.fx_ui_danyao_shi.Play();
-            // });
             CustomTweenManager
                 .To(() => pos, x => gameObjectPool.own.transform.GetComponent<RectTransform>().anchoredPosition = x,
                     pos1, 0.5f, gameObjectPool.own)
@@ -110,6 +104,22 @@ namespace Fort23.Mono
                 heroInformationPanel.fx_ui_danyao_shi.gameObject.SetActive(true);
                 heroInformationPanel.fx_ui_danyao_shi.Play();
             };
+
+            int exp = 0;
+
+
+            AccumulatorUtility.StartAccumulation(
+                elixirItemWidget.ItemConfig.associateVlaue[0], 0.2f, 20,
+                current =>
+                {
+                    PlayerManager.Instance.myHero.heroData.exp += current;
+                    AccountFileInfo.Instance.SavePlayerData();
+                    LogTool.Error("z" + current);
+                },
+                () => Debug.Log("累加完成!")
+            );
+
+
             Text_UseCount.text = $"今日\n{AccountFileInfo.Instance.playerData.todayUseExpElixrPanelCount}/20";
         }
 

+ 10 - 1
Assets/Scripts/GameUI/UI/Task/TaskInfoPanel.cs

@@ -62,7 +62,16 @@ namespace Fort23.Mono
             if (eventLinkData == null || eventLinkData.eventConditions == null ||
                 eventLinkData.eventConditions.Count == 0)
             {
-                Text_Condition.text = LanguageManager.Instance.Text(evenkConfig.EventConditionMessage);
+                if (evenkConfig.EventConditionMessage != 0)
+                {
+                    Text_Condition.text = LanguageManager.Instance.Text(evenkConfig.EventConditionMessage);
+                }
+                else
+                {
+                    Text_Condition.text ="";
+                }
+                
+             
             }
             else
             {

二进制
Excel2Json/Excel/EventConfig.xlsx


二进制
Excel2Json/Excel/Language.xlsx


二进制
Excel2Json/Excel/Shop.xlsx


二进制
Excel2Json/Excel/skill.xlsx