Merge branch 'dev' of http://git.legu.cc/liwei_3d/go_dreamfactory into dev
This commit is contained in:
commit
fd9173aa7b
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -9054,9 +9054,9 @@
|
||||
{
|
||||
"Id": 224002111,
|
||||
"EmitPR": 1000,
|
||||
"From": 2,
|
||||
"From": 4,
|
||||
"Where": [],
|
||||
"Order": "Type=Rand",
|
||||
"Order": "",
|
||||
"Limit": 1,
|
||||
"ExecuteCnt": 1,
|
||||
"Type": 1,
|
||||
@ -9081,7 +9081,7 @@
|
||||
{
|
||||
"Id": 224002112,
|
||||
"EmitPR": 1000,
|
||||
"From": 2,
|
||||
"From": 11,
|
||||
"Where": [],
|
||||
"Order": "Type=Rand",
|
||||
"Limit": 1,
|
||||
@ -9157,7 +9157,7 @@
|
||||
{
|
||||
"Id": 224002122,
|
||||
"EmitPR": 1000,
|
||||
"From": 2,
|
||||
"From": 11,
|
||||
"Where": [],
|
||||
"Order": "Type=Rand",
|
||||
"Limit": 1,
|
||||
@ -9209,7 +9209,7 @@
|
||||
{
|
||||
"Id": 224002132,
|
||||
"EmitPR": 1000,
|
||||
"From": 2,
|
||||
"From": 11,
|
||||
"Where": [],
|
||||
"Order": "Type=Rand",
|
||||
"Limit": 1,
|
||||
@ -9261,7 +9261,7 @@
|
||||
{
|
||||
"Id": 224002142,
|
||||
"EmitPR": 1000,
|
||||
"From": 2,
|
||||
"From": 11,
|
||||
"Where": [],
|
||||
"Order": "Type=Rand",
|
||||
"Limit": 1,
|
||||
@ -9313,7 +9313,7 @@
|
||||
{
|
||||
"Id": 224002152,
|
||||
"EmitPR": 1000,
|
||||
"From": 2,
|
||||
"From": 11,
|
||||
"Where": [],
|
||||
"Order": "Type=Rand",
|
||||
"Limit": 1,
|
||||
@ -9365,7 +9365,7 @@
|
||||
{
|
||||
"Id": 224002162,
|
||||
"EmitPR": 1000,
|
||||
"From": 2,
|
||||
"From": 11,
|
||||
"Where": [],
|
||||
"Order": "Type=Rand",
|
||||
"Limit": 1,
|
||||
@ -9565,7 +9565,7 @@
|
||||
390001211,
|
||||
1000,
|
||||
5,
|
||||
1
|
||||
-1
|
||||
],
|
||||
"FollowSK": [],
|
||||
"SucFollowSK": [],
|
||||
@ -9588,10 +9588,12 @@
|
||||
"Argu": [
|
||||
1,
|
||||
4,
|
||||
2050
|
||||
2100
|
||||
],
|
||||
"FollowSK": [],
|
||||
"SucFollowSK": [],
|
||||
"SucFollowSK": [
|
||||
224002313
|
||||
],
|
||||
"FailFollowSK": [],
|
||||
"MustHit": false,
|
||||
"DpsRevisiType": 0,
|
||||
@ -9611,10 +9613,12 @@
|
||||
"Argu": [
|
||||
1,
|
||||
4,
|
||||
2050
|
||||
2100
|
||||
],
|
||||
"FollowSK": [],
|
||||
"SucFollowSK": [],
|
||||
"SucFollowSK": [
|
||||
224002313
|
||||
],
|
||||
"FailFollowSK": [],
|
||||
"MustHit": false,
|
||||
"DpsRevisiType": 0,
|
||||
@ -9634,10 +9638,12 @@
|
||||
"Argu": [
|
||||
1,
|
||||
4,
|
||||
2100
|
||||
2200
|
||||
],
|
||||
"FollowSK": [],
|
||||
"SucFollowSK": [],
|
||||
"SucFollowSK": [
|
||||
224002313
|
||||
],
|
||||
"FailFollowSK": [],
|
||||
"MustHit": false,
|
||||
"DpsRevisiType": 0,
|
||||
@ -9657,10 +9663,12 @@
|
||||
"Argu": [
|
||||
1,
|
||||
4,
|
||||
2100
|
||||
2200
|
||||
],
|
||||
"FollowSK": [],
|
||||
"SucFollowSK": [],
|
||||
"SucFollowSK": [
|
||||
224002313
|
||||
],
|
||||
"FailFollowSK": [],
|
||||
"MustHit": false,
|
||||
"DpsRevisiType": 0,
|
||||
|
@ -22,6 +22,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -52,6 +53,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -82,6 +84,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -112,6 +115,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -142,6 +146,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -172,6 +177,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -202,6 +208,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -234,6 +241,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -264,6 +272,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -294,6 +303,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -324,6 +334,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 3,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -354,6 +365,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 3,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -384,6 +396,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -414,6 +427,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -441,6 +455,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -470,6 +485,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -497,6 +513,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -524,6 +541,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -551,6 +569,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -578,6 +597,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -605,6 +625,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -632,6 +653,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -659,6 +681,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -690,6 +713,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -717,6 +741,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -744,6 +769,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -771,6 +797,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -798,6 +825,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -825,6 +853,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -852,6 +881,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -879,6 +909,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -906,6 +937,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -933,6 +965,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -964,6 +997,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -995,6 +1029,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 3,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1022,6 +1057,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1053,6 +1089,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1080,6 +1117,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1111,6 +1149,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1138,6 +1177,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1169,6 +1209,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1200,6 +1241,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 3,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1230,6 +1272,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 10,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1262,6 +1305,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 10,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1289,6 +1333,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1316,6 +1361,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 8,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1343,6 +1389,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1370,6 +1417,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1400,6 +1448,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1427,6 +1476,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1457,6 +1507,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 5,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1477,7 +1528,8 @@
|
||||
"BuffType": 69,
|
||||
"EffectArgu": [
|
||||
2,
|
||||
224002214
|
||||
224002214,
|
||||
224002215
|
||||
],
|
||||
"BufParNum": 1,
|
||||
"RelyCheckArgu": [],
|
||||
@ -1487,6 +1539,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 1,
|
||||
"OverlayTimes": 5,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1517,6 +1570,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 50,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1546,6 +1600,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1573,6 +1628,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1602,6 +1658,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1631,6 +1688,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1656,6 +1714,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1686,6 +1745,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 8,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1716,6 +1776,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1746,6 +1807,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1776,6 +1838,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1806,6 +1869,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1836,6 +1900,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1866,6 +1931,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1896,6 +1962,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1926,6 +1993,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1956,6 +2024,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -1986,6 +2055,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2016,6 +2086,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2046,6 +2117,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2076,6 +2148,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2106,6 +2179,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2136,6 +2210,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2166,6 +2241,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2196,6 +2272,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2226,6 +2303,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2256,6 +2334,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2286,6 +2365,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2316,6 +2396,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2346,6 +2427,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2376,6 +2458,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2406,6 +2489,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2436,6 +2520,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2466,6 +2551,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2496,6 +2582,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2529,6 +2616,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -2558,6 +2646,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2587,6 +2676,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2618,6 +2708,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -2648,6 +2739,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 99,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -2678,6 +2770,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -2708,6 +2801,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 3,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2738,6 +2832,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 99,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -2767,6 +2862,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 99,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2797,6 +2893,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 3,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2827,6 +2924,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 99,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2856,6 +2954,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2883,6 +2982,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 99,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2912,6 +3012,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 99,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2942,6 +3043,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 99,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2969,6 +3071,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -2996,6 +3099,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3023,6 +3127,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3054,6 +3159,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 3,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3079,6 +3185,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3106,6 +3213,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3136,6 +3244,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 10,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3161,6 +3270,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3191,6 +3301,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -3218,6 +3329,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3247,6 +3359,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 5,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -3277,6 +3390,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 99,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3302,6 +3416,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3333,6 +3448,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -3362,6 +3478,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 99,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -3389,6 +3506,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -3416,6 +3534,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -3447,6 +3566,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3475,6 +3595,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 3,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3505,6 +3626,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3535,6 +3657,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "buff_gj_ts",
|
||||
@ -3565,6 +3688,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "buff_fy_ts",
|
||||
@ -3595,6 +3719,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "buff_bj_ts",
|
||||
@ -3622,6 +3747,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "buff_bj_dk",
|
||||
@ -3652,6 +3778,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "buff_mz_ts",
|
||||
@ -3682,6 +3809,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "buff_dk_ts",
|
||||
@ -3710,6 +3838,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3740,6 +3869,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": true,
|
||||
"golbalbufficon": "",
|
||||
@ -3765,6 +3895,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3795,6 +3926,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 3,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3820,6 +3952,7 @@
|
||||
"Effect": [],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3847,6 +3980,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 1,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3877,6 +4011,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": false,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
@ -3907,6 +4042,7 @@
|
||||
],
|
||||
"AddEffect": false,
|
||||
"RemoveType": true,
|
||||
"NotOverlay": 0,
|
||||
"OverlayTimes": 0,
|
||||
"SameID": false,
|
||||
"golbalbufficon": "",
|
||||
|
@ -1,286 +1,286 @@
|
||||
[
|
||||
{
|
||||
"heroid": "13001",
|
||||
"itemid": "513001"
|
||||
"itemid": "11013001"
|
||||
},
|
||||
{
|
||||
"heroid": "13002",
|
||||
"itemid": "513002"
|
||||
"itemid": "11013002"
|
||||
},
|
||||
{
|
||||
"heroid": "13003",
|
||||
"itemid": "513003"
|
||||
"itemid": "11013003"
|
||||
},
|
||||
{
|
||||
"heroid": "13004",
|
||||
"itemid": "513004"
|
||||
"itemid": "11013004"
|
||||
},
|
||||
{
|
||||
"heroid": "13005",
|
||||
"itemid": "513005"
|
||||
"itemid": "11013005"
|
||||
},
|
||||
{
|
||||
"heroid": "14001",
|
||||
"itemid": "514001"
|
||||
"itemid": "11014001"
|
||||
},
|
||||
{
|
||||
"heroid": "14002",
|
||||
"itemid": "514002"
|
||||
"itemid": "11014002"
|
||||
},
|
||||
{
|
||||
"heroid": "14003",
|
||||
"itemid": "514003"
|
||||
"itemid": "11014003"
|
||||
},
|
||||
{
|
||||
"heroid": "14004",
|
||||
"itemid": "514004"
|
||||
"itemid": "11014004"
|
||||
},
|
||||
{
|
||||
"heroid": "14005",
|
||||
"itemid": "514005"
|
||||
"itemid": "11014005"
|
||||
},
|
||||
{
|
||||
"heroid": "14006",
|
||||
"itemid": "514006"
|
||||
"itemid": "11014006"
|
||||
},
|
||||
{
|
||||
"heroid": "14007",
|
||||
"itemid": "514007"
|
||||
"itemid": "11014007"
|
||||
},
|
||||
{
|
||||
"heroid": "15001",
|
||||
"itemid": "515001"
|
||||
"itemid": "11015001"
|
||||
},
|
||||
{
|
||||
"heroid": "15002",
|
||||
"itemid": "515002"
|
||||
"itemid": "11015002"
|
||||
},
|
||||
{
|
||||
"heroid": "15003",
|
||||
"itemid": "515003"
|
||||
"itemid": "11015003"
|
||||
},
|
||||
{
|
||||
"heroid": "15004",
|
||||
"itemid": "515004"
|
||||
"itemid": "11015004"
|
||||
},
|
||||
{
|
||||
"heroid": "23001",
|
||||
"itemid": "523001"
|
||||
"itemid": "11023001"
|
||||
},
|
||||
{
|
||||
"heroid": "23002",
|
||||
"itemid": "523002"
|
||||
"itemid": "11023002"
|
||||
},
|
||||
{
|
||||
"heroid": "23003",
|
||||
"itemid": "523003"
|
||||
"itemid": "11023003"
|
||||
},
|
||||
{
|
||||
"heroid": "23004",
|
||||
"itemid": "523004"
|
||||
"itemid": "11023004"
|
||||
},
|
||||
{
|
||||
"heroid": "24001",
|
||||
"itemid": "524001"
|
||||
"itemid": "11024001"
|
||||
},
|
||||
{
|
||||
"heroid": "24002",
|
||||
"itemid": "524002"
|
||||
"itemid": "11024002"
|
||||
},
|
||||
{
|
||||
"heroid": "24003",
|
||||
"itemid": "524003"
|
||||
"itemid": "11024003"
|
||||
},
|
||||
{
|
||||
"heroid": "24004",
|
||||
"itemid": "524004"
|
||||
"itemid": "11024004"
|
||||
},
|
||||
{
|
||||
"heroid": "24005",
|
||||
"itemid": "524005"
|
||||
"itemid": "11024005"
|
||||
},
|
||||
{
|
||||
"heroid": "24006",
|
||||
"itemid": "524006"
|
||||
"itemid": "11024006"
|
||||
},
|
||||
{
|
||||
"heroid": "24007",
|
||||
"itemid": "524007"
|
||||
"itemid": "11024007"
|
||||
},
|
||||
{
|
||||
"heroid": "24008",
|
||||
"itemid": "524008"
|
||||
"itemid": "11024008"
|
||||
},
|
||||
{
|
||||
"heroid": "24009",
|
||||
"itemid": "524009"
|
||||
"itemid": "11024009"
|
||||
},
|
||||
{
|
||||
"heroid": "25001",
|
||||
"itemid": "525001"
|
||||
"itemid": "11025001"
|
||||
},
|
||||
{
|
||||
"heroid": "25002",
|
||||
"itemid": "525002"
|
||||
"itemid": "11025002"
|
||||
},
|
||||
{
|
||||
"heroid": "25003",
|
||||
"itemid": "525003"
|
||||
"itemid": "11025003"
|
||||
},
|
||||
{
|
||||
"heroid": "25004",
|
||||
"itemid": "525004"
|
||||
"itemid": "11025004"
|
||||
},
|
||||
{
|
||||
"heroid": "33001",
|
||||
"itemid": "533001"
|
||||
"itemid": "11033001"
|
||||
},
|
||||
{
|
||||
"heroid": "33002",
|
||||
"itemid": "533002"
|
||||
"itemid": "11033002"
|
||||
},
|
||||
{
|
||||
"heroid": "33003",
|
||||
"itemid": "533003"
|
||||
"itemid": "11033003"
|
||||
},
|
||||
{
|
||||
"heroid": "33004",
|
||||
"itemid": "533004"
|
||||
"itemid": "11033004"
|
||||
},
|
||||
{
|
||||
"heroid": "33005",
|
||||
"itemid": "533005"
|
||||
"itemid": "11033005"
|
||||
},
|
||||
{
|
||||
"heroid": "33006",
|
||||
"itemid": "533006"
|
||||
"itemid": "11033006"
|
||||
},
|
||||
{
|
||||
"heroid": "34001",
|
||||
"itemid": "534001"
|
||||
"itemid": "11034001"
|
||||
},
|
||||
{
|
||||
"heroid": "34002",
|
||||
"itemid": "534002"
|
||||
"itemid": "11034002"
|
||||
},
|
||||
{
|
||||
"heroid": "34003",
|
||||
"itemid": "534003"
|
||||
"itemid": "11034003"
|
||||
},
|
||||
{
|
||||
"heroid": "34004",
|
||||
"itemid": "534004"
|
||||
"itemid": "11034004"
|
||||
},
|
||||
{
|
||||
"heroid": "34005",
|
||||
"itemid": "534005"
|
||||
"itemid": "11034005"
|
||||
},
|
||||
{
|
||||
"heroid": "34006",
|
||||
"itemid": "534006"
|
||||
"itemid": "11034006"
|
||||
},
|
||||
{
|
||||
"heroid": "34007",
|
||||
"itemid": "534007"
|
||||
"itemid": "11034007"
|
||||
},
|
||||
{
|
||||
"heroid": "34008",
|
||||
"itemid": "534008"
|
||||
"itemid": "11034008"
|
||||
},
|
||||
{
|
||||
"heroid": "35001",
|
||||
"itemid": "535001"
|
||||
"itemid": "11035001"
|
||||
},
|
||||
{
|
||||
"heroid": "35002",
|
||||
"itemid": "535002"
|
||||
"itemid": "11035002"
|
||||
},
|
||||
{
|
||||
"heroid": "35003",
|
||||
"itemid": "535003"
|
||||
"itemid": "11035003"
|
||||
},
|
||||
{
|
||||
"heroid": "35004",
|
||||
"itemid": "535004"
|
||||
"itemid": "11035004"
|
||||
},
|
||||
{
|
||||
"heroid": "35005",
|
||||
"itemid": "535005"
|
||||
"itemid": "11035005"
|
||||
},
|
||||
{
|
||||
"heroid": "35006",
|
||||
"itemid": "535006"
|
||||
"itemid": "11035006"
|
||||
},
|
||||
{
|
||||
"heroid": "43001",
|
||||
"itemid": "543001"
|
||||
"itemid": "11043001"
|
||||
},
|
||||
{
|
||||
"heroid": "43002",
|
||||
"itemid": "543002"
|
||||
"itemid": "11043002"
|
||||
},
|
||||
{
|
||||
"heroid": "43003",
|
||||
"itemid": "543003"
|
||||
"itemid": "11043003"
|
||||
},
|
||||
{
|
||||
"heroid": "43004",
|
||||
"itemid": "543004"
|
||||
"itemid": "11043004"
|
||||
},
|
||||
{
|
||||
"heroid": "43005",
|
||||
"itemid": "543005"
|
||||
"itemid": "11043005"
|
||||
},
|
||||
{
|
||||
"heroid": "43006",
|
||||
"itemid": "543006"
|
||||
"itemid": "11043006"
|
||||
},
|
||||
{
|
||||
"heroid": "43007",
|
||||
"itemid": "543007"
|
||||
"itemid": "11043007"
|
||||
},
|
||||
{
|
||||
"heroid": "44001",
|
||||
"itemid": "544001"
|
||||
"itemid": "11044001"
|
||||
},
|
||||
{
|
||||
"heroid": "44002",
|
||||
"itemid": "544002"
|
||||
"itemid": "11044002"
|
||||
},
|
||||
{
|
||||
"heroid": "44003",
|
||||
"itemid": "544003"
|
||||
"itemid": "11044003"
|
||||
},
|
||||
{
|
||||
"heroid": "44004",
|
||||
"itemid": "544004"
|
||||
"itemid": "11044004"
|
||||
},
|
||||
{
|
||||
"heroid": "44006",
|
||||
"itemid": "544006"
|
||||
"itemid": "11044006"
|
||||
},
|
||||
{
|
||||
"heroid": "45001",
|
||||
"itemid": "545001"
|
||||
"itemid": "11045001"
|
||||
},
|
||||
{
|
||||
"heroid": "45002",
|
||||
"itemid": "545002"
|
||||
"itemid": "11045002"
|
||||
},
|
||||
{
|
||||
"heroid": "45003",
|
||||
"itemid": "545003"
|
||||
"itemid": "11045003"
|
||||
},
|
||||
{
|
||||
"heroid": "45004",
|
||||
"itemid": "545004"
|
||||
"itemid": "11045004"
|
||||
},
|
||||
{
|
||||
"heroid": "44005",
|
||||
"itemid": "544005"
|
||||
"itemid": "11044005"
|
||||
},
|
||||
{
|
||||
"heroid": "15005",
|
||||
"itemid": "515005"
|
||||
"itemid": "11015005"
|
||||
}
|
||||
]
|
@ -4458,7 +4458,7 @@
|
||||
"lock": 999,
|
||||
"lockend": 0,
|
||||
"ontxe": 20010,
|
||||
"id_after": 30200,
|
||||
"id_after": 0,
|
||||
"group": 390,
|
||||
"des": 3,
|
||||
"icon": "",
|
||||
@ -4501,9 +4501,9 @@
|
||||
"key": 30200,
|
||||
"lock": 999,
|
||||
"lockend": 0,
|
||||
"ontxe": 30190,
|
||||
"ontxe": 999,
|
||||
"id_after": 30210,
|
||||
"group": 390,
|
||||
"group": 391,
|
||||
"des": 3,
|
||||
"icon": "",
|
||||
"task_Tname": {
|
||||
@ -4547,7 +4547,7 @@
|
||||
"lockend": 0,
|
||||
"ontxe": 30200,
|
||||
"id_after": 0,
|
||||
"group": 390,
|
||||
"group": 391,
|
||||
"des": 3,
|
||||
"icon": "",
|
||||
"task_Tname": {
|
||||
@ -4633,7 +4633,7 @@
|
||||
"key": 30230,
|
||||
"lock": 999,
|
||||
"lockend": 0,
|
||||
"ontxe": 20040,
|
||||
"ontxe": 999,
|
||||
"id_after": 0,
|
||||
"group": 410,
|
||||
"des": 3,
|
||||
@ -4677,7 +4677,7 @@
|
||||
"key": 30240,
|
||||
"lock": 999,
|
||||
"lockend": 0,
|
||||
"ontxe": 20050,
|
||||
"ontxe": 999,
|
||||
"id_after": 0,
|
||||
"group": 420,
|
||||
"des": 3,
|
||||
|
@ -508,8 +508,10 @@ type (
|
||||
//埋点中心触发
|
||||
TriggerBuried(uid string, burieds ...*BuriedParam)
|
||||
//校验条件是否达成
|
||||
CheckCondition(uid string, condiIds ...int32) (condIds []int32)
|
||||
CheckCondition(uid string, condiIds ...int32) (condIds []int32, err error)
|
||||
//激活条件
|
||||
ActiveCondition(uid string, condiIds ...int32)
|
||||
ActiveCondition(uid string, condiIds ...int32) (err error)
|
||||
//校验的同时激活条件
|
||||
CheckAndActiveCondition(uid string, condiIds ...int32) (condIds []int32, err error)
|
||||
}
|
||||
)
|
||||
|
@ -51,6 +51,25 @@ func (this *configureComp) getburiedtypedata(tt comm.TaskType) (result *cfg.Game
|
||||
return
|
||||
}
|
||||
|
||||
//读取条件任务id配置
|
||||
func (this *configureComp) getburiedcondidata(cid int32) (result *cfg.GameBuriedCondiData, err error) {
|
||||
var (
|
||||
v interface{}
|
||||
ok bool
|
||||
)
|
||||
if v, err = this.GetConfigure(game_buriedcondi); err != nil {
|
||||
this.module.Errorf("err:%v", err)
|
||||
return
|
||||
} else {
|
||||
if result, ok = v.(*cfg.GameBuriedCondi).GetDataMap()[cid]; !ok {
|
||||
err = comm.NewNotFoundConfErr(moduleName, game_buriedtype, cid)
|
||||
this.module.Errorf("err:%v", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
//动态更新配置
|
||||
func (this *configureComp) updateconfigure() {
|
||||
if v, err := this.GetConfigure(game_buriedcondi); err != nil {
|
||||
|
@ -32,37 +32,39 @@ const (
|
||||
)
|
||||
|
||||
//判断埋点数据的有效性
|
||||
func checkburied(buried *comm.BuriedParam, conf *cfg.GameBuriedCondiData) (efficient bool) {
|
||||
if len(buried.Filter) != len(conf.Filter) {
|
||||
func checkburied(buried *comm.BuriedParam, bconf *cfg.GameBuriedTypeData, conf *cfg.GameBuriedCondiData) (efficient bool) {
|
||||
if len(buried.Filter) == len(conf.Filter) {
|
||||
log.Error("校验埋点错误!", log.Field{Key: "buried", Value: buried}, log.Field{Key: "conf", Value: conf})
|
||||
return
|
||||
}
|
||||
for i, v := range conf.Filter {
|
||||
efficient = false
|
||||
value := buried.Filter[i]
|
||||
switch v.S {
|
||||
symbol := bconf.Filter[i]
|
||||
target := conf.Filter[i]
|
||||
switch symbol {
|
||||
case eq: //==
|
||||
if value == v.D {
|
||||
if value == target {
|
||||
efficient = true
|
||||
}
|
||||
case gt: //>
|
||||
if value > v.D {
|
||||
if value > target {
|
||||
efficient = true
|
||||
}
|
||||
case gte: //>=
|
||||
if value >= v.D {
|
||||
if value >= target {
|
||||
efficient = true
|
||||
}
|
||||
case lt: //<
|
||||
if value < v.D {
|
||||
if value < target {
|
||||
efficient = true
|
||||
}
|
||||
case lte: //<=
|
||||
if value <= v.D {
|
||||
if value <= target {
|
||||
efficient = true
|
||||
}
|
||||
case ne: //!=
|
||||
if value != v.D {
|
||||
if value != target {
|
||||
efficient = true
|
||||
}
|
||||
default:
|
||||
|
@ -58,15 +58,132 @@ func (this *Buried) OnInstallComp() {
|
||||
}
|
||||
|
||||
//激活数据采集点
|
||||
func (this *Buried) ActiveCondition(uid string, condiIds ...int32) {
|
||||
|
||||
func (this *Buried) ActiveCondition(uid string, condiIds ...int32) (err error) {
|
||||
var (
|
||||
model *buriedModel
|
||||
conf *cfg.GameBuriedCondiData
|
||||
bdatas map[int32]*pb.DBBuried
|
||||
chanage []*pb.DBBuried //变化埋点
|
||||
)
|
||||
if model, err = this.modelBuried.getburiedModel(uid); err != nil {
|
||||
this.Error("获取用户埋点数据模型对象失败!", log.Field{Key: "err", Value: err.Error()})
|
||||
return
|
||||
}
|
||||
if bdatas, err = model.getUserBurieds(uid); err != nil {
|
||||
return
|
||||
}
|
||||
chanage = make([]*pb.DBBuried, 0)
|
||||
for _, v := range condiIds {
|
||||
if conf, err = this.configure.getburiedcondidata(v); err != nil {
|
||||
return
|
||||
}
|
||||
if bdata, ok := bdatas[conf.Type]; ok {
|
||||
if conf.Rtype == rtype2 {
|
||||
if item, ok := bdata.Items[v]; !ok {
|
||||
bdata.Items[v] = &pb.DBBuriedItem{
|
||||
Conid: v,
|
||||
State: pb.BuriedItemState_Activated,
|
||||
Value: 0,
|
||||
Statistics: make([]string, 0),
|
||||
Timestamp: time.Now().Unix(),
|
||||
}
|
||||
chanage = append(chanage, bdata)
|
||||
} else {
|
||||
item.Value = 0
|
||||
item.Statistics = make([]string, 0)
|
||||
item.Timestamp = time.Now().Unix()
|
||||
item.State = pb.BuriedItemState_Activated
|
||||
chanage = append(chanage, bdata)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if len(chanage) > 0 {
|
||||
err = model.updateUserBurieds(uid, chanage)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
//激活数据采集点
|
||||
func (this *Buried) CheckCondition(uid string, condiIds ...int32) (condIds []int32) {
|
||||
|
||||
func (this *Buried) CheckCondition(uid string, condiIds ...int32) (condIds []int32, err error) {
|
||||
var (
|
||||
model *buriedModel
|
||||
bdatas map[int32]*pb.DBBuried
|
||||
conf *cfg.GameBuriedCondiData
|
||||
)
|
||||
if model, err = this.modelBuried.getburiedModel(uid); err != nil {
|
||||
this.Error("获取用户埋点数据模型对象失败!", log.Field{Key: "err", Value: err.Error()})
|
||||
return
|
||||
}
|
||||
if bdatas, err = model.getUserBurieds(uid); err != nil {
|
||||
return
|
||||
}
|
||||
condIds = make([]int32, 0)
|
||||
for _, v := range condiIds {
|
||||
if conf, err = this.configure.getburiedcondidata(v); err != nil {
|
||||
return
|
||||
}
|
||||
if bdata, ok := bdatas[conf.Type]; ok {
|
||||
if data, ok := bdata.Items[v]; ok {
|
||||
if data.Value >= conf.Value {
|
||||
condIds = append(condIds, v)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
//校验同时激活
|
||||
func (this *Buried) CheckAndActiveCondition(uid string, condiIds ...int32) (condIds []int32, err error) {
|
||||
var (
|
||||
model *buriedModel
|
||||
bdatas map[int32]*pb.DBBuried
|
||||
conf *cfg.GameBuriedCondiData
|
||||
chanage []*pb.DBBuried //变化埋点
|
||||
)
|
||||
if model, err = this.modelBuried.getburiedModel(uid); err != nil {
|
||||
this.Error("获取用户埋点数据模型对象失败!", log.Field{Key: "err", Value: err.Error()})
|
||||
return
|
||||
}
|
||||
if bdatas, err = model.getUserBurieds(uid); err != nil {
|
||||
return
|
||||
}
|
||||
condIds = make([]int32, 0)
|
||||
chanage = make([]*pb.DBBuried, 0)
|
||||
for _, v := range condiIds {
|
||||
if conf, err = this.configure.getburiedcondidata(v); err != nil {
|
||||
return
|
||||
}
|
||||
if bdata, ok := bdatas[conf.Type]; ok {
|
||||
if data, ok := bdata.Items[v]; ok {
|
||||
if data.Value >= conf.Value {
|
||||
condIds = append(condIds, v)
|
||||
}
|
||||
}
|
||||
if conf.Rtype == rtype2 {
|
||||
if item, ok := bdata.Items[v]; !ok {
|
||||
bdata.Items[v] = &pb.DBBuriedItem{
|
||||
Conid: v,
|
||||
State: pb.BuriedItemState_Activated,
|
||||
Value: 0,
|
||||
Statistics: make([]string, 0),
|
||||
Timestamp: time.Now().Unix(),
|
||||
}
|
||||
chanage = append(chanage, bdata)
|
||||
} else {
|
||||
item.Value = 0
|
||||
item.Statistics = make([]string, 0)
|
||||
item.Timestamp = time.Now().Unix()
|
||||
item.State = pb.BuriedItemState_Activated
|
||||
chanage = append(chanage, bdata)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if len(chanage) > 0 {
|
||||
err = model.updateUserBurieds(uid, chanage)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@ -90,8 +207,12 @@ func (this *Buried) TriggerBuried(uid string, burieds ...*comm.BuriedParam) {
|
||||
}
|
||||
for _, buried := range burieds {
|
||||
conds := this.configure.getCondiDatas(buried.Btype)
|
||||
if bconf, err = this.configure.getburiedtypedata(buried.Btype); err != nil {
|
||||
this.Error("未找到目标埋点类型配置", log.Field{Key: "type", Value: buried.Btype})
|
||||
continue
|
||||
}
|
||||
for _, cond := range conds {
|
||||
if checkburied(buried, cond) { //判断此埋点数据是否有效
|
||||
if checkburied(buried, bconf, cond) { //判断此埋点数据是否有效
|
||||
if _, ok := pass[buried]; !ok {
|
||||
pass[buried] = make([]*cfg.GameBuriedCondiData, 0)
|
||||
}
|
||||
|
@ -14,12 +14,12 @@ const (
|
||||
type apiComp struct {
|
||||
modules.MCompGate
|
||||
service core.IService
|
||||
moduleLinestory *ModuleLinestory
|
||||
module *ModuleLinestory
|
||||
}
|
||||
|
||||
func (this *apiComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
|
||||
this.MCompGate.Init(service, module, comp, options)
|
||||
this.moduleLinestory = module.(*ModuleLinestory)
|
||||
this.module = module.(*ModuleLinestory)
|
||||
this.service = service
|
||||
return
|
||||
}
|
||||
|
@ -12,12 +12,12 @@ func (this *apiComp) ChapterCheck(session comm.IUserSession, req *pb.LinestoryCh
|
||||
|
||||
func (this *apiComp) Chapter(session comm.IUserSession, req *pb.LinestoryChapterReq) (code pb.ErrorCode, data *pb.ErrorData) {
|
||||
uid := session.GetUserId()
|
||||
taskMap := this.moduleLinestory.modelLinestory.getChapters(uid)
|
||||
taskMap := this.module.modelLinestory.getChapters(uid)
|
||||
rsp := &pb.LinestoryChapterResp{
|
||||
TaskChapter: taskMap,
|
||||
}
|
||||
|
||||
if err := session.SendMsg(string(this.moduleLinestory.GetType()), LinestorySubTypeChapter, rsp); err != nil {
|
||||
if err := session.SendMsg(string(this.module.GetType()), LinestorySubTypeChapter, rsp); err != nil {
|
||||
code = pb.ErrorCode_SystemError
|
||||
}
|
||||
return
|
||||
|
@ -9,7 +9,7 @@ import (
|
||||
// 支线剧情-我的主线任务
|
||||
func (this *apiComp) MaintaskCheck(session comm.IUserSession, req *pb.LinestoryMaintaskReq) (code pb.ErrorCode) {
|
||||
if req.ChapterId == 0 {
|
||||
this.moduleLinestory.Error("参数错误", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "params", Value: req.String()})
|
||||
this.module.Error("参数错误", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "params", Value: req.String()})
|
||||
code = pb.ErrorCode_ReqParameterError
|
||||
}
|
||||
return
|
||||
@ -22,13 +22,13 @@ func (this *apiComp) Maintask(session comm.IUserSession, req *pb.LinestoryMainta
|
||||
|
||||
uid := session.GetUserId()
|
||||
// 我的主线任务
|
||||
list := this.moduleLinestory.modelLinestory.getMaintasks(uid, req.ChapterId)
|
||||
list := this.module.modelLinestory.getMaintasks(uid, req.ChapterId)
|
||||
|
||||
rsp := &pb.LinestoryMaintaskResp{
|
||||
List: list,
|
||||
}
|
||||
|
||||
if err := session.SendMsg(string(this.moduleLinestory.GetType()), LinestorySubTypeMaintask, rsp); err != nil {
|
||||
if err := session.SendMsg(string(this.module.GetType()), LinestorySubTypeMaintask, rsp); err != nil {
|
||||
code = pb.ErrorCode_SystemError
|
||||
return
|
||||
}
|
||||
|
@ -11,7 +11,7 @@ import (
|
||||
// 章节奖励领取
|
||||
func (this *apiComp) ReceiveCheck(session comm.IUserSession, req *pb.LinestoryReceiveReq) (code pb.ErrorCode) {
|
||||
if req.ChapterId == 0 {
|
||||
this.moduleLinestory.Error("参数错误", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "params", Value: req.String()})
|
||||
this.module.Error("参数错误", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "params", Value: req.String()})
|
||||
code = pb.ErrorCode_ReqParameterError
|
||||
}
|
||||
return
|
||||
@ -22,27 +22,27 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.LinestoryReceive
|
||||
return
|
||||
}
|
||||
uid := session.GetUserId()
|
||||
conf := this.moduleLinestory.configure.getChapterCfgById(req.ChapterId)
|
||||
conf := this.module.configure.getChapterCfgById(req.ChapterId)
|
||||
if conf == nil {
|
||||
this.moduleLinestory.Error("配置未找到", log.Field{Key: "uid", Value: uid}, log.Field{Key: "chapterId", Value: req.ChapterId})
|
||||
this.module.Error("配置未找到", log.Field{Key: "uid", Value: uid}, log.Field{Key: "chapterId", Value: req.ChapterId})
|
||||
code = pb.ErrorCode_ConfigNoFound
|
||||
return
|
||||
}
|
||||
|
||||
if err := this.moduleLinestory.modelLinestory.receive(uid, req.ChapterId); err != nil {
|
||||
if err := this.module.modelLinestory.receive(uid, req.ChapterId); err != nil {
|
||||
var customErr = new(comm.CustomError)
|
||||
if errors.As(err, &customErr) {
|
||||
code = customErr.Code
|
||||
} else {
|
||||
code = pb.ErrorCode_DBError
|
||||
}
|
||||
this.moduleLinestory.Error("章节奖励领取失败", log.Field{Key: "uid", Value: uid}, log.Field{Key: "chapterId", Value: req.ChapterId}, log.Field{Key: "code", Value: code})
|
||||
this.module.Error("章节奖励领取失败", log.Field{Key: "uid", Value: uid}, log.Field{Key: "chapterId", Value: req.ChapterId}, log.Field{Key: "code", Value: code})
|
||||
return
|
||||
}
|
||||
|
||||
//发奖
|
||||
if code = this.moduleLinestory.DispenseRes(session, conf.Reward, true); code != pb.ErrorCode_Success {
|
||||
this.moduleLinestory.Error("奖励发放失败",
|
||||
if code = this.module.DispenseRes(session, conf.Reward, true); code != pb.ErrorCode_Success {
|
||||
this.module.Error("奖励发放失败",
|
||||
log.Field{Key: "uid", Value: uid}, log.Field{Key: "chapterId", Value: req.ChapterId}, log.Field{Key: "reward", Value: conf.Reward},
|
||||
)
|
||||
return
|
||||
@ -52,7 +52,7 @@ func (this *apiComp) Receive(session comm.IUserSession, req *pb.LinestoryReceive
|
||||
ChapterId: req.ChapterId,
|
||||
UserAssets: utils.ConvertReward(conf.Reward...),
|
||||
}
|
||||
if err := session.SendMsg(string(this.moduleLinestory.GetType()), LinestorySubTypeReceive, rsp); err != nil {
|
||||
if err := session.SendMsg(string(this.module.GetType()), LinestorySubTypeReceive, rsp); err != nil {
|
||||
code = pb.ErrorCode_SystemError
|
||||
}
|
||||
return
|
||||
|
@ -4,6 +4,7 @@ import (
|
||||
"go_dreamfactory/comm"
|
||||
"go_dreamfactory/lego/sys/log"
|
||||
"go_dreamfactory/pb"
|
||||
"go_dreamfactory/utils"
|
||||
)
|
||||
|
||||
// 任务接取
|
||||
@ -85,30 +86,15 @@ func (a *apiComp) Accept(session comm.IUserSession, req *pb.WorldtaskAcceptReq)
|
||||
a.module.modelWorldtask.taskFinish(session, req.GroupId, req.TaskId, myWorldtask, curTaskConf)
|
||||
a.module.modelWorldtask.taskFinishPush(session, req.GroupId, myWorldtask, curTaskConf)
|
||||
} else {
|
||||
// 检查任务条件是否已完成
|
||||
rsp.CondiIds = a.checkCurrentCompleteCond(uid, curTaskConf.Completetask, myWorldtask)
|
||||
// 已完成的任务条件
|
||||
rsp.CondiIds, err = a.module.ModuleBuried.CheckCondition(uid, curTaskConf.Completetask...)
|
||||
if err == nil {
|
||||
a.module.ModuleBuried.ActiveCondition(uid, utils.NoContain(rsp.CondiIds, curTaskConf.Completetask)...)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
a.sendMsg(session, WorldtaskSubtypeAccept, rsp)
|
||||
return
|
||||
}
|
||||
|
||||
// 检查当前任务的完成条件
|
||||
func (this *apiComp) checkCurrentCompleteCond(uid string, completeCondIds []int32, userTask *pb.DBWorldtask) (condIds []int32) {
|
||||
|
||||
for _, condId := range completeCondIds {
|
||||
if condId == 0 {
|
||||
continue
|
||||
}
|
||||
|
||||
if m, err := this.module.service.GetModule(comm.ModuleRtask); err == nil {
|
||||
iwt, ok := m.(comm.IRtask)
|
||||
if ok {
|
||||
if mc := iwt.CheckCondi(uid, condId); mc == pb.ErrorCode_Success {
|
||||
condIds = append(condIds, condId)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
@ -2,9 +2,7 @@ package worldtask
|
||||
|
||||
import (
|
||||
"go_dreamfactory/comm"
|
||||
"go_dreamfactory/lego/sys/log"
|
||||
"go_dreamfactory/pb"
|
||||
"go_dreamfactory/utils"
|
||||
)
|
||||
|
||||
// 任务完成条件
|
||||
@ -43,28 +41,32 @@ func (this *apiComp) CompleteCondi(session comm.IUserSession, req *pb.WorldtaskC
|
||||
|
||||
myWorldtask.Uid = uid
|
||||
wt := myWorldtask.CurrentTask[req.GroupId]
|
||||
if m, err := this.module.service.GetModule(comm.ModuleRtask); err == nil {
|
||||
iwt, ok := m.(comm.IRtask)
|
||||
if ok {
|
||||
if code = iwt.CheckCondi(uid, req.CondiId); code != pb.ErrorCode_Success {
|
||||
rsp.Code = code
|
||||
rsp.CondiId = req.CondiId
|
||||
rsp.TaskId = req.TaskId
|
||||
this.module.Debug("任务完成条件不满足",
|
||||
log.Field{Key: "uid", Value: uid},
|
||||
log.Field{Key: "taskId", Value: req.TaskId},
|
||||
log.Field{Key: "condiId", Value: req.CondiId},
|
||||
)
|
||||
this.sendMsg(session, WorldtaskComplete, rsp)
|
||||
return
|
||||
}
|
||||
if wt == nil {
|
||||
wt = &pb.Worldtask{}
|
||||
}
|
||||
if _, b := utils.Findx(wt.CondiIds, req.CondiId); !b {
|
||||
wt.CondiIds = append(wt.CondiIds, req.CondiId)
|
||||
}
|
||||
}
|
||||
// if m, err := this.module.service.GetModule(comm.ModuleRtask); err == nil {
|
||||
// iwt, ok := m.(comm.IRtask)
|
||||
// if ok {
|
||||
// if code = iwt.CheckCondi(uid, req.CondiId); code != pb.ErrorCode_Success {
|
||||
// rsp.Code = code
|
||||
// rsp.CondiId = req.CondiId
|
||||
// rsp.TaskId = req.TaskId
|
||||
// this.module.Debug("任务完成条件不满足",
|
||||
// log.Field{Key: "uid", Value: uid},
|
||||
// log.Field{Key: "taskId", Value: req.TaskId},
|
||||
// log.Field{Key: "condiId", Value: req.CondiId},
|
||||
// )
|
||||
// this.sendMsg(session, WorldtaskComplete, rsp)
|
||||
// return
|
||||
// }
|
||||
// if wt == nil {
|
||||
// wt = &pb.Worldtask{}
|
||||
// }
|
||||
// if _, b := utils.Findx(wt.CondiIds, req.CondiId); !b {
|
||||
// wt.CondiIds = append(wt.CondiIds, req.CondiId)
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
condIds, err := this.module.ModuleBuried.CheckCondition(uid, req.CondiId)
|
||||
if err == nil && len(condIds) > 0 {
|
||||
wt.CondiIds = append(wt.CondiIds, condIds...)
|
||||
}
|
||||
|
||||
myWorldtask.CurrentTask[req.GroupId] = wt
|
||||
|
@ -95,7 +95,9 @@ func (this *apiComp) Finish(session comm.IUserSession, req *pb.WorldtaskFinishRe
|
||||
condiFlag bool
|
||||
)
|
||||
for _, condId := range curTaskConf.Completetask {
|
||||
if this.module.modelWorldtask.checkCondi(uid, condId) {
|
||||
conIds, err := this.module.ModuleBuried.CheckCondition(uid, condId)
|
||||
// if this.module.modelWorldtask.checkCondi(uid, condId) {
|
||||
if err == nil && len(conIds) > 0 {
|
||||
condiFlag = true
|
||||
} else {
|
||||
condiFlag = false
|
||||
@ -194,28 +196,33 @@ func (this *apiComp) updateCheckCond(uid string, userTask *pb.DBWorldtask, nextT
|
||||
TaskType: nextTaskConf.Des,
|
||||
}
|
||||
}
|
||||
if m, err := this.module.service.GetModule(comm.ModuleRtask); err == nil {
|
||||
iwt, ok := m.(comm.IRtask)
|
||||
if ok {
|
||||
if mc := iwt.CheckCondi(uid, condiId); mc != pb.ErrorCode_Success {
|
||||
this.module.Debug("任务完成条件不满足",
|
||||
log.Field{Key: "uid", Value: uid},
|
||||
log.Field{Key: "taskId", Value: nextTaskId},
|
||||
log.Field{Key: "condiId", Value: condiId},
|
||||
)
|
||||
} else {
|
||||
if ok {
|
||||
nwt.CondiIds = append(nwt.CondiIds, condiId)
|
||||
} else {
|
||||
condiIds := []int32{condiId}
|
||||
nwt.CondiIds = condiIds
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// if m, err := this.module.service.GetModule(comm.ModuleRtask); err == nil {
|
||||
// iwt, ok := m.(comm.IRtask)
|
||||
// if ok {
|
||||
// if mc := iwt.CheckCondi(uid, condiId); mc != pb.ErrorCode_Success {
|
||||
// this.module.Debug("任务完成条件不满足",
|
||||
// log.Field{Key: "uid", Value: uid},
|
||||
// log.Field{Key: "taskId", Value: nextTaskId},
|
||||
// log.Field{Key: "condiId", Value: condiId},
|
||||
// )
|
||||
// } else {
|
||||
// if ok {
|
||||
// nwt.CondiIds = append(nwt.CondiIds, condiId)
|
||||
// } else {
|
||||
// condiIds := []int32{condiId}
|
||||
// nwt.CondiIds = condiIds
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
condIds, err := this.module.ModuleBuried.CheckCondition(uid, condiId)
|
||||
if err == nil && len(condIds) > 0 {
|
||||
nwt.CondiIds = condIds
|
||||
userTask.CurrentTask[nextTaskConf.Group] = nwt
|
||||
update["currentTask"] = userTask.CurrentTask
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if len(update) > 0 {
|
||||
|
@ -208,24 +208,30 @@ func (this *ModelWorldtask) updateCheckCond(uid string, userLv int32, userTask *
|
||||
TaskType: nextTaskConf.Des,
|
||||
}
|
||||
}
|
||||
if m, err := this.service.GetModule(comm.ModuleRtask); err == nil {
|
||||
iwt, ok := m.(comm.IRtask)
|
||||
if ok {
|
||||
if mc := iwt.CheckCondi(uid, condiId); mc != pb.ErrorCode_Success {
|
||||
this.moduleWorldtask.Debug("任务完成条件不满足",
|
||||
log.Field{Key: "uid", Value: uid},
|
||||
log.Field{Key: "taskId", Value: nextTaskId},
|
||||
log.Field{Key: "condiId", Value: condiId},
|
||||
)
|
||||
} else {
|
||||
if ok {
|
||||
nwt.CondiIds = append(nwt.CondiIds, condiId)
|
||||
} else {
|
||||
condiIds := []int32{condiId}
|
||||
nwt.CondiIds = condiIds
|
||||
}
|
||||
}
|
||||
}
|
||||
// if m, err := this.service.GetModule(comm.ModuleRtask); err == nil {
|
||||
// iwt, ok := m.(comm.IRtask)
|
||||
// if ok {
|
||||
// if mc := iwt.CheckCondi(uid, condiId); mc != pb.ErrorCode_Success {
|
||||
// this.moduleWorldtask.Debug("任务完成条件不满足",
|
||||
// log.Field{Key: "uid", Value: uid},
|
||||
// log.Field{Key: "taskId", Value: nextTaskId},
|
||||
// log.Field{Key: "condiId", Value: condiId},
|
||||
// )
|
||||
// } else {
|
||||
// if ok {
|
||||
// nwt.CondiIds = append(nwt.CondiIds, condiId)
|
||||
// } else {
|
||||
// condiIds := []int32{condiId}
|
||||
// nwt.CondiIds = condiIds
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
condIds, err := this.moduleWorldtask.ModuleBuried.CheckCondition(uid, condiId)
|
||||
if err == nil && len(condIds) > 0 {
|
||||
nwt.CondiIds = condIds
|
||||
userTask.CurrentTask[nextTaskConf.Group] = nwt
|
||||
update["currentTask"] = userTask.CurrentTask
|
||||
}
|
||||
userTask.CurrentTask[nextTaskConf.Group] = nwt
|
||||
update["currentTask"] = userTask.CurrentTask
|
||||
|
@ -4,6 +4,7 @@ import (
|
||||
"go_dreamfactory/comm"
|
||||
"go_dreamfactory/lego/base"
|
||||
"go_dreamfactory/lego/core"
|
||||
"go_dreamfactory/lego/sys/event"
|
||||
"go_dreamfactory/lego/sys/log"
|
||||
"go_dreamfactory/modules"
|
||||
"go_dreamfactory/pb"
|
||||
@ -34,6 +35,7 @@ func (this *Worldtask) Init(service core.IService, module core.IModule, options
|
||||
|
||||
func (this *Worldtask) OnInstallComp() {
|
||||
this.ModuleBase.OnInstallComp()
|
||||
event.RegisterGO(comm.EventBuriedComplete, this.TCondFinishNotify)
|
||||
this.api = this.RegisterComp(new(apiComp)).(*apiComp)
|
||||
this.modelWorldtask = this.RegisterComp(new(ModelWorldtask)).(*ModelWorldtask)
|
||||
this.configure = this.RegisterComp(new(configureComp)).(*configureComp)
|
||||
@ -54,15 +56,18 @@ func (this *Worldtask) Start() (err error) {
|
||||
return
|
||||
}
|
||||
|
||||
// 任务条件达成通知
|
||||
func (this *Worldtask) TaskCondFinishNotify(session comm.IUserSession, condIds []int32) error {
|
||||
this.Debug("世界任务完成条件通知", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "condIds", Value: condIds})
|
||||
uid := session.GetUserId()
|
||||
func (this *Worldtask) TCondFinishNotify(uid string, conids []int32) {
|
||||
session, ok := this.GetUserSession(uid)
|
||||
if !ok {
|
||||
return
|
||||
}
|
||||
this.Debug("世界任务完成条件通知", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "condIds", Value: conids})
|
||||
|
||||
// 玩家世界任务
|
||||
userTask, err := this.modelWorldtask.getWorldtask(uid)
|
||||
if err != nil {
|
||||
this.Error("获取玩家世界任务", log.Field{Key: "uid", Value: uid})
|
||||
return err
|
||||
return
|
||||
}
|
||||
|
||||
var groupId, taskId int32
|
||||
@ -70,7 +75,7 @@ func (this *Worldtask) TaskCondFinishNotify(session comm.IUserSession, condIds [
|
||||
finishedTaskIds := make(map[int32]int32) //达成的任务条件
|
||||
for _, c := range this.worldtaskConf.GetDataList() {
|
||||
for _, v := range c.Completetask {
|
||||
for _, condId := range condIds {
|
||||
for _, condId := range conids {
|
||||
if v == condId {
|
||||
//校验任务是否是当前任务
|
||||
if task, ok := userTask.CurrentTask[c.Group]; ok {
|
||||
@ -90,7 +95,7 @@ func (this *Worldtask) TaskCondFinishNotify(session comm.IUserSession, condIds [
|
||||
// this.Debug("未找到通知的世界任务",
|
||||
// log.Field{Key: "uid", Value: uid},
|
||||
// log.Field{Key: "finishedTaskIds", Value: finishedTaskIds})
|
||||
return nil
|
||||
return
|
||||
}
|
||||
|
||||
if userTask.CurrentTask == nil {
|
||||
@ -102,7 +107,7 @@ func (this *Worldtask) TaskCondFinishNotify(session comm.IUserSession, condIds [
|
||||
wt = &pb.Worldtask{}
|
||||
}
|
||||
|
||||
for _, condId := range condIds {
|
||||
for _, condId := range conids {
|
||||
if _, ok := utils.Findx(wt.CondiIds, condId); !ok {
|
||||
wt.CondiIds = append(wt.CondiIds, condId)
|
||||
}
|
||||
@ -127,7 +132,7 @@ func (this *Worldtask) TaskCondFinishNotify(session comm.IUserSession, condIds [
|
||||
// 当前任务配置
|
||||
curTaskConf, err := this.configure.getWorldtaskById(taskId)
|
||||
if err != nil || curTaskConf == nil {
|
||||
return comm.NewCustomError(pb.ErrorCode_ConfigNoFound)
|
||||
return
|
||||
}
|
||||
|
||||
//结束任务
|
||||
@ -135,6 +140,11 @@ func (this *Worldtask) TaskCondFinishNotify(session comm.IUserSession, condIds [
|
||||
this.modelWorldtask.taskFinish(session, groupId, taskId, userTask, curTaskConf)
|
||||
this.modelWorldtask.taskFinishPush(session, groupId, userTask, curTaskConf)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// 任务条件达成通知
|
||||
func (this *Worldtask) TaskCondFinishNotify(session comm.IUserSession, condIds []int32) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
|
@ -19,7 +19,7 @@ type GameBuriedCondiData struct {
|
||||
Valid int32
|
||||
NPC int32
|
||||
Value int32
|
||||
Filter []*Gamecompare
|
||||
Filter []int32
|
||||
}
|
||||
|
||||
const TypeId_GameBuriedCondiData = 1792922092
|
||||
@ -42,11 +42,11 @@ func (_v *GameBuriedCondiData)Deserialize(_buf map[string]interface{}) (err erro
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["filter"].([]interface{}); !_ok_ { err = errors.New("filter error"); return }
|
||||
|
||||
_v.Filter = make([]*Gamecompare, 0, len(_arr_))
|
||||
_v.Filter = make([]int32, 0, len(_arr_))
|
||||
|
||||
for _, _e_ := range _arr_ {
|
||||
var _list_v_ *Gamecompare
|
||||
{ var _ok_ bool; var _x_ map[string]interface{}; if _x_, _ok_ = _e_.(map[string]interface{}); !_ok_ { err = errors.New("_list_v_ error"); return }; if _list_v_, err = DeserializeGamecompare(_x_); err != nil { return } }
|
||||
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.Filter = append(_v.Filter, _list_v_)
|
||||
}
|
||||
}
|
||||
|
@ -13,6 +13,7 @@ import "errors"
|
||||
type GameBuriedTypeData struct {
|
||||
Id int32
|
||||
Insert int32
|
||||
Filter []string
|
||||
}
|
||||
|
||||
const TypeId_GameBuriedTypeData = -452590967
|
||||
@ -24,6 +25,20 @@ func (*GameBuriedTypeData) GetTypeId() int32 {
|
||||
func (_v *GameBuriedTypeData)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["insert"].(float64); !_ok_ { err = errors.New("insert error"); return }; _v.Insert = int32(_tempNum_) }
|
||||
{
|
||||
var _arr_ []interface{}
|
||||
var _ok_ bool
|
||||
if _arr_, _ok_ = _buf["filter"].([]interface{}); !_ok_ { err = errors.New("filter error"); return }
|
||||
|
||||
_v.Filter = make([]string, 0, len(_arr_))
|
||||
|
||||
for _, _e_ := range _arr_ {
|
||||
var _list_v_ string
|
||||
{ if _list_v_, _ok_ = _e_.(string); !_ok_ { err = errors.New("_list_v_ error"); return } }
|
||||
_v.Filter = append(_v.Filter, _list_v_)
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -1,37 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
package cfg
|
||||
|
||||
import "errors"
|
||||
|
||||
type Gamecompare struct {
|
||||
S string
|
||||
D int32
|
||||
}
|
||||
|
||||
const TypeId_Gamecompare = -229713143
|
||||
|
||||
func (*Gamecompare) GetTypeId() int32 {
|
||||
return -229713143
|
||||
}
|
||||
|
||||
func (_v *Gamecompare)Deserialize(_buf map[string]interface{}) (err error) {
|
||||
{ var _ok_ bool; if _v.S, _ok_ = _buf["s"].(string); !_ok_ { err = errors.New("s error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["d"].(float64); !_ok_ { err = errors.New("d error"); return }; _v.D = int32(_tempNum_) }
|
||||
return
|
||||
}
|
||||
|
||||
func DeserializeGamecompare(_buf map[string]interface{}) (*Gamecompare, error) {
|
||||
v := &Gamecompare{}
|
||||
if err := v.Deserialize(_buf); err == nil {
|
||||
return v, nil
|
||||
} else {
|
||||
return nil, err
|
||||
}
|
||||
}
|
@ -22,6 +22,7 @@ type GameSkillBuffData struct {
|
||||
Effect []int32
|
||||
AddEffect bool
|
||||
RemoveType bool
|
||||
NotOverlay int32
|
||||
OverlayTimes byte
|
||||
SameID bool
|
||||
Golbalbufficon string
|
||||
@ -100,6 +101,7 @@ func (_v *GameSkillBuffData)Deserialize(_buf map[string]interface{}) (err error)
|
||||
|
||||
{ var _ok_ bool; if _v.AddEffect, _ok_ = _buf["AddEffect"].(bool); !_ok_ { err = errors.New("AddEffect error"); return } }
|
||||
{ var _ok_ bool; if _v.RemoveType, _ok_ = _buf["RemoveType"].(bool); !_ok_ { err = errors.New("RemoveType error"); return } }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["NotOverlay"].(float64); !_ok_ { err = errors.New("NotOverlay error"); return }; _v.NotOverlay = int32(_tempNum_) }
|
||||
{ var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["OverlayTimes"].(float64); !_ok_ { err = errors.New("OverlayTimes error"); return }; _v.OverlayTimes = byte(_tempNum_) }
|
||||
{ var _ok_ bool; if _v.SameID, _ok_ = _buf["SameID"].(bool); !_ok_ { err = errors.New("SameID error"); return } }
|
||||
{ var _ok_ bool; if _v.Golbalbufficon, _ok_ = _buf["golbalbufficon"].(string); !_ok_ { err = errors.New("golbalbufficon error"); return } }
|
||||
|
@ -27,3 +27,16 @@ func RemoveDuplicate(arr []int32) []int32 {
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
func NoContain(exist, all []int32) (contain []int32) {
|
||||
existMap := make(map[int32]bool)
|
||||
for _, b := range exist {
|
||||
existMap[b] = true
|
||||
}
|
||||
for _, a := range all {
|
||||
if !existMap[a] {
|
||||
contain = append(contain, a)
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user