diff --git a/bin/json/game_activereward.json b/bin/json/game_activereward.json index 932e88a92..b31f17e46 100644 --- a/bin/json/game_activereward.json +++ b/bin/json/game_activereward.json @@ -1,7 +1,6 @@ [ { "key": 1, - "id_tag": 2, "active": 40, "reword": [ { @@ -15,7 +14,6 @@ }, { "key": 2, - "id_tag": 2, "active": 80, "reword": [ { @@ -34,7 +32,6 @@ }, { "key": 3, - "id_tag": 2, "active": 120, "reword": [ { @@ -53,7 +50,6 @@ }, { "key": 4, - "id_tag": 2, "active": 160, "reword": [ { diff --git a/bin/json/game_skillafteratk.json b/bin/json/game_skillafteratk.json index 4662b4790..b224ab7b6 100644 --- a/bin/json/game_skillafteratk.json +++ b/bin/json/game_skillafteratk.json @@ -6960,7 +6960,7 @@ "ExecuteCnt": 1, "Type": 14, "Argu": [ - 100 + 300 ], "FollowSK": [], "SucFollowSK": [], @@ -10309,7 +10309,7 @@ "Argu": [ 1, 4, - 1000 + 1500 ], "FollowSK": [], "SucFollowSK": [], @@ -10323,7 +10323,7 @@ { "Id": 253001112, "EmitPR": 1000, - "From": 2, + "From": 11, "Where": [], "Order": "Type=Rand", "Limit": 2, @@ -10332,7 +10332,7 @@ "Argu": [ 1, 4, - 1000 + 1500 ], "FollowSK": [], "SucFollowSK": [], @@ -10355,7 +10355,7 @@ "Argu": [ 1, 4, - 400 + 700 ], "FollowSK": [], "SucFollowSK": [ @@ -10880,7 +10880,7 @@ "Argu": [ 1, 4, - 4000 + 3600 ], "FollowSK": [], "SucFollowSK": [ @@ -10952,7 +10952,7 @@ "Argu": [ 1, 4, - 4500 + 3600 ], "FollowSK": [], "SucFollowSK": [ @@ -10978,7 +10978,7 @@ 390001105, 250, 1, - 1 + 2 ], "FollowSK": [], "SucFollowSK": [], @@ -11114,7 +11114,7 @@ }, { "Id": 251005112, - "EmitPR": 200, + "EmitPR": 1000, "From": 4, "Where": [], "Order": "", @@ -14327,7 +14327,7 @@ "Argu": [ 1, 4, - 4000 + 3200 ], "FollowSK": [], "SucFollowSK": [ @@ -14442,7 +14442,7 @@ "Argu": [ 1, 4, - 4100 + 3500 ], "FollowSK": [], "SucFollowSK": [ @@ -14467,7 +14467,7 @@ "Argu": [ 1, 4, - 4200 + 3800 ], "FollowSK": [], "SucFollowSK": [ @@ -14492,7 +14492,7 @@ "Argu": [ 1, 4, - 4300 + 4100 ], "FollowSK": [], "SucFollowSK": [ @@ -14517,7 +14517,7 @@ "Argu": [ 1, 4, - 4400 + 4500 ], "FollowSK": [], "SucFollowSK": [ @@ -17722,7 +17722,7 @@ "Argu": [ 1, 4, - 2000 + 2900 ], "FollowSK": [], "SucFollowSK": [], @@ -17792,7 +17792,7 @@ "Argu": [ 1, 4, - 2100 + 3200 ], "FollowSK": [], "SucFollowSK": [], @@ -17815,7 +17815,7 @@ "Argu": [ 1, 4, - 2200 + 3500 ], "FollowSK": [], "SucFollowSK": [], @@ -17838,7 +17838,7 @@ "Argu": [ 1, 4, - 2300 + 3800 ], "FollowSK": [], "SucFollowSK": [], @@ -17861,7 +17861,7 @@ "Argu": [ 1, 4, - 2400 + 4200 ], "FollowSK": [], "SucFollowSK": [], @@ -17955,7 +17955,7 @@ "Argu": [ 1, 4, - 3100 + 3300 ], "FollowSK": [], "SucFollowSK": [], @@ -17978,7 +17978,7 @@ "Argu": [ 1, 4, - 3200 + 3600 ], "FollowSK": [], "SucFollowSK": [], @@ -18001,7 +18001,7 @@ "Argu": [ 1, 4, - 3300 + 3900 ], "FollowSK": [], "SucFollowSK": [], @@ -18024,7 +18024,7 @@ "Argu": [ 1, 4, - 3400 + 4300 ], "FollowSK": [], "SucFollowSK": [], @@ -18047,7 +18047,7 @@ "Argu": [ 1, 4, - 4000 + 5000 ], "FollowSK": [], "SucFollowSK": [ @@ -18098,7 +18098,7 @@ "Argu": [ 1, 4, - 4100 + 5300 ], "FollowSK": [], "SucFollowSK": [ @@ -18126,7 +18126,7 @@ "Argu": [ 1, 4, - 4200 + 5600 ], "FollowSK": [], "SucFollowSK": [ @@ -18154,7 +18154,7 @@ "Argu": [ 1, 4, - 4300 + 5900 ], "FollowSK": [], "SucFollowSK": [ @@ -18182,7 +18182,7 @@ "Argu": [ 1, 4, - 4400 + 6300 ], "FollowSK": [], "SucFollowSK": [ @@ -21720,7 +21720,7 @@ "Type": 3, "Argu": [ 390001105, - 1000, + 500, 1, 1 ], @@ -22685,7 +22685,7 @@ "Type": 3, "Argu": [ 390001008, - 1000, + 500, 1, 2 ], @@ -23908,13 +23908,13 @@ "From": 1, "Where": [], "Order": "", - "Limit": 1, + "Limit": 10, "ExecuteCnt": 1, "Type": 5, "Argu": [ 2, 2, - 300 + 200 ], "FollowSK": [], "SucFollowSK": [], @@ -24347,7 +24347,7 @@ { "Id": 213005312, "EmitPR": 1000, - "From": 1, + "From": 3, "Where": [], "Order": "", "Limit": 1, @@ -24370,7 +24370,7 @@ { "Id": 213005313, "EmitPR": 1000, - "From": 9, + "From": 12, "Where": [], "Order": "", "Limit": 1, @@ -24420,7 +24420,7 @@ { "Id": 213005322, "EmitPR": 1000, - "From": 1, + "From": 3, "Where": [], "Order": "", "Limit": 1, @@ -24443,10 +24443,10 @@ { "Id": 213005323, "EmitPR": 1000, - "From": 9, + "From": 12, "Where": [], "Order": "", - "Limit": 1, + "Limit": 10, "ExecuteCnt": 1, "Type": 15, "Argu": [ @@ -24493,7 +24493,7 @@ { "Id": 213005332, "EmitPR": 1000, - "From": 1, + "From": 3, "Where": [], "Order": "", "Limit": 1, @@ -24516,7 +24516,7 @@ { "Id": 213005333, "EmitPR": 1000, - "From": 9, + "From": 12, "Where": [], "Order": "", "Limit": 1, @@ -26886,7 +26886,7 @@ "Type": 3, "Argu": [ 390001404, - 1000, + 800, 1, 3 ], @@ -28603,7 +28603,9 @@ 4, 6000 ], - "FollowSK": [], + "FollowSK": [ + 255002312 + ], "SucFollowSK": [], "FailFollowSK": [], "MustHit": false, @@ -28627,9 +28629,7 @@ 1, 1 ], - "FollowSK": [ - 255002312 - ], + "FollowSK": [], "SucFollowSK": [], "FailFollowSK": [], "MustHit": false, @@ -28912,6 +28912,122 @@ "RevisiCondition": "", "RevisiParams": [] }, + { + "Id": 214002121, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 1, + "ExecuteCnt": 1, + "Type": 1, + "Argu": [ + 1, + 4, + 1100, + 1, + 1, + 45 + ], + "FollowSK": [ + 214002112, + 214002211 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 214002131, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 1, + "ExecuteCnt": 1, + "Type": 1, + "Argu": [ + 1, + 4, + 1200, + 1, + 1, + 45 + ], + "FollowSK": [ + 214002112, + 214002211 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 214002141, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 1, + "ExecuteCnt": 1, + "Type": 1, + "Argu": [ + 1, + 4, + 1300, + 1, + 1, + 45 + ], + "FollowSK": [ + 214002112, + 214002211 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 214002151, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 1, + "ExecuteCnt": 1, + "Type": 1, + "Argu": [ + 1, + 4, + 1400, + 1, + 1, + 45 + ], + "FollowSK": [ + 214002112, + 214002211 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, { "Id": 214002211, "EmitPR": 1000, @@ -28997,7 +29113,7 @@ 500, 1, 11, - 20 + 150 ], "FollowSK": [ 214002312, @@ -29022,7 +29138,7 @@ "Type": 3, "Argu": [ 390001006, - 100, + 700, 1, 2 ], @@ -29035,6 +29151,122 @@ "RevisiCondition": "", "RevisiParams": [] }, + { + "Id": 214002321, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 8, + "Type": 1, + "Argu": [ + 1, + 4, + 600, + 1, + 11, + 150 + ], + "FollowSK": [ + 214002312, + 214002211 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 214002331, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 8, + "Type": 1, + "Argu": [ + 1, + 4, + 700, + 1, + 11, + 150 + ], + "FollowSK": [ + 214002312, + 214002211 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 214002341, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 8, + "Type": 1, + "Argu": [ + 1, + 4, + 800, + 1, + 11, + 150 + ], + "FollowSK": [ + 214002312, + 214002211 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 214002351, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 8, + "Type": 1, + "Argu": [ + 1, + 4, + 900, + 1, + 11, + 150 + ], + "FollowSK": [ + 214002312, + 214002211 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, { "Id": 243007111, "EmitPR": 1000, @@ -31020,7 +31252,7 @@ "ExecuteCnt": 1, "Type": 2, "Argu": [ - 451010111, + 451010211, -1, -1 ], @@ -32513,8 +32745,8 @@ "Type": 2, "Argu": [ 444001113, - 1, - 1 + -1, + -1 ], "FollowSK": [], "SucFollowSK": [], @@ -32528,7 +32760,7 @@ { "Id": 244001114, "EmitPR": 1000, - "From": 2, + "From": 12, "Where": [], "Order": "", "Limit": 1, @@ -32649,13 +32881,13 @@ "Where": [], "Order": "", "Limit": 1, - "ExecuteCnt": 3, + "ExecuteCnt": 1, "Type": 3, "Argu": [ 390001431, 1000, 1, - -1 + 3 ], "FollowSK": [], "SucFollowSK": [], @@ -32776,7 +33008,7 @@ "Argu": [ 1, 4, - 1200 + 3200 ], "FollowSK": [ 235004112 @@ -32826,7 +33058,7 @@ "Type": 2, "Argu": [ 435004211, - 1, + -1, 1 ], "FollowSK": [], @@ -32848,8 +33080,8 @@ "ExecuteCnt": 1, "Type": 8, "Argu": [ + 3, 1, - 1000, 1000 ], "FollowSK": [ @@ -32873,9 +33105,9 @@ "ExecuteCnt": 1, "Type": 8, "Argu": [ + 3, -1, - 700, - 1000 + 700 ], "FollowSK": [], "SucFollowSK": [], @@ -32898,7 +33130,7 @@ "Argu": [ 1, 4, - 650 + 6500 ], "FollowSK": [ 235004312 @@ -58071,5 +58303,878 @@ "DpsCondition": "", "RevisiCondition": "", "RevisiParams": [] + }, + { + "Id": 275001111, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 1, + "ExecuteCnt": 1, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [ + 275001112, + 275001113 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275001112, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001008, + 1000, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275001113, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001105, + 300, + 1, + 1 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275001211, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 2, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [ + 275001212, + 275001213 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275001212, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001102, + 500, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275001213, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001006, + 500, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275001311, + "EmitPR": 1000, + "From": 3, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 391000065, + 1000, + 1, + -1 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275002111, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 1, + "ExecuteCnt": 1, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [ + 275002112, + 275002113 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275002112, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001008, + 1000, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275002113, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001544, + 300, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275002211, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 2, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [ + 275002212, + 275002213 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275002212, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001401, + 500, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275002213, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001404, + 500, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275002311, + "EmitPR": 1000, + "From": 3, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001550, + 1000, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275002312, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001508, + 1000, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275004111, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "Type=Rand", + "Limit": 3, + "ExecuteCnt": 3, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [ + 275003112 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275004112, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001102, + 1000, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275004211, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 1, + "ExecuteCnt": 1, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [ + 275003212 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275004212, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 1, + "ExecuteCnt": 1, + "Type": 10, + "Argu": [ + 1, + 1 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275004311, + "EmitPR": 1000, + "From": 3, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 8, + "Argu": [ + 1, + -1, + 1000 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275004312, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 105, + "DpsCondition": "", + "RevisiCondition": "1", + "RevisiParams": [ + 50 + ] + }, + { + "Id": 275003111, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "Type=Rand", + "Limit": 3, + "ExecuteCnt": 3, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 101, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [ + 200 + ] + }, + { + "Id": 275003211, + "EmitPR": 1000, + "From": 3, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 2, + "Argu": [ + 475003211, + -1, + 1 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275003212, + "EmitPR": 1000, + "From": 12, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001001, + 1000, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275003213, + "EmitPR": 1000, + "From": 12, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001002, + 1000, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275003214, + "EmitPR": 1000, + "From": 12, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001420, + 1000, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275003311, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 2, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 108, + "DpsCondition": "", + "RevisiCondition": "3", + "RevisiParams": [ + 50 + ] + }, + { + "Id": 275005111, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "", + "Limit": 2, + "ExecuteCnt": 2, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [ + 275005112, + 275005113 + ], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275005112, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 10, + "Argu": [ + 1, + 1 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275005113, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 12, + "Argu": [ + -300 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275005211, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 2, + "Type": 1, + "Argu": [ + 1, + 4, + 3000 + ], + "FollowSK": [], + "SucFollowSK": [ + 275005212, + 275005213 + ], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275005212, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 390001404, + 500, + 1, + 2 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275005213, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 2, + "Type": 28, + "Argu": [ + 1, + 391000066, + 1, + 4, + 200 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275005311, + "EmitPR": 1000, + "From": 3, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 391000068, + 1000, + 1, + -1 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275005312, + "EmitPR": 1000, + "From": 4, + "Where": [], + "Order": "PropertyUp=5", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 391000068, + 1000, + 1, + -1 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] + }, + { + "Id": 275005313, + "EmitPR": 1000, + "From": 2, + "Where": [], + "Order": "", + "Limit": 10, + "ExecuteCnt": 1, + "Type": 3, + "Argu": [ + 391000067, + 1000, + 1, + -1 + ], + "FollowSK": [], + "SucFollowSK": [], + "FailFollowSK": [], + "MustHit": false, + "DpsRevisiType": 0, + "DpsCondition": "", + "RevisiCondition": "", + "RevisiParams": [] } ] \ No newline at end of file diff --git a/bin/json/game_skillatk.json b/bin/json/game_skillatk.json index 3c9ea7099..bcdfe7c48 100644 --- a/bin/json/game_skillatk.json +++ b/bin/json/game_skillatk.json @@ -4954,7 +4954,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_115004211_1", - "text": "攻击敌方全体,伤害为自身攻击力350%,85%概率为目标附加1回合[color=#e5621b]眩晕[/color]。" + "text": "攻击敌方全体,伤害为自身攻击力350%,75%概率为目标附加1回合[color=#e5621b]眩晕[/color]。" }, "buffid": [ 390001105 @@ -7445,7 +7445,9 @@ "key": "skill_skill_atk_Desc_151004111_1", "text": "攻击一个目标,造成2次攻击力125%的伤害,20%概率添加1回合[color=#e5621b]防御下降[/color]。" }, - "buffid": [], + "buffid": [ + 390001007 + ], "map": "" }, { @@ -7475,7 +7477,9 @@ "key": "skill_skill_atk_Desc_151004211_1", "text": "攻击一个目标,造成攻击力400%的伤害,添加2回合[color=#e5621b]攻击下降[/color] 。" }, - "buffid": [], + "buffid": [ + 390001006 + ], "map": "" }, { @@ -7533,11 +7537,9 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_151005211_1", - "text": "对敌方全体,造成2次攻击力200%的伤害并降低目标10%行动值" + "text": "对敌方全体造成合计攻击力400%的伤害并降低目标10%行动值" }, - "buffid": [ - 390001006 - ], + "buffid": [], "map": "" }, { @@ -18399,7 +18401,9 @@ "key": "skill_skill_atk_Desc_113005311_2", "text": "技能冷却减少1回合。" }, - "buffid": [], + "buffid": [ + 390001001 + ], "map": "" }, { @@ -18430,7 +18434,9 @@ "key": "skill_skill_atk_Desc_113005311_3", "text": "技能冷却减少1回合。" }, - "buffid": [], + "buffid": [ + 390001001 + ], "map": "" }, { @@ -18489,7 +18495,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_124009111_1", - "text": "云朵先生对敌方1个目标造成自身攻击力300%的伤害,若此次伤害触发了暴击,则使自身[color=#37d8a9]暴击提升至[/color]效果延长1回合。" + "text": "云朵先生对敌方1个目标造成自身攻击力300%的伤害,若此次伤害触发了暴击,则使自身[color=#37d8a9]暴击提升[/color]效果延长1回合。" }, "buffid": [ 390001004 @@ -18646,7 +18652,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_124009211_1", - "text": "云朵先生对敌方1个目标造成3次自身攻击力135%的伤害,并有50%的概率降低目标15%的行动值。触发暴击时为目标额外附加2回合【速度下降】效果。" + "text": "云朵先生对敌方1个目标造成3次自身攻击力135%的伤害,并有50%的概率降低目标15%的行动值。触发暴击时为目标额外附加2回合[color=#e5621b]速度下降[/color]效果。" }, "buffid": [ 390001008 @@ -18804,7 +18810,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_124009311_1", - "text": "云朵先生为自身附加2回合[color=#37d8a9]暴击提升至[/color]效果,之后对敌方目标造成3次自身攻击力150%的伤害,若此次伤害触发了暴击,则有40%的概率[color=#e5621b]冰冻[/color]目标,持续1回合。" + "text": "云朵先生为自身附加2回合[color=#37d8a9]暴击提升[/color]效果,之后对敌方目标造成3次自身攻击力150%的伤害,若此次伤害触发了暴击,则有40%的概率[color=#e5621b]冰冻[/color]目标,持续1回合。" }, "buffid": [ 390001004, @@ -19487,7 +19493,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_151006211_1", - "text": "对敌方发起1次攻击,造成攻击力300%的伤害。" + "text": "对敌方发起3次攻击,造成攻击力300%的伤害。" }, "buffid": [], "map": "" @@ -20323,9 +20329,11 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_155001111_1", - "text": "对敌方发起一次攻击,并造成1次伤害。" + "text": "对敌方发起一次攻击,并造成1次伤害,有80%概率附加3回合[color=#e5621b]流血[/color]状态。" }, - "buffid": [], + "buffid": [ + 390001404 + ], "map": "" }, { @@ -20354,7 +20362,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_155001211_1", - "text": "(被动)自身生命值越低,造成的伤害越高。" + "text": "(被动)若敌人死亡则立即获得回合。" }, "buffid": [], "map": "" @@ -20384,9 +20392,11 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_155001311_1", - "text": "对敌方目标造成1次伤害。" + "text": "对敌方目标造成1次伤害,并附带1回合[color=#e5621b]眩晕[/color]。" }, - "buffid": [], + "buffid": [ + 390001401 + ], "map": "" }, { @@ -20414,7 +20424,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_155002111_1", - "text": "对敌方全体目标发起一次攻击。" + "text": "对敌方全体目标发起一次攻击,并附加2回合[color=#e5621b]攻击下降[/color]。" }, "buffid": [], "map": "" @@ -20440,7 +20450,6 @@ "Id": [ 255002211, 255002212, - 255002213, 255002218 ] }, @@ -20477,7 +20486,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_155002311_1", - "text": "对敌方造成1次伤害。" + "text": "对敌方造成1次伤害,有一定概率附加1回合[color=#e5621b]眩晕[/color]。" }, "buffid": [], "map": "" @@ -20832,7 +20841,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_153003111_1", - "text": "对敌方1个目标发起两段攻击力10%的伤害,并有20%概率为自身附加2回合[color=#37d8a9]免疫[/color] 状态。" + "text": "对敌方1个目标发起两段攻击力150%的伤害,并有20%概率为自身附加2回合[color=#37d8a9]免疫[/color] 状态。" }, "buffid": [ 390001111 @@ -21305,7 +21314,7 @@ { "id": 114002111, "level": 1, - "MaxLV": 1, + "MaxLV": 5, "UnavailablePlayTypes": [], "Name": { "key": "skill_skill_atk_Name_114002111", @@ -21327,7 +21336,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_114002111_1", - "text": "大龙对敌方1个目标造成攻击力100%的伤害,追加自身最大生命值4.5%的伤害,并有50%概率附加1回合[color=#e5621b]挑衅[/color] 状态。" + "text": "大龙对敌方1个目标造成攻击力30%的伤害,追加自身最大生命值6%的伤害,并有50%概率附加1回合[color=#e5621b]挑衅[/color] 状态。" }, "buffid": [ 390001110 @@ -21392,7 +21401,129 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_114002311_1", - "text": "攻击敌方,伤害为自身攻击力100%和自身已损失生命值15%,70%概率为目标附加2回合[color=#e5621b]攻击下降[/color]。" + "text": "攻击敌方,伤害为自身攻击力400%和自身已损失生命值15%,70%概率为目标附加2回合[color=#e5621b]攻击下降[/color]。" + }, + "buffid": [ + 390001426 + ], + "map": "" + }, + { + "id": 114002311, + "level": 2, + "MaxLV": 5, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_114002311", + "text": "弱肉强食" + }, + "ico": "jn_14002_3", + "CorrectPos": 0, + "IsMelee": 1, + "act": "Skill_3", + "Type": 1, + "CD": 4, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 214002321 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_114002311_2", + "text": "伤害提升480%。" + }, + "buffid": [], + "map": "" + }, + { + "id": 114002311, + "level": 3, + "MaxLV": 5, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_114002311", + "text": "弱肉强食" + }, + "ico": "jn_14002_3", + "CorrectPos": 0, + "IsMelee": 1, + "act": "Skill_3", + "Type": 1, + "CD": 4, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 214002331 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_114002311_3", + "text": "伤害提升560%。" + }, + "buffid": [], + "map": "" + }, + { + "id": 114002311, + "level": 4, + "MaxLV": 5, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_114002311", + "text": "弱肉强食" + }, + "ico": "jn_14002_3", + "CorrectPos": 0, + "IsMelee": 1, + "act": "Skill_3", + "Type": 1, + "CD": 4, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 214002341 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_114002311_4", + "text": "伤害提升640%。" + }, + "buffid": [], + "map": "" + }, + { + "id": 114002311, + "level": 5, + "MaxLV": 5, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_114002311", + "text": "弱肉强食" + }, + "ico": "jn_14002_3", + "CorrectPos": 0, + "IsMelee": 1, + "act": "Skill_3", + "Type": 1, + "CD": 4, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 214002351 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_114002311_5", + "text": "伤害提升720%。" }, "buffid": [ 390001426 @@ -22783,10 +22914,12 @@ 251010112 ] }, - "passSkill": [], + "passSkill": [ + 251010112 + ], "Desc": { "key": "skill_skill_atk_Desc_151010111_1", - "text": "对敌方一个目标造成100%攻击力的伤害,触发暴击时位自身回复30%基于伤害的生命值。" + "text": "对敌方一个目标造成300%攻击力的伤害,触发暴击时为自身回复30%基于伤害的生命值。" }, "buffid": [], "map": "" @@ -22813,7 +22946,9 @@ 251010211 ] }, - "passSkill": [], + "passSkill": [ + 251010212 + ], "Desc": { "key": "skill_skill_atk_Desc_151010211_1", "text": "对敌方一个目标发起4段攻击,每段可造成攻击力100%的伤害,每段触发暴击时增加自身15%行动值。" @@ -25191,7 +25326,7 @@ "passSkill": [], "Desc": { "key": "skill_skill_atk_Desc_153002111_1", - "text": "对敌方一个目标发起两段攻击120%的伤害,每段为自身回复5%最大生命值。" + "text": "对敌方一个目标发起两段攻击120%的伤害,回复造成伤害5%的最大生命值。" }, "buffid": [], "map": "" @@ -43757,5 +43892,464 @@ }, "buffid": [], "map": "" + }, + { + "id": 175001111, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175001111", + "text": "" + }, + "ico": "jn_33003_1", + "CorrectPos": 0, + "IsMelee": 0, + "act": "Skill_1", + "Type": 1, + "CD": 0, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275001111 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175001111_1", + "text": "攻击1名敌人,附加2回合速度下降,并有30%概率附加1回合【眩晕】。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175001211, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175001211", + "text": "" + }, + "ico": "jn_33003_2", + "CorrectPos": 0, + "IsMelee": 0, + "act": "Skill_2", + "Type": 1, + "CD": 4, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275001211 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175001211_1", + "text": "攻击全体敌人两次,各以50%概率附加2回合【命中下降】和【攻击下降】。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175001311, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175001311", + "text": "" + }, + "ico": "jn_33003_3", + "CorrectPos": 0, + "IsMelee": 0, + "act": "Skill_3", + "Type": 2, + "CD": 0, + "Where": [], + "Target": 0, + "ChildSkill": { + "Id": [ + 275001311 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175001311_1", + "text": "被动:从弱势属性英雄受到的伤害增加50%,给优势属性的英雄造成的伤害增加50%。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175002111, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175002111", + "text": "" + }, + "ico": "jn_51005_1", + "CorrectPos": 0, + "IsMelee": 1, + "act": "Skill_1", + "Type": 1, + "CD": 0, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275002111 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175002111_1", + "text": "攻击1名敌人,附加2回合速度下降,并有30%概率附加1回合【忘却】。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175002211, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175002211", + "text": "" + }, + "ico": "jn_51005_2", + "CorrectPos": 0, + "IsMelee": 1, + "act": "Skill_2", + "Type": 1, + "CD": 4, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275002211 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175002211_1", + "text": "攻击全体敌人两次,各以50%概率附加2回合【中毒】和【流血】。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175002311, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175002311", + "text": "" + }, + "ico": "jn_51004_3", + "CorrectPos": 0, + "IsMelee": 0, + "act": "Skill_3", + "Type": 2, + "CD": 0, + "Where": [], + "Target": 0, + "ChildSkill": { + "Id": [ + 275002311, + 275002312 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175002311_1", + "text": "被动:自身免疫持续伤害,敌方受到持续伤害效果增加30%。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175003111, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175003111", + "text": "" + }, + "ico": "jn_23004_1", + "CorrectPos": 0, + "IsMelee": 0, + "act": "Skill_2", + "Type": 1, + "CD": 0, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275003111 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175003111_1", + "text": "随机攻击3个敌方,无视目标20%的防御。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175003211, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175003211", + "text": "" + }, + "ico": "jn_23004_2", + "CorrectPos": 0, + "IsMelee": 0, + "act": "Skill_1", + "Type": 2, + "CD": 0, + "Where": [], + "Target": 0, + "ChildSkill": { + "Id": [ + 275003211 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175003211_1", + "text": "被动:受到攻击后为自身附加2回合【攻击提升】、【防御提升】、【护盾】" + }, + "buffid": [], + "map": "" + }, + { + "id": 175003311, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175003311", + "text": "" + }, + "ico": "jn_23004_3", + "CorrectPos": 0, + "IsMelee": 0, + "act": "Skill_3", + "Type": 1, + "CD": 4, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275003311 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175003311_1", + "text": "对敌方全体造成伤害,自身身上增益越多,伤害越高。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175004111, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175004111", + "text": "" + }, + "ico": "jn_53001_1", + "CorrectPos": 0, + "IsMelee": 0, + "act": "Skill_1", + "Type": 1, + "CD": 0, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275004111 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175004111_1", + "text": "随机攻击3个敌方,有概率为目标附加2回合【失手率提升】。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175004211, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175004211", + "text": "" + }, + "ico": "jn_53001_2", + "CorrectPos": 0, + "IsMelee": 1, + "act": "Skill_2", + "Type": 1, + "CD": 3, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275003211 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175004211_1", + "text": "攻击1个敌方,向目标转嫁自身1个减益。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175004311, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175004311", + "text": "" + }, + "ico": "jn_53001_3", + "CorrectPos": 0, + "IsMelee": 1, + "act": "Skill_3", + "Type": 1, + "CD": 4, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275004311, + 275004312 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175004311_1", + "text": "对敌方全体造成伤害,并净化自身所有减益效果,敌方身上减益越多,伤害越高。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175005111, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175005111", + "text": "" + }, + "ico": "jn_14001_1", + "CorrectPos": 0, + "IsMelee": 1, + "act": "Skill_1", + "Type": 1, + "CD": 0, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275005111 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175005111_1", + "text": "对敌方单体目标造成2次伤害,每次向目标转嫁自身1个减益,并击退目标行动值。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175005211, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175005211", + "text": "" + }, + "ico": "jn_14001_2", + "CorrectPos": 0, + "IsMelee": 1, + "act": "Skill_3", + "Type": 1, + "CD": 4, + "Where": [], + "Target": 2, + "ChildSkill": { + "Id": [ + 275005211, + 275005212 + ] + }, + "passSkill": [], + "Desc": { + "key": "skill_skill_atk_Desc_175005211_1", + "text": "对敌方全体目标造成2次伤害,每次有概率为目标附加2回合【流血】。每次攻击每层【维京直觉】造成一定额外伤害。" + }, + "buffid": [], + "map": "" + }, + { + "id": 175005311, + "level": 1, + "MaxLV": 1, + "UnavailablePlayTypes": [], + "Name": { + "key": "skill_skill_atk_Name_175005311", + "text": "" + }, + "ico": "jn_14001_3", + "CorrectPos": 0, + "IsMelee": 0, + "act": "Skill_2", + "Type": 2, + "CD": 0, + "Where": [], + "Target": 0, + "ChildSkill": { + "Id": [ + 275005311, + 275005312, + 275005313 + ] + }, + "passSkill": [ + 275005311, + 275005312, + 275005313 + ], + "Desc": { + "key": "skill_skill_atk_Desc_175005311_1", + "text": "被动:战斗开始时,自身获得1层【维京直觉】,为当前防御最高的敌方附加【标记】,为敌方全体目标附加【维京之吼】。自身受到来自无【标记】目标的伤害大幅降低。每回合结束时,获得2层【维京直觉】。" + }, + "buffid": [], + "map": "" } ] \ No newline at end of file diff --git a/bin/json/game_skillpassive.json b/bin/json/game_skillpassive.json index 21395c5cd..fb0878f8e 100644 --- a/bin/json/game_skillpassive.json +++ b/bin/json/game_skillpassive.json @@ -2252,7 +2252,7 @@ "When": 10, "FromCheck": "Target=3", "TargetCheck": "3", - "MainSkillCheck": "", + "MainSkillCheck": "MainSkillID=151010111", "AfterSkillCheck": "", "BuffCheck": "", "AddCon": [], @@ -2271,7 +2271,7 @@ "When": 10, "FromCheck": "Target=3", "TargetCheck": "3", - "MainSkillCheck": "", + "MainSkillCheck": "MainSkillID=151010211", "AfterSkillCheck": "", "BuffCheck": "", "AddCon": [], @@ -2424,8 +2424,8 @@ "Id": 444001113, "When": 10, "FromCheck": "Target=3", - "TargetCheck": "3", - "MainSkillCheck": "", + "TargetCheck": "Target=2", + "MainSkillCheck": "MainSkillID=144001111", "AfterSkillCheck": "", "BuffCheck": "", "AddCon": [], @@ -2443,8 +2443,8 @@ "Id": 444001213, "When": 10, "FromCheck": "Target=3", - "TargetCheck": "3", - "MainSkillCheck": "", + "TargetCheck": "Target=2", + "MainSkillCheck": "MainSkillID=144001211", "AfterSkillCheck": "", "BuffCheck": "", "AddCon": [], @@ -2900,13 +2900,11 @@ "Id": 455002213, "When": 16, "FromCheck": "", - "TargetCheck": "Target=3", + "TargetCheck": "Target=3,Hpproless=300", "MainSkillCheck": "", "AfterSkillCheck": "", "BuffCheck": "", - "AddCon": [ - "Hpproless=300" - ], + "AddCon": [], "PasPr": 1000, "PasCorrection": 0, "Type": "CallSkillPas", @@ -7610,5 +7608,45 @@ "Callback": [ 234007216 ] + }, + { + "Id": 475003311, + "When": 16, + "FromCheck": "Target=2", + "TargetCheck": "Target=3", + "MainSkillCheck": "", + "AfterSkillCheck": "", + "BuffCheck": "", + "AddCon": [], + "PasPr": 1000, + "PasCorrection": 0, + "Type": "CallSkillPas", + "MaxEmitTimesInRoundByRole": 0, + "MaxEmitTimes": 0, + "MaxEmitTimesInRound": 1, + "Callback": [ + 275003212, + 275003213, + 275003214 + ] + }, + { + "Id": 475005211, + "When": 16, + "FromCheck": "Target=3,HasBuff=390001211", + "TargetCheck": "", + "MainSkillCheck": "", + "AfterSkillCheck": "", + "BuffCheck": "", + "AddCon": [], + "PasPr": 1000, + "PasCorrection": 0, + "Type": "CallSkillPas", + "MaxEmitTimesInRoundByRole": 0, + "MaxEmitTimes": 0, + "MaxEmitTimesInRound": 1, + "Callback": [ + 275005213 + ] } ] \ No newline at end of file diff --git a/bin/json/game_taskactivereward.json b/bin/json/game_taskactivereward.json index 932e88a92..b31f17e46 100644 --- a/bin/json/game_taskactivereward.json +++ b/bin/json/game_taskactivereward.json @@ -1,7 +1,6 @@ [ { "key": 1, - "id_tag": 2, "active": 40, "reword": [ { @@ -15,7 +14,6 @@ }, { "key": 2, - "id_tag": 2, "active": 80, "reword": [ { @@ -34,7 +32,6 @@ }, { "key": 3, - "id_tag": 2, "active": 120, "reword": [ { @@ -53,7 +50,6 @@ }, { "key": 4, - "id_tag": 2, "active": 160, "reword": [ { diff --git a/bin/json/game_taskround.json b/bin/json/game_taskround.json index 9c9149a38..e879b7dbe 100644 --- a/bin/json/game_taskround.json +++ b/bin/json/game_taskround.json @@ -2,15 +2,16 @@ { "key": 20001, "id_list": 1, - "id_tag": 2, "open": "", + "opentask": "arena", + "id_before": 0, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_1", "text": "本周竞技场挑战10次" }, "type_id": 13000001, "active": 10, - "id_after": 0, "jump_interface": 156, "icon": "wp_icon_0001", "reword": [ @@ -29,15 +30,16 @@ { "key": 20002, "id_list": 2, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20001, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_2", "text": "本周竞技场挑战30次" }, "type_id": 13000002, "active": 10, - "id_after": 0, "jump_interface": 156, "icon": "wp_icon_0001", "reword": [ @@ -56,15 +58,16 @@ { "key": 20003, "id_list": 3, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20002, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_3", "text": "本周竞技场挑战50次" }, "type_id": 13000003, "active": 10, - "id_after": 0, "jump_interface": 156, "icon": "wp_icon_0001", "reword": [ @@ -83,15 +86,16 @@ { "key": 20004, "id_list": 4, - "id_tag": 2, "open": "", + "opentask": "arena", + "id_before": 0, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_4", "text": "本周竞技场胜利10次" }, "type_id": 13000004, "active": 10, - "id_after": 0, "jump_interface": 156, "icon": "wp_icon_0001", "reword": [ @@ -110,15 +114,16 @@ { "key": 20005, "id_list": 5, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20004, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_5", "text": "本周竞技场胜利20次" }, "type_id": 13000005, "active": 10, - "id_after": 0, "jump_interface": 156, "icon": "wp_icon_0001", "reword": [ @@ -137,15 +142,16 @@ { "key": 20006, "id_list": 6, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20005, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_6", "text": "本周竞技场胜利30次" }, "type_id": 13000006, "active": 10, - "id_after": 0, "jump_interface": 156, "icon": "wp_icon_0001", "reword": [ @@ -164,15 +170,16 @@ { "key": 20007, "id_list": 7, - "id_tag": 2, "open": "", + "opentask": "vikingexpedition_experience", + "id_before": 0, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_7", "text": "本周累计梦境回廊消耗300体力" }, "type_id": 13000007, "active": 10, - "id_after": 0, "jump_interface": 11012, "icon": "wp_icon_0001", "reword": [ @@ -191,15 +198,16 @@ { "key": 20008, "id_list": 8, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20007, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_8", "text": "本周累计梦境回廊消耗600体力" }, "type_id": 13000008, "active": 10, - "id_after": 0, "jump_interface": 11012, "icon": "wp_icon_0001", "reword": [ @@ -218,15 +226,16 @@ { "key": 20009, "id_list": 9, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20008, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_9", "text": "本周累计梦境回廊消耗1000体力" }, "type_id": 13000009, "active": 10, - "id_after": 0, "jump_interface": 11012, "icon": "wp_icon_0002", "reword": [ @@ -245,15 +254,16 @@ { "key": 20010, "id_list": 10, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 0, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_10", "text": "本周累计消耗3000000点金币" }, "type_id": 13000010, "active": 10, - "id_after": 0, "jump_interface": 122, "icon": "wp_icon_0003", "reword": [ @@ -272,15 +282,16 @@ { "key": 20011, "id_list": 11, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20010, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_11", "text": "本周累计消耗6000000点金币" }, "type_id": 13000011, "active": 10, - "id_after": 0, "jump_interface": 122, "icon": "wp_icon_0004", "reword": [ @@ -299,15 +310,16 @@ { "key": 20012, "id_list": 12, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20011, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_12", "text": "本周累计消耗10000000点金币" }, "type_id": 13000012, "active": 10, - "id_after": 0, "jump_interface": 122, "icon": "wp_icon_0005", "reword": [ @@ -326,15 +338,16 @@ { "key": 20013, "id_list": 13, - "id_tag": 2, "open": "", + "opentask": "vikingexpedition", + "id_before": 0, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_13", "text": "本周累计维京远征消耗300体力" }, "type_id": 13000013, "active": 10, - "id_after": 0, "jump_interface": 11012, "icon": "wp_icon_0006", "reword": [ @@ -353,15 +366,16 @@ { "key": 20014, "id_list": 14, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20013, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_14", "text": "本周累计维京远征消耗600体力" }, "type_id": 13000014, "active": 10, - "id_after": 0, "jump_interface": 11012, "icon": "wp_icon_0007", "reword": [ @@ -380,15 +394,16 @@ { "key": 20015, "id_list": 15, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20014, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_15", "text": "本周累计维京远征消耗1000体力" }, "type_id": 13000015, "active": 10, - "id_after": 0, "jump_interface": 11012, "icon": "wp_icon_0008", "reword": [ @@ -407,15 +422,16 @@ { "key": 20016, "id_list": 16, - "id_tag": 2, "open": "", + "opentask": "hunting", + "id_before": 0, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_16", "text": "本周累计猎魂挑战消耗300体力" }, "type_id": 13000016, "active": 10, - "id_after": 0, "jump_interface": 168, "icon": "wp_icon_0009", "reword": [ @@ -434,15 +450,16 @@ { "key": 20017, "id_list": 17, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20016, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_17", "text": "本周累计猎魂挑战消耗600体力" }, "type_id": 13000017, "active": 10, - "id_after": 0, "jump_interface": 168, "icon": "wp_icon_0010", "reword": [ @@ -461,15 +478,16 @@ { "key": 20018, "id_list": 18, - "id_tag": 2, "open": "", + "opentask": "", + "id_before": 20017, + "Id_after": 0, "task_display": { "key": "task_task_round_task_display_18", "text": "本周累计猎魂挑战消耗1000体力" }, "type_id": 13000018, "active": 10, - "id_after": 0, "jump_interface": 168, "icon": "wp_icon_0011", "reword": [ diff --git a/bin/json/game_worldtask.json b/bin/json/game_worldtask.json index 86499022d..26d6ef97c 100644 --- a/bin/json/game_worldtask.json +++ b/bin/json/game_worldtask.json @@ -5049,15 +5049,15 @@ "icon": "25001", "task_name": { "key": "worldtask_world_task_task_name_122", - "text": "商队任务1-任意1装备+3" + "text": "兄弟,带一程" }, "task_details": { "key": "worldtask_world_task_task_details_122", - "text": "商队任务1-任意1装备+3" + "text": "途中偶遇的守护者,期望我们带他前往某个城市。" }, "npctxt": { "key": "worldtask_world_task_npctxt_122", - "text": "商队任务1-任意1装备+3" + "text": "兄弟,带一程" }, "get_item": [], "trigger": 0, @@ -5068,7 +5068,7 @@ "deliver_npc": 50018, "taskend_removeitem": [], "auto_accept": 0, - "tasktips": 1, + "tasktips": 0, "lock_add": 1, "reword": [ { @@ -5094,15 +5094,15 @@ "icon": "25001", "task_name": { "key": "worldtask_world_task_task_name_123", - "text": "商队任务1-任意2装备+3" + "text": "特产不嫌多" }, "task_details": { "key": "worldtask_world_task_task_details_123", - "text": "商队任务1-任意2装备+3" + "text": "一名守护者希望我们帮他购买一些特产,并承诺会用其他东西作为报酬。" }, "npctxt": { "key": "worldtask_world_task_npctxt_123", - "text": "商队任务1-任意2装备+3" + "text": "特产不嫌多" }, "get_item": [], "trigger": 0, @@ -5113,7 +5113,7 @@ "deliver_npc": 50028, "taskend_removeitem": [], "auto_accept": 0, - "tasktips": 1, + "tasktips": 0, "lock_add": 1, "reword": [ { @@ -5139,15 +5139,15 @@ "icon": "25001", "task_name": { "key": "worldtask_world_task_task_name_124", - "text": "商队任务1-任意3装备+3" + "text": "资助城市" }, "task_details": { "key": "worldtask_world_task_task_details_124", - "text": "商队任务1-任意3装备+3" + "text": "如今我们稍有资产,守护者希望我们能资助一些城市,当地人会给予一些报酬。" }, "npctxt": { "key": "worldtask_world_task_npctxt_124", - "text": "商队任务1-任意3装备+3" + "text": "资助城市" }, "get_item": [], "trigger": 0, @@ -5158,7 +5158,7 @@ "deliver_npc": 50038, "taskend_removeitem": [], "auto_accept": 0, - "tasktips": 1, + "tasktips": 0, "lock_add": 1, "reword": [ { @@ -5184,15 +5184,15 @@ "icon": "25001", "task_name": { "key": "worldtask_world_task_task_name_125", - "text": "商队任务2-维京远征2次" + "text": "雪中送炭" }, "task_details": { "key": "worldtask_world_task_task_details_125", - "text": "商队任务2-维京远征2次" + "text": "一些城市急需某些道具度过难关,我们或许应当帮助他们运转一下。" }, "npctxt": { "key": "worldtask_world_task_npctxt_125", - "text": "商队任务2-维京远征2次" + "text": "雪中送炭" }, "get_item": [], "trigger": 0, @@ -5203,7 +5203,7 @@ "deliver_npc": 50048, "taskend_removeitem": [], "auto_accept": 0, - "tasktips": 1, + "tasktips": 0, "lock_add": 1, "reword": [ { diff --git a/comm/imodule.go b/comm/imodule.go index dd9281f0a..60bf32d47 100644 --- a/comm/imodule.go +++ b/comm/imodule.go @@ -547,6 +547,8 @@ type ( } //埋点中心 IBuried interface { + //完成任务埋点 + CompleteCondition(uid string, condiId int32) (err error) //埋点中心触发 TriggerBuried(session IUserSession, burieds ...*pb.BuriedParam) //校验条件是否达成 返回未完成列表 diff --git a/modules/buried/module.go b/modules/buried/module.go index 69037dfe5..9f1ef9620 100644 --- a/modules/buried/module.go +++ b/modules/buried/module.go @@ -86,6 +86,89 @@ func (this *Buried) Rpc_ModuleBuriedTrigger(ctx context.Context, req *pb.Rpc_Mod return } +//完成任务 +func (this *Buried) CompleteCondition(uid string, condiId int32) (err error) { + var ( + model *buriedModel + bdatas *pb.DBBuried + bitem *pb.DBBuriedConItem + conf *cfg.GameBuriedCondiData + ok bool + bdata *pb.DBBuriedItem + ) + + if model, err = this.modelBuried.getburiedModel(uid); err != nil { + return + } + if bdatas, err = model.getUserBurieds(uid); err != nil { + return + } + + this.Debug("完成埋点!", log.Field{Key: "condiId", Value: condiId}) + lock, _ := model.userlock(uid) + err = lock.Lock() + if err != nil { + this.Error("埋点分布式锁失效 err!", log.Field{Key: "uid", Value: uid}, log.Field{Key: "err", Value: err.Error()}) + return + } + defer lock.Unlock() + if conf, err = this.configure.getburiedcondidata(condiId); err != nil { + return + } + if bdata, ok = bdatas.Items[conf.Type]; ok { + ok = false + for _, v1 := range bdata.Condi { + if v1.Conid == condiId { + ok = true + if v1.Finish != pb.BuriedItemFinishState_buried_finish { + if conf.Ctype == ctype_once { //完成后自动锁定 + v1.State = pb.BuriedItemState_Freeze + } else if conf.Ctype == ctype_repeat { + v1.State = pb.BuriedItemState_Sleep + } else if conf.Ctype == ctype_daily { + v1.State = pb.BuriedItemState_Sleep + } else if conf.Ctype == ctype_weekly { + v1.State = pb.BuriedItemState_Sleep + } + v1.Value = conf.Value + v1.Finish = pb.BuriedItemFinishState_buried_finish + } + } + } + } else { + bdata = &pb.DBBuriedItem{ + Btype: conf.Type, + Condi: make([]*pb.DBBuriedConItem, 0), + } + bdatas.Items[conf.Type] = bdata + } + if !ok { //未找到 初始化一个 + bitem = &pb.DBBuriedConItem{ + Conid: condiId, + State: pb.BuriedItemState_Activated, + Value: conf.Value, + Statistics: make([]string, 0), + Timestamp: time.Now().Unix(), + Finish: pb.BuriedItemFinishState_buried_finish, + } + if conf.Ctype == ctype_once { //完成后自动锁定 + bitem.State = pb.BuriedItemState_Freeze + } else if conf.Ctype == ctype_repeat { + bitem.State = pb.BuriedItemState_Sleep + } else if conf.Ctype == ctype_daily { + bitem.State = pb.BuriedItemState_Sleep + } else if conf.Ctype == ctype_weekly { + bitem.State = pb.BuriedItemState_Sleep + } + bdata.Condi = append(bdata.Condi, bitem) + } + if err = model.updateUserBurieds(uid, bdatas); err != nil { + this.Error("更新用户埋点数据错误!", log.Field{Key: "err", Value: err.Error()}) + return + } + return +} + // 激活数据采集点 func (this *Buried) ActiveCondition(uid string, condiIds ...int32) (errdata *pb.ErrorData) { var ( diff --git a/modules/gm/module.go b/modules/gm/module.go index ac477a825..acc2bb25b 100644 --- a/modules/gm/module.go +++ b/modules/gm/module.go @@ -663,6 +663,30 @@ func (this *GM) CreateCmd(session comm.IUserSession, cmd string) (errdata *pb.Er } module1.(comm.Imail).SendNewMail(mail, session.GetUserId()) + this.Debug("使用bingo命令:uid = %s ", + log.Field{Key: "uid", Value: session.GetUserId()}, + log.Field{Key: "0", Value: datas[0]}, + ) + } else if len(datas) == 2 && (datas[0] == "buried") { + var ( + condiId int + err error + ) + condiId, err = strconv.Atoi(datas[1]) + if err != nil { + errdata = &pb.ErrorData{ + Code: pb.ErrorCode_ReqParameterError, + Title: pb.ErrorCode_ReqParameterError.ToString(), + } + return + } + module1, err := this.service.GetModule(comm.ModuleBuried) + if err != nil { + return + } + + module1.(comm.IBuried).CompleteCondition(session.GetUserId(), int32(condiId)) + this.Debug("使用bingo命令:uid = %s ", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "0", Value: datas[0]}, diff --git a/modules/modulebase.go b/modules/modulebase.go index 04142a3f9..f65ad39a7 100644 --- a/modules/modulebase.go +++ b/modules/modulebase.go @@ -33,7 +33,6 @@ type ModuleBase struct { ModuleItems comm.IItems //道具背包模块 ModuleHero comm.IHero //英雄模块 ModuleEquipment comm.IEquipment //装备模块 - ModuleTask comm.ITask //任务 ModuleFriend comm.IFriend //好友 ModuleSociaty comm.ISociaty //公会 ModulePrivilege comm.IPrivilege // 月卡 @@ -92,11 +91,6 @@ func (this *ModuleBase) Start() (err error) { } this.ModuleEquipment = module.(comm.IEquipment) - if module, err = this.service.GetModule(comm.ModuleTask); err != nil { - return - } - this.ModuleTask = module.(comm.ITask) - if module, err = this.service.GetModule(comm.ModuleFriend); err != nil { return } diff --git a/modules/reddot/api_get.go b/modules/reddot/api_get.go index e10f724f6..22a8b340f 100644 --- a/modules/reddot/api_get.go +++ b/modules/reddot/api_get.go @@ -23,10 +23,10 @@ func (this *apiComp) Get(session comm.IUserSession, req *pb.ReddotGetReq) (errda _rid := comm.ReddotType(rid) switch _rid { //任务 - case comm.Reddot10101, comm.Reddot10102, comm.Reddot10103, comm.Reddot10201, comm.Reddot10301: - for k, v := range this.module.ModuleTask.Reddot(session, _rid) { - reddot[int32(k)] = v - } + // case comm.Reddot10101, comm.Reddot10102, comm.Reddot10103, comm.Reddot10201, comm.Reddot10301: + // for k, v := range this.module.ModuleTask.Reddot(session, _rid) { + // reddot[int32(k)] = v + // } //主线 case comm.Reddot24101: for k, v := range this.module.mline.Reddot(session, _rid) { diff --git a/modules/reddot/api_getall.go b/modules/reddot/api_getall.go index 2266821c3..05596d0fc 100644 --- a/modules/reddot/api_getall.go +++ b/modules/reddot/api_getall.go @@ -20,14 +20,14 @@ func (this *apiComp) GetAll(session comm.IUserSession, req *pb.ReddotGetAllReq) return } //任务系统 - for k, v := range this.module.ModuleTask.Reddot(session, - comm.Reddot10101, - comm.Reddot10102, - comm.Reddot10103, - comm.Reddot10201, - comm.Reddot10301) { - reddot[int32(k)] = v - } + // for k, v := range this.module.ModuleTask.Reddot(session, + // comm.Reddot10101, + // comm.Reddot10102, + // comm.Reddot10103, + // comm.Reddot10201, + // comm.Reddot10301) { + // reddot[int32(k)] = v + // } //每日任务 for k, v := range this.module.dailytask.Reddot(session, diff --git a/modules/task/api.go b/modules/task/api.go deleted file mode 100644 index 49a542f94..000000000 --- a/modules/task/api.go +++ /dev/null @@ -1,37 +0,0 @@ -package task - -import ( - "go_dreamfactory/lego/core" - "go_dreamfactory/modules" -) - -const ( - TaskSubTypeList = "list" //任务列表 - TaskSubTypeReceive = "receive" //领取 - TaskSubTypeActiveList = "activelist" //活跃度列表 - TaskSubTypeActiveReceive = "activereceive" //活跃度领取 - TaskSubTypeStrategy = "strategy" //卡牌攻略 - TaskSubTypeFinishedPush = "taskfinishedpush" //推送 - TaskSubTypeGetrecord = "getrecord" //任务数据 - TaskSubTypeSend = "send" //触发任务 -) - -type apiComp struct { - modules.MCompGate - service core.IService - module *ModuleTask -} - -// 组件初始化接口 -func (this *apiComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { - err = this.MCompGate.Init(service, module, comp, options) - this.module = module.(*ModuleTask) - this.service = service - return -} - -func (this *apiComp) Start() (err error) { - err = this.MCompGate.Start() - - return -} diff --git a/modules/task/api_activelist.go b/modules/task/api_activelist.go deleted file mode 100644 index 03b74ffd7..000000000 --- a/modules/task/api_activelist.go +++ /dev/null @@ -1,53 +0,0 @@ -package task - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/pb" -) - -// 活跃度列表 -func (this *apiComp) ActiveListCheck(session comm.IUserSession, req *pb.TaskActiveListReq) (errdata *pb.ErrorData) { - if req.TaskTag <= 0 || req.TaskTag > 2 { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ReqParameterError, - Title: pb.ErrorCode_ReqParameterError.ToString(), - } - } - return -} - -func (this *apiComp) ActiveList(session comm.IUserSession, req *pb.TaskActiveListReq) (errdata *pb.ErrorData) { - if errdata = this.ActiveListCheck(session, req); errdata != nil { - return - } - - resp := &pb.TaskActiveListResp{} - defer func() { - session.SendMsg(string(this.module.GetType()), TaskSubTypeActiveList, resp) - }() - - // 获取玩家活跃度 - expand, err := this.module.ModuleUser.GetUserExpand(session.GetUserId()) - if err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } - - if expand != nil { - // 返回活跃度 - if req.TaskTag == int32(comm.TASK_DAILY) { - resp.Active = expand.Activeday - } else if req.TaskTag == int32(comm.TASK_WEEKLY) { - resp.Active = expand.Activeweek - } - } - - //获取当前Tag的活跃度列表 - resp.List = this.module.modelTaskActive.getActiveListByTag(session.GetUserId(), comm.TaskTag(req.TaskTag)) - - return -} diff --git a/modules/task/api_activereceive.go b/modules/task/api_activereceive.go deleted file mode 100644 index 7d57db5e6..000000000 --- a/modules/task/api_activereceive.go +++ /dev/null @@ -1,143 +0,0 @@ -package task - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/lego/sys/log" - "go_dreamfactory/pb" - cfg "go_dreamfactory/sys/configure/structs" -) - -// 活跃度领取 -func (this *apiComp) ActiveReceiveCheck(session comm.IUserSession, req *pb.TaskActiveReceiveReq) (errdata *pb.ErrorData) { - var code pb.ErrorCode - if req.Id == 0 { - code = pb.ErrorCode_TaskIdEmpty - } else if req.TaskTag <= 0 || req.TaskTag > 2 { - code = pb.ErrorCode_TaskTagEmpty - } - errdata = &pb.ErrorData{ - Code: code, - Title: code.ToString(), - } - - return -} - -func (this *apiComp) ActiveReceive(session comm.IUserSession, req *pb.TaskActiveReceiveReq) (errdata *pb.ErrorData) { - var ( - active *pb.DBActivity - err error - ) - - if errdata = this.ActiveReceiveCheck(session, req); errdata != nil { - return - } - uid := session.GetUserId() - - ue, err := this.module.ModuleUser.GetUserExpand(uid) - if err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } - - if ue == nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_UserExpandNull, - Title: pb.ErrorCode_UserExpandNull.ToString(), - Message: err.Error(), - } - return - } - var rewards []*cfg.Gameatn - var flag bool - update := map[string]interface{}{} - // 玩家的 - if active, err = this.module.modelTaskActive.getActiveList(uid); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } - // var activityData *pb.ActivityData - for _, v := range active.ActivityList { - if v.TaskId == req.Id { - if v.Received != 1 { - conf := this.module.configure.getTaskActiveById(v.TaskId) - if conf == nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ConfigNoFound, - Title: pb.ErrorCode_ConfigNoFound.ToString(), - Message: err.Error(), - } - return - } - - if req.TaskTag == int32(comm.TASK_DAILY) { - if ue.Activeday < conf.Active { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_TaskActiveNoenough, - Title: pb.ErrorCode_TaskActiveNoenough.ToString(), - Message: err.Error(), - } - return - } - } else if req.TaskTag == int32(comm.TASK_WEEKLY) { - if ue.Activeweek < conf.Active { - - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_TaskActiveNoenough, - Title: pb.ErrorCode_TaskActiveNoenough.ToString(), - Message: err.Error(), - } - return - } - } - - v.Received = 1 - flag = true - rewards = append(rewards, conf.Reword...) - } - break - } - } - - if flag { - update["activityList"] = active.ActivityList - - if err := this.module.modelTaskActive.Change(session.GetUserId(), update); err != nil { - this.module.Errorf("updateReceive err %v", err) - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } - } - - if len(rewards) > 0 { - //派发奖励 - if errdata = this.module.DispenseRes(session, rewards, true); errdata != nil { - this.module.Error("活跃度奖励", - log.Field{Key: "uid", Value: uid}, - log.Field{Key: "rewards", Value: rewards}, - ) - } - go this.module.ModuleBuried.TriggerBuried(session.Clone(), comm.GetBuriedParam(comm.Rtype171, 1)) - } - - resp := &pb.TaskActiveReceiveResp{ - TaskTag: req.TaskTag, - Id: req.Id, - } - - session.SendMsg(string(this.module.GetType()), TaskSubTypeActiveReceive, resp) - - return -} diff --git a/modules/task/api_list.go b/modules/task/api_list.go deleted file mode 100644 index 7fd35d46e..000000000 --- a/modules/task/api_list.go +++ /dev/null @@ -1,46 +0,0 @@ -package task - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/pb" -) - -// 任务列表 - -func (this *apiComp) ListCheck(session comm.IUserSession, req *pb.TaskListReq) (errdata *pb.ErrorData) { - if req.TaskTag <= 0 || req.TaskTag > 3 { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ReqParameterError, - Title: pb.ErrorCode_ReqParameterError.ToString(), - } - } - return -} - -func (this *apiComp) List(session comm.IUserSession, req *pb.TaskListReq) (errdata *pb.ErrorData) { - if errdata = this.ListCheck(session, req); errdata != nil { - return - } - rsp := &pb.TaskListResp{} - - task := this.module.modelTask.getTaskListByTag(session.GetUserId(), comm.TaskTag(req.TaskTag)) - if task == nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_TaskNotFound, - Title: pb.ErrorCode_TaskNotFound.ToString(), - } - return - } - - switch req.TaskTag { - case int32(comm.TASK_DAILY): - rsp.List = task.DayList - case int32(comm.TASK_WEEKLY): - rsp.List = task.WeekList - case int32(comm.TASK_ACHIEVE): - rsp.List = task.AchieveList - } - - session.SendMsg(string(this.module.GetType()), TaskSubTypeList, rsp) - return -} diff --git a/modules/task/api_receive.go b/modules/task/api_receive.go deleted file mode 100644 index 9f2605d52..000000000 --- a/modules/task/api_receive.go +++ /dev/null @@ -1,228 +0,0 @@ -package task - -import ( - "fmt" - "go_dreamfactory/comm" - "go_dreamfactory/lego/sys/log" - "go_dreamfactory/pb" - cfg "go_dreamfactory/sys/configure/structs" -) - -//任务奖励领取 - -func (this *apiComp) ReceiveCheck(session comm.IUserSession, req *pb.TaskReceiveReq) (errdata *pb.ErrorData) { - var code pb.ErrorCode - if req.Id == 0 { - code = pb.ErrorCode_TaskIdEmpty - } else if req.TaskTag == 0 { - code = pb.ErrorCode_TaskTagEmpty - } - - if code != 0 { - errdata = &pb.ErrorData{ - Code: code, - Title: code.ToString(), - Message: fmt.Sprintf("Id:%v tag:%v", req.Id, req.TaskTag), - } - } - - return -} - -func (this *apiComp) Receive(session comm.IUserSession, req *pb.TaskReceiveReq) (errdata *pb.ErrorData) { - var ( - userTask *pb.DBTask - taskDataList []*pb.TaskData - active *pb.DBActivity - err error - ) - - if errdata = this.ReceiveCheck(session, req); errdata != nil { - return - } - uid := session.GetUserId() - // 获取待领取的任务 - if userTask, err = this.module.modelTask.getUserTask(uid); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_TaskNotFound, - Title: pb.ErrorCode_TaskNotFound.ToString(), - } - return - } - - switch req.TaskTag { - case int32(comm.TASK_DAILY): - taskDataList = userTask.DayList - case int32(comm.TASK_WEEKLY): - taskDataList = userTask.WeekList - case int32(comm.TASK_ACHIEVE): - taskDataList = userTask.AchieveList - } - - var taskData *pb.TaskData - for _, v := range taskDataList { - if v.TaskId == req.Id { - taskData = v - } - } - - //判断是否完成 - if taskData.Status == 0 { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_TaskNoFinished, - Title: pb.ErrorCode_TaskNoFinished.ToString(), - } - return - } - //判断任务是否领取 - if taskData.Received == 1 { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_TaskReceived, - Title: pb.ErrorCode_TaskReceived.ToString(), - } - return - } - - // 待领取的任务配置 - conf := this.module.configure.getTaskById(taskData.TaskId) - if conf == nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ConfigNoFound, - Title: pb.ErrorCode_ConfigNoFound.ToString(), - } - return - } - - // 更新活跃度 - if conf.Active > 0 { - //更新活跃度 - ue, err := this.module.ModuleUser.GetUserExpand(session.GetUserId()) - if err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } - update := make(map[string]interface{}) - if ue != nil { - if comm.TaskTag(req.TaskTag) == comm.TASK_DAILY { - ue.Activeday = ue.Activeday + conf.Active - update["activeday"] = ue.Activeday - } - if comm.TaskTag(req.TaskTag) == comm.TASK_WEEKLY { - ue.Activeweek = ue.Activeweek + conf.Active - update["activeweek"] = ue.Activeweek - } - // 周任务 自动领取奖励 - if comm.TaskTag(req.TaskTag) == comm.TASK_WEEKLY { - TaskActive := make(map[string]interface{}) - if active, err = this.module.modelTaskActive.getActiveList(uid); err != nil { - - } - var rewards []*cfg.Gameatn - var maxTaskId int32 - for _, v := range active.ActivityList { - if v.Received != 1 { - conf := this.module.configure.getTaskActiveById(v.TaskId) - if conf == nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ConfigNoFound, - Title: pb.ErrorCode_ConfigNoFound.ToString(), - Message: err.Error(), - } - return - } - if ue.Activeweek < conf.Active { - continue - } - v.Received = 1 - rewards = append(rewards, conf.Reword...) - } - - maxTaskId = v.TaskId - - } - - if len(rewards) > 0 { - TaskActive["activityList"] = active.ActivityList - - if err := this.module.modelTaskActive.Change(session.GetUserId(), TaskActive); err != nil { - this.module.Errorf("updateReceive err %v", err) - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } - //派发奖励 - if errdata = this.module.DispenseRes(session, rewards, true); errdata != nil { - this.module.Error("活跃度奖励", - log.Field{Key: "uid", Value: uid}, - log.Field{Key: "rewards", Value: rewards}, - ) - } - go this.module.ModuleBuried.TriggerBuried(session.Clone(), comm.GetBuriedParam(comm.Rtype171, 1)) - session.SendMsg(string(this.module.GetType()), "activereceive", &pb.TaskActiveReceivePush{ - TaskTag: int32(comm.TASK_WEEKLY), - Id: maxTaskId, - }) - - } - } - } - - if len(update) > 0 { - if err = this.module.ModuleUser.ChangeUserExpand(session.GetUserId(), update); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } - } - } - - //奖励 - if errdata = this.module.DispenseRes(session, conf.Reword, true); errdata != nil { - this.module.Error("发送奖励", - log.Field{Key: "uid", Value: uid}, - log.Field{Key: "rewards", Value: conf.Reword}, - log.Field{Key: "errdata", Value: errdata}, - ) - return - } - - //更新用户领取状态 - for _, v := range taskDataList { - if v.TaskId == req.Id { - v.Received = 1 - break - } - } - update := map[string]interface{}{} - switch req.TaskTag { - case int32(comm.TASK_DAILY): - update["dayList"] = taskDataList - case int32(comm.TASK_WEEKLY): - update["weekList"] = taskDataList - case int32(comm.TASK_ACHIEVE): - update["achieveList"] = taskDataList - } - - if err := this.module.modelTask.Change(session.GetUserId(), update); err != nil { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_DBError, - Title: pb.ErrorCode_DBError.ToString(), - Message: err.Error(), - } - return - } - - session.SendMsg(string(this.module.GetType()), TaskSubTypeReceive, &pb.TaskReceiveResp{TaskId: taskData.TaskId}) - - return -} diff --git a/modules/task/api_send.go b/modules/task/api_send.go deleted file mode 100644 index 38d8dfe60..000000000 --- a/modules/task/api_send.go +++ /dev/null @@ -1,31 +0,0 @@ -package task - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/pb" -) - -func (this *apiComp) SendCheck(session comm.IUserSession, req *pb.TaskSendReq) (errdata *pb.ErrorData) { - if len(req.Params) == 0 || req.TaskType == 0 { - errdata = &pb.ErrorData{ - Code: pb.ErrorCode_ReqParameterError, - Title: pb.ErrorCode_ReqParameterError.ToString(), - } - } - return -} - -func (this *apiComp) Send(session comm.IUserSession, req *pb.TaskSendReq) (errdata *pb.ErrorData) { - // if imodule, err := this.service.GetModule(comm.ModuleRtask); err == nil { - // if itask, ok := imodule.(comm.IRtask); ok { - // itask.TriggerTask(session.GetUserId(), comm.GetTaskParam(comm.TaskType(req.TaskType), req.Params...)) - // } - // } - - // this.module.ModuleBuried.TriggerBuried(session.Clone(),comm.GetBuriedParam(comm.TaskType(req.TaskType))) - rsp := &pb.TaskSendResp{ - IsSucc: true, - } - session.SendMsg(string(this.module.GetType()), TaskSubTypeSend, rsp) - return -} diff --git a/modules/task/config.go b/modules/task/config.go deleted file mode 100644 index 9b46fec79..000000000 --- a/modules/task/config.go +++ /dev/null @@ -1,201 +0,0 @@ -package task - -import ( - "fmt" - "go_dreamfactory/comm" - "go_dreamfactory/lego/core" - "go_dreamfactory/lego/sys/log" - "go_dreamfactory/modules" - cfg "go_dreamfactory/sys/configure/structs" - "sort" -) - -const ( - gameActiveReward = "game_taskactivereward.json" - gameTaskRound = "game_taskround.json" -) - -type configureComp struct { - modules.MCompConfigure -} - -func (this *configureComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { - err = this.MCompConfigure.Init(service, module, comp, options) - this.LoadMultiConfigure(map[string]interface{}{ - gameTaskRound: cfg.NewGameTaskRound, - gameActiveReward: cfg.NewGameActiveReward, - }) - return -} - -//获取活跃度奖励配置 -func (this *configureComp) getActiveRewardCfg() (data *cfg.GameActiveReward, err error) { - var ( - v interface{} - ok bool - ) - if v, err = this.GetConfigure(gameActiveReward); err != nil { - return - } else { - if data, ok = v.(*cfg.GameActiveReward); !ok { - err = fmt.Errorf("%T no is *cfg.Game_ActiveReward", v) - return - } - } - return -} - -//获取任务配置 -func (this *configureComp) getTaskRoundCfg() (data *cfg.GameTaskRound, err error) { - var ( - v interface{} - ok bool - ) - if v, err = this.GetConfigure(gameTaskRound); err != nil { - return - } else { - if data, ok = v.(*cfg.GameTaskRound); !ok { - err = fmt.Errorf("%T no is *cfg.Game_taskRound", v) - return - } - } - return -} - -//根据taskId获取配置 -func (this *configureComp) getTaskById(taskId int32) (data *cfg.GameTaskRoundData) { - cfg, err := this.getTaskRoundCfg() - if err != nil { - log.Errorf("%v", err) - return nil - } - if cfg != nil { - data = cfg.GetDataMap()[taskId] - } - return -} - -//是否第一个成就任务 -func (this *configureComp) isFirstTask(taskId int32) bool { - data := this.getTaskByTag(int32(comm.TASK_ACHIEVE)) - for _, v := range data { - if taskId == v.IdAfter { - return false - } else { - continue - } - } - return true -} - -// 上一个任务 -func (this *configureComp) getPreTask(preTaskId int32) *cfg.GameTaskRoundData { - data := this.getTaskByTag(int32(comm.TASK_ACHIEVE)) - for _, v := range data { - if v.IdAfter == preTaskId { - return v - } - } - return nil -} - -//获取任务配置列表 -func (this *configureComp) getTaskList() (data []*cfg.GameTaskRoundData, err error) { - cfg, err := this.getTaskRoundCfg() - if err != nil { - log.Errorf("%v", err) - return data, err - } - if cfg != nil { - data = cfg.GetDataList() - } - return -} - -//根据任务类型获取任务列表 -func (this *configureComp) getTasks(taskType int32) (data []*cfg.GameTaskRoundData, err error) { - list, err := this.getTaskList() - if err != nil { - log.Errorf("%v", err) - return data, err - } - - for _, d := range list { - if d.TypeId == taskType { - data = append(data, d) - } - } - - return -} - -//任务列表 正序 -func (this *configureComp) getSortedTasks(taskType int32) (data []*cfg.GameTaskRoundData, err error) { - if data, err = this.getTasks(taskType); err != nil { - return nil, err - } - sort.SliceStable(data, func(i, j int) bool { - return data[i].IdList > data[j].IdList - }) - return -} - -//获取任务配置 条件 tasktag -func (this *configureComp) getTaskByTag(taskTag int32) (data []*cfg.GameTaskRoundData) { - list, err := this.getTaskList() - if err != nil { - log.Errorf("%v", err) - return data - } - for _, d := range list { - if d.IdTag == taskTag { - data = append(data, d) - } - } - return -} - -func (this *configureComp) getTaskActiveList() (data []*cfg.GameActiveRewardData) { - conf, err := this.getActiveRewardCfg() - if err != nil { - log.Errorf("get conf err:%v", err) - return - } - if conf != nil { - data = conf.GetDataList() - } - return -} - -//获取活跃度奖励list -func (this *configureComp) getTaskActiveByTag(taskTag int32) (data []*cfg.GameActiveRewardData) { - conf, err := this.getActiveRewardCfg() - if err != nil { - log.Errorf("get conf err:%v", err) - return - } - - if conf != nil { - for _, v := range conf.GetDataList() { - if v.IdTag == taskTag { - data = append(data, v) - } - } - } - return -} - -// 获取活跃度配置map -func (this *configureComp) getTaskActiveById(id int32) (data *cfg.GameActiveRewardData) { - conf, err := this.getActiveRewardCfg() - if err != nil { - log.Errorf("get conf err:%v", err) - return - } - if conf != nil { - if v, ok := conf.GetDataMap()[id]; ok { - return v - } - } - return -} diff --git a/modules/task/model_active.go b/modules/task/model_active.go deleted file mode 100644 index 707a071ce..000000000 --- a/modules/task/model_active.go +++ /dev/null @@ -1,147 +0,0 @@ -package task - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/lego/core" - "go_dreamfactory/lego/sys/mgo" - "go_dreamfactory/modules" - "go_dreamfactory/pb" - - "go.mongodb.org/mongo-driver/bson/primitive" - "go.mongodb.org/mongo-driver/mongo" - "go.mongodb.org/mongo-driver/x/bsonx" -) - -type ModelTaskActive struct { - modules.MCompModel - module *ModuleTask -} - -func (this *ModelTaskActive) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { - this.TableName = comm.TableTaskActive - err = this.MCompModel.Init(service, module, comp, options) - this.module = module.(*ModuleTask) - // 加索引 - this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{ - Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}}, - }) - return -} - -// 初始化活跃度 -func (this *ModelTaskActive) initActiveReward(active *pb.DBActivity, taskTag comm.TaskTag) { - data := this.module.configure.getTaskActiveByTag(int32(taskTag)) - for _, conf := range data { - ta := &pb.ActivityData{ - Tag: int32(taskTag), - TaskId: conf.Key, - } - active.ActivityList = append(active.ActivityList, ta) - } -} - -func (this *ModelTaskActive) getActiveList(uid string) (active *pb.DBActivity, err error) { - active = &pb.DBActivity{} - if err = this.Get(uid, active); err != nil && err != mgo.MongodbNil { - this.module.Errorf("getTaskList err %v", err) - return - } - if err == mongo.ErrNoDocuments { - objId := primitive.NewObjectID().Hex() - active = &pb.DBActivity{ - Uid: uid, - Id: objId, - ActivityList: make([]*pb.ActivityData, 0), - } - err = this.Add(uid, active) - } - return -} - -// 获取玩家活跃度列表 -func (this *ModelTaskActive) getActiveListByTag(uid string, taskTag comm.TaskTag) (list []*pb.ActivityData) { - task := &pb.DBActivity{} - if err := this.Get(uid, task); err != nil { - this.module.Errorf("getTaskList err %v", err) - return - } - - for _, v := range task.ActivityList { - if v.Tag == int32(taskTag) { - list = append(list, v) - } - } - - return list -} - -// 查询完成的且未领取的任务 发现未领取返回true -func (this *ModelTaskActive) noReceiveTaskActive(user *pb.DBUserExpand, activityList []*pb.ActivityData, taskTag comm.TaskTag) (bool, error) { - - for _, v := range activityList { - if v.Tag == int32(taskTag) && v.Received == 0 { - conf := this.module.configure.getTaskActiveById(v.TaskId) - if conf != nil && user != nil { - switch taskTag { - case comm.TASK_DAILY: - if user.Activeday >= conf.Active { - return true, nil - } - case comm.TASK_WEEKLY: - if user.Activeweek >= conf.Active { - return true, nil - } - } - } - } - } - return false, nil -} - -// 获取玩家活跃记录 id 唯一ID -func (this *ModelTaskActive) getUserActive(uid string, taskId int32, taskTag comm.TaskTag) *pb.ActivityData { - record := this.getActiveListByTag(uid, taskTag) - for _, v := range record { - if v.TaskId == taskId { - return v - } - } - return nil -} - -func (this *ModelTaskActive) updateReceive(uid string, data map[string]interface{}) (err error) { - if len(data) == 0 { - return - } - return this.module.modelTaskActive.Change(uid, data) -} - -// 清空活跃度任务 -func (this *ModelTaskActive) clearTask(uid string, taskTag ...comm.TaskTag) { - if len(taskTag) == 0 { - this.module.Errorf("least one param for taskTag") - return - } - var ( - active *pb.DBActivity - err error - ) - if active, err = this.getActiveList(uid); err != nil { - this.module.Errorln(err) - return - } - for i := 0; i < len(active.ActivityList); i++ { - if active.ActivityList[i].Tag == int32(taskTag[0]) { - active.ActivityList = append(active.ActivityList[:i], active.ActivityList[i+1:]...) - i-- - } - } - update := map[string]interface{}{ - "activityList": active.ActivityList, - } - if err := this.module.modelTaskActive.Change(uid, update); err != nil { - this.module.Errorf("uid: %v err:%v", uid, err) - return - } - -} diff --git a/modules/task/model_task.go b/modules/task/model_task.go deleted file mode 100644 index 5f03549ce..000000000 --- a/modules/task/model_task.go +++ /dev/null @@ -1,371 +0,0 @@ -package task - -import ( - "fmt" - "go_dreamfactory/comm" - "go_dreamfactory/lego/core" - event_v2 "go_dreamfactory/lego/sys/event/v2" - "go_dreamfactory/lego/sys/log" - "go_dreamfactory/lego/sys/mgo" - "go_dreamfactory/modules" - "go_dreamfactory/pb" - "sort" - - "github.com/pkg/errors" - "go.mongodb.org/mongo-driver/bson/primitive" - "go.mongodb.org/mongo-driver/mongo" - "go.mongodb.org/mongo-driver/x/bsonx" -) - -type ModelTask struct { - modules.MCompModel - module *ModuleTask - EventApp *event_v2.App -} - -func (this *ModelTask) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { - this.TableName = comm.TableTask - err = this.MCompModel.Init(service, module, comp, options) - this.module = module.(*ModuleTask) - this.EventApp = event_v2.NewApp() - // this.EventApp.Listen(comm.EventTaskChanged, this.doTaskHandle) - this.DB.CreateIndex(core.SqlTable(this.TableName), mongo.IndexModel{ - Keys: bsonx.Doc{{Key: "uid", Value: bsonx.Int32(1)}}, - }) - return -} - -// 查询完成的且未领取的任务 发现未领取返回true -func (this *ModelTask) noReceiveTask(task *pb.DBTask, taskTag comm.TaskTag) (bool, error) { - if taskTag == comm.TASK_DAILY { - for _, v := range task.DayList { - if v.Received == 0 { - return true, nil - } - } - } else if taskTag == comm.TASK_WEEKLY { - for _, v := range task.WeekList { - if v.Received == 0 { - return true, nil - } - } - } - return false, nil -} - -func (this *ModelTask) checkTaskStatus(uid string, list []*pb.TaskData) []*pb.TaskData { - // 待校验的条件ID - condIds := []int32{} - for _, v := range list { - condIds = append(condIds, v.TypeId) - } - - conds, err := this.module.ModuleBuried.CheckCondition(uid, condIds...) - if err != nil { - this.module.Error(err.Error()) - return nil - } - - for _, v := range list { - for _, cond := range conds { - if v.TypeId == cond.Conid { - v.Cond = cond - if cond.State == pb.BuriedItemFinishState_buried_finish { - v.Status = 1 - } - } - } - } - - return list -} - -// 获取玩家任务列表 -func (this *ModelTask) getTaskListByTag(uid string, taskTag comm.TaskTag) *pb.DBTask { - task := &pb.DBTask{} - if err := this.Get(uid, task); err != nil { - this.module.Errorf("getTaskList err %v", err) - return nil - } - - if task == nil { - return nil - } - - // 排序 - sort.SliceStable(task.DayList, func(i, j int) bool { - return task.DayList[i].Sort < task.DayList[j].Sort - }) - sort.SliceStable(task.WeekList, func(i, j int) bool { - return task.WeekList[i].Sort < task.WeekList[j].Sort - }) - - update := map[string]interface{}{} - var dataList []*pb.TaskData - if taskTag == comm.TASK_DAILY { - dataList = task.DayList - } else if taskTag == comm.TASK_WEEKLY { - dataList = task.WeekList - } - - dataList = this.checkTaskStatus(uid, dataList) - - if taskTag == comm.TASK_DAILY { - update["dayList"] = dataList - } else if taskTag == comm.TASK_WEEKLY { - update["weekList"] = dataList - } - - if err := this.module.modelTask.Change(uid, update); err != nil { - this.module.Error("change err", log.Field{Key: "uid", Value: uid}) - } - - // 当前玩家成就任务 - getCurTask := func(taskId int32) *pb.TaskData { - for _, v := range task.AchieveList { - if v.TaskId == taskId { - return v - } - } - return nil - } - - // 判断上个成就任务领取了才显示最后一个任务 - isReceived := func(taskId int32) bool { - if preCnf := this.module.configure.getPreTask(taskId); preCnf != nil { - if preTask := getCurTask(preCnf.Key); preTask != nil { - if preTask.Received == 1 { - return true - } - } - } - return false - } - - // 成就列表 - var achieveList []*pb.TaskData - - if taskTag == comm.TASK_ACHIEVE { - for _, v := range task.AchieveList { - if curTask := this.module.configure.getTaskById(v.TaskId); curTask != nil { - if v.Received == 0 { - isFirst := this.module.configure.isFirstTask(curTask.Key) - if curTask.IdAfter == 0 && isFirst { //未领取和没有下个连续任务的 - achieveList = append(achieveList, v) - continue - } - - if isFirst && curTask.IdAfter != 0 { //连续任务的第一个任务 - next := this.module.configure.getTaskById(curTask.IdAfter) - if next != nil && v.Received == 0 { - achieveList = append(achieveList, v) - } - } else { - if isReceived(curTask.Key) { - achieveList = append(achieveList, v) - } - } - } - } - } - - achieveList = this.checkTaskStatus(uid, achieveList) - - update["achieveList"] = achieveList - if err := this.module.modelTask.Change(uid, update); err != nil { - log.Error("err", log.Field{Key: "uid", Value: uid}) - } - - task.AchieveList = achieveList - } - - return task -} - -// 获取用户任务 -func (this *ModelTask) getTaskById(uid string, taskTag comm.TaskTag, taskId int32) *pb.DBTask { - task := &pb.DBTask{} - if err := this.Get(uid, task); err != nil { - this.module.Errorf("getTaskById err %v", err) - return nil - } - - if task != nil { - if taskTag == comm.TASK_DAILY { - for _, v := range task.DayList { - if v.TaskId == taskId { - task.DayList = append(task.DayList, v) - } - } - } else if taskTag == comm.TASK_WEEKLY { - for _, v := range task.WeekList { - if v.TaskId == taskId { - task.WeekList = append(task.WeekList, v) - } - } - } else if taskTag == comm.TASK_ACHIEVE { - for _, v := range task.AchieveList { - if v.TaskId == taskId { - task.AchieveList = append(task.AchieveList, v) - } - } - } - } - - return task -} - -// 初始化任务 -func (this *ModelTask) initTask(opencond map[string]int32, task *pb.DBTask, taskTag comm.TaskTag) error { - data := this.module.configure.getTaskByTag(int32(taskTag)) - for _, cnf := range data { - if unlock, ok := opencond[cnf.Open]; cnf.Open != "" && (!ok || unlock != 2) { - continue - } - - t := &pb.TaskData{ - Tag: cnf.IdTag, - TypeId: cnf.TypeId, - TaskId: cnf.Key, - Active: cnf.Active, - Sort: cnf.IdList, - } - if taskTag == comm.TASK_DAILY { - task.DayList = append(task.DayList, t) - } else if taskTag == comm.TASK_WEEKLY { - task.WeekList = append(task.WeekList, t) - } else if taskTag == comm.TASK_ACHIEVE { - task.AchieveList = append(task.AchieveList, t) - } - } - return nil -} - -// 查询用户任务 -func (this *ModelTask) getUserTask(uid string) (task *pb.DBTask, err error) { - task = &pb.DBTask{} - if err = this.Get(uid, task); err != nil && err != mgo.MongodbNil { - return - } - if err == mongo.ErrNoDocuments { - objId := primitive.NewObjectID().Hex() - task = &pb.DBTask{ - Uid: uid, - Id: objId, - } - if err = this.Add(uid, task); err != nil { - return - } - } - return -} - -// 获取待处理的(日、周)任务 -func (this *ModelTask) getUnFinishTasks(uid string, taskId int32) (list []*pb.TaskData) { - task := &pb.DBTask{} - if err := this.Get(uid, task); err != nil { - this.module.Errorf("getTaskById err %v", err) - return nil - } - - if task != nil { - for _, v := range task.DayList { - if v.TaskId == taskId && v.Status == 0 { - list = append(list, v) - } - } - - for _, v := range task.WeekList { - if v.TaskId == taskId && v.Status == 0 { - list = append(list, v) - } - } - - for _, v := range task.AchieveList { - if v.TaskId == taskId && v.Status == 0 { - list = append(list, v) - } - } - } - - return -} - -// 更改用户任务 -// Deprecated -func (this *ModelTask) modifyUserTask(uid string, taskId int32, data map[string]interface{}) error { - var task *pb.DBTask - if err := this.GetList(uid, &task); err != nil { - this.module.Errorf("getTaskById err %v", err) - return nil - } - var err error - for _, v := range task.DayList { - if v.TaskId == taskId { - // v.Progress = data["progress"].(int32) - v.Status = data["status"].(int32) - } - } - day_update := map[string]interface{}{ - "dayList": task.DayList, - } - err = this.Change(uid, day_update) - - for _, v := range task.WeekList { - if v.TaskId == taskId { - // v.Progress = data["progress"].(int32) - v.Status = data["status"].(int32) - } - } - week_update := map[string]interface{}{ - "weekList": task.WeekList, - } - err = this.Change(uid, week_update) - - for _, v := range task.AchieveList { - if v.TaskId == taskId { - // v.Progress = data["progress"].(int32) - v.Status = data["status"].(int32) - } - } - achieve_update := map[string]interface{}{ - "achieveList": task.AchieveList, - } - err = this.Change(uid, achieve_update) - - return err -} - -// 更新活跃度 -func (this *ModelTask) updateActive(uid string, cfgId int32) error { - // 更新活跃度 - de, err := this.module.ModuleUser.GetUserExpand(uid) - if err != nil { - return err - } - - conf := this.module.configure.getTaskById(cfgId) - if conf == nil { - return errors.New(fmt.Sprintf("%v config nil", cfgId)) - } - - switch conf.IdTag { - case int32(comm.TASK_DAILY): - de.Activeday += conf.Active - case int32(comm.TASK_WEEKLY): - de.Activeweek += conf.Active - } - - update := map[string]interface{}{ - "activeday": de.Activeday, - "activeweek": de.Activeweek, - } - - return this.module.ModuleUser.ChangeUserExpand(uid, update) -} - -type TaskListen struct { - event_v2.Event - Uid string - TaskType comm.TaskType -} diff --git a/modules/task/module.go b/modules/task/module.go deleted file mode 100644 index e7170e571..000000000 --- a/modules/task/module.go +++ /dev/null @@ -1,184 +0,0 @@ -// package -// 日/周常成就任务 -// 赵长远 -package task - -import ( - "go_dreamfactory/comm" - "go_dreamfactory/lego/core" - "go_dreamfactory/lego/sys/event" - event_v2 "go_dreamfactory/lego/sys/event/v2" - "go_dreamfactory/lego/sys/log" - "go_dreamfactory/modules" - "go_dreamfactory/pb" -) - -var _ comm.ITask = (*ModuleTask)(nil) - -type ModuleTask struct { - modules.ModuleBase - modelTask *ModelTask - modelTaskActive *ModelTaskActive - api *apiComp - configure *configureComp -} - -func NewModule() core.IModule { - return &ModuleTask{} -} - -func (this *ModuleTask) GetType() core.M_Modules { - return comm.ModuleTask -} - -func (this *ModuleTask) GetEventApp() *event_v2.App { - return this.modelTask.EventApp -} - -func (this *ModuleTask) Init(service core.IService, module core.IModule, options core.IModuleOptions) (err error) { - err = this.ModuleBase.Init(service, module, options) - return -} - -func (this *ModuleTask) OnInstallComp() { - this.ModuleBase.OnInstallComp() - this.api = this.RegisterComp(new(apiComp)).(*apiComp) - this.modelTask = this.RegisterComp(new(ModelTask)).(*ModelTask) - this.modelTaskActive = this.RegisterComp(new(ModelTaskActive)).(*ModelTaskActive) - this.configure = this.RegisterComp(new(configureComp)).(*configureComp) -} - -// 模块启动接口 -func (this *ModuleTask) Start() (err error) { - err = this.ModuleBase.Start() - event.RegisterGO(comm.EventUserLogin, this.EventUserLogin) - event.RegisterGO(comm.EventUserOffline, this.CleanTask) - return -} - -func (this *ModuleTask) EventUserLogin(session comm.IUserSession) { - var ( - opencond map[string]int32 - errdata *pb.ErrorData - task *pb.DBTask - active *pb.DBActivity - err error - ) - if opencond, errdata = this.ModuleSys.QueryOpenCondData(session.GetUserId()); errdata != nil { - this.Errorf("getTaskList err %v", errdata) - return - } - - if task, err = this.modelTask.getUserTask(session.GetUserId()); err != nil { - this.Errorf("getTaskList err %v", err) - return - } - this.modelTask.initTask(opencond, task, comm.TASK_DAILY) - this.modelTask.initTask(opencond, task, comm.TASK_WEEKLY) - this.modelTask.initTask(opencond, task, comm.TASK_ACHIEVE) - if err = this.modelTask.Change(session.GetUserId(), map[string]interface{}{ - "dayList": task.DayList, - "weekList": task.WeekList, - "achieveList": task.AchieveList, - }); err != nil { - log.Error("err", log.Field{Key: "uid", Value: session.GetUserId()}) - return - } - - if active, err = this.modelTaskActive.getActiveList(session.GetUserId()); err != nil { - return - } - this.modelTaskActive.initActiveReward(active, comm.TASK_DAILY) - this.modelTaskActive.initActiveReward(active, comm.TASK_WEEKLY) - if err = this.modelTaskActive.Change(session.GetUserId(), map[string]interface{}{ - "activityList": active.ActivityList, - }); err != nil { - log.Error("err", log.Field{Key: "uid", Value: session.GetUserId()}) - return - } -} - -// 清除缓存 -func (this *ModuleTask) CleanTask(uid, sessionid string) { - this.modelTask.BatchDelLists(uid) - this.modelTaskActive.BatchDelLists(uid) -} - -// 重置玩家活跃度 -func (this *ModuleTask) resetActive(uid string, taskTag comm.TaskTag) { - update := make(map[string]interface{}) - if taskTag == comm.TASK_DAILY { - update["activeday"] = 0 - } else if taskTag == comm.TASK_WEEKLY { - update["activeweek"] = 0 - } - if len(update) > 0 { - this.ModuleUser.ChangeUserExpand(uid, update) - } -} - -func (this *ModuleTask) Reddot(session comm.IUserSession, rid ...comm.ReddotType) (reddot map[comm.ReddotType]*pb.ReddotItem) { - reddot = make(map[comm.ReddotType]*pb.ReddotItem) - var ( - task *pb.DBTask = &pb.DBTask{} - active *pb.DBActivity - userExpand *pb.DBUserExpand - err error - ) - if task, err = this.modelTask.getUserTask(session.GetUserId()); err != nil { - this.Errorf("getTaskList err %v", err) - return - } - - if active, err = this.modelTaskActive.getActiveList(session.GetUserId()); err != nil { - return - } - // 获取玩家活跃度 - userExpand, err = this.ModuleUser.GetUserExpand(session.GetUserId()) - if err != nil { - return - } - - for _, v := range rid { - - switch v { - case comm.Reddot10101: - tf, _ := this.modelTask.noReceiveTask(task, comm.TASK_DAILY) - reddot[comm.Reddot10101] = &pb.ReddotItem{ - Rid: int32(comm.Reddot10101), - Activated: tf, - Nextchanagetime: 0, - } - case comm.Reddot10102: - tf, _ := this.modelTask.noReceiveTask(task, comm.TASK_WEEKLY) - reddot[comm.Reddot10102] = &pb.ReddotItem{ - Rid: int32(comm.Reddot10102), - Activated: tf, - Nextchanagetime: 0, - } - - case comm.Reddot10103: - tf, _ := this.modelTask.noReceiveTask(task, comm.TASK_ACHIEVE) - reddot[comm.Reddot10103] = &pb.ReddotItem{ - Rid: int32(comm.Reddot10103), - Activated: tf, - Nextchanagetime: 0, - } - case comm.Reddot10201: - tf, _ := this.modelTaskActive.noReceiveTaskActive(userExpand, active.ActivityList, comm.TASK_DAILY) - reddot[comm.Reddot10201] = &pb.ReddotItem{ - Rid: int32(comm.Reddot10201), - Activated: tf, - Nextchanagetime: 0, - } - case comm.Reddot10301: - tf, _ := this.modelTaskActive.noReceiveTaskActive(userExpand, active.ActivityList, comm.TASK_WEEKLY) - reddot[comm.Reddot10301] = &pb.ReddotItem{ - Rid: int32(comm.Reddot10301), - Activated: tf, - Nextchanagetime: 0, - } - } - } - return -} diff --git a/modules/weektask/api.go b/modules/weektask/api.go index 5d7beb171..86b93acc1 100644 --- a/modules/weektask/api.go +++ b/modules/weektask/api.go @@ -1,4 +1,4 @@ -package dailytask +package weektask import ( "go_dreamfactory/lego/base" diff --git a/modules/weektask/api_Info.go b/modules/weektask/api_Info.go index ba5229850..1ff28c71f 100644 --- a/modules/weektask/api_Info.go +++ b/modules/weektask/api_Info.go @@ -1,4 +1,4 @@ -package dailytask +package weektask import ( "go_dreamfactory/comm" diff --git a/modules/weektask/api_activityreceive.go b/modules/weektask/api_activityreceive.go index 34caff268..5c06615ca 100644 --- a/modules/weektask/api_activityreceive.go +++ b/modules/weektask/api_activityreceive.go @@ -1,4 +1,4 @@ -package dailytask +package weektask import ( "go_dreamfactory/comm" diff --git a/modules/weektask/api_receive.go b/modules/weektask/api_receive.go index 80c797402..154bdaf7e 100644 --- a/modules/weektask/api_receive.go +++ b/modules/weektask/api_receive.go @@ -1,4 +1,4 @@ -package dailytask +package weektask import ( "go_dreamfactory/comm" diff --git a/modules/weektask/configure.go b/modules/weektask/configure.go index a99418195..ff83cf46b 100644 --- a/modules/weektask/configure.go +++ b/modules/weektask/configure.go @@ -1,4 +1,4 @@ -package dailytask +package weektask import ( "go_dreamfactory/comm" diff --git a/modules/weektask/modelWeeltask.go b/modules/weektask/modelWeeltask.go index 0454ff3b1..cb9b8dd44 100644 --- a/modules/weektask/modelWeeltask.go +++ b/modules/weektask/modelWeeltask.go @@ -1,4 +1,4 @@ -package dailytask +package weektask import ( "fmt" @@ -7,6 +7,7 @@ import ( "go_dreamfactory/lego/sys/mgo" "go_dreamfactory/modules" "go_dreamfactory/pb" + "go_dreamfactory/sys/configure" cfg "go_dreamfactory/sys/configure/structs" "go.mongodb.org/mongo-driver/bson/primitive" @@ -44,7 +45,7 @@ func (this *ModelWeektask) getUserDTasks(uid string) (results *pb.DBWeektask, er Tasks: make([]int32, 0), Tcomplete: make(map[int32]bool), Acomplete: make(map[int32]bool), - Rtime: 0, + Rtime: configure.Now().Unix(), } if opencmd, errdata := this.module.sys.QueryOpenCondData(uid); errdata != nil { err = fmt.Errorf("sys.QueryOpenCondData err:%s", errdata.Message) @@ -78,10 +79,9 @@ func (this *ModelWeektask) inquireActivations(info *pb.DBWeektask, opencmd map[s if v.Open != "" && opencmd[v.Open] != 2 { //功能未开启 continue } - - // if v.IdBefore != 0 && !info.Tcomplete[v.Key] { //前置任务未完成 - // continue - // } + if v.IdBefore != 0 && !info.Tcomplete[v.Key] { //前置任务未完成 + continue + } info.Tasks = append(info.Tasks, v.Key) } return diff --git a/modules/weektask/module.go b/modules/weektask/module.go index 07f5f9c7e..b03fae26d 100644 --- a/modules/weektask/module.go +++ b/modules/weektask/module.go @@ -1,4 +1,4 @@ -package dailytask +package weektask import ( "go_dreamfactory/comm" diff --git a/services/worker/main.go b/services/worker/main.go index ec9e84f9d..10bdf11cd 100644 --- a/services/worker/main.go +++ b/services/worker/main.go @@ -57,12 +57,12 @@ import ( "go_dreamfactory/modules/stonehenge" "go_dreamfactory/modules/storyline" "go_dreamfactory/modules/sys" - "go_dreamfactory/modules/task" "go_dreamfactory/modules/tools" "go_dreamfactory/modules/uigame" "go_dreamfactory/modules/user" "go_dreamfactory/modules/viking" "go_dreamfactory/modules/warorder" + "go_dreamfactory/modules/weektask" "go_dreamfactory/modules/wtask" "go_dreamfactory/services" "go_dreamfactory/sys/db" @@ -102,7 +102,6 @@ func main() { friend.NewModule(), hero.NewModule(), equipment.NewModule(), - task.NewModule(), shop.NewModule(), notify.NewModule(), chat.NewModule(), @@ -156,6 +155,7 @@ func main() { pushgiftbag.NewModule(), uigame.NewModule(), battlerecord.NewModule(), + weektask.NewModule(), ) } diff --git a/sys/configure/structs/game.activeRewardData.go b/sys/configure/structs/game.activeRewardData.go index aa46b9d5f..d5637f9bc 100644 --- a/sys/configure/structs/game.activeRewardData.go +++ b/sys/configure/structs/game.activeRewardData.go @@ -12,7 +12,6 @@ import "errors" type GameActiveRewardData struct { Key int32 - IdTag int32 Active int32 Reword []*Gameatn Action string @@ -27,7 +26,6 @@ func (*GameActiveRewardData) GetTypeId() int32 { func (_v *GameActiveRewardData)Deserialize(_buf map[string]interface{}) (err error) { { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["key"].(float64); !_ok_ { err = errors.New("key error"); return }; _v.Key = int32(_tempNum_) } - { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id_tag"].(float64); !_ok_ { err = errors.New("id_tag error"); return }; _v.IdTag = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["active"].(float64); !_ok_ { err = errors.New("active error"); return }; _v.Active = int32(_tempNum_) } { var _arr_ []interface{} diff --git a/sys/configure/structs/game.taskActiveRewardData.go b/sys/configure/structs/game.taskActiveRewardData.go index fde65e4da..499cae3cd 100644 --- a/sys/configure/structs/game.taskActiveRewardData.go +++ b/sys/configure/structs/game.taskActiveRewardData.go @@ -12,7 +12,6 @@ import "errors" type GameTaskActiveRewardData struct { Key int32 - IdTag int32 Active int32 Reword []*Gameatn Action string @@ -27,7 +26,6 @@ func (*GameTaskActiveRewardData) GetTypeId() int32 { func (_v *GameTaskActiveRewardData)Deserialize(_buf map[string]interface{}) (err error) { { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["key"].(float64); !_ok_ { err = errors.New("key error"); return }; _v.Key = int32(_tempNum_) } - { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id_tag"].(float64); !_ok_ { err = errors.New("id_tag error"); return }; _v.IdTag = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["active"].(float64); !_ok_ { err = errors.New("active error"); return }; _v.Active = int32(_tempNum_) } { var _arr_ []interface{} diff --git a/sys/configure/structs/game.taskRoundData.go b/sys/configure/structs/game.taskRoundData.go index 116018e14..3632779f1 100644 --- a/sys/configure/structs/game.taskRoundData.go +++ b/sys/configure/structs/game.taskRoundData.go @@ -13,12 +13,13 @@ import "errors" type GameTaskRoundData struct { Key int32 IdList int32 - IdTag int32 Open string + Opentask string + IdBefore int32 + IdAfter int32 TaskDisplay string TypeId int32 Active int32 - IdAfter int32 JumpInterface int32 Icon string Reword []*Gameatn @@ -33,12 +34,13 @@ func (*GameTaskRoundData) GetTypeId() int32 { func (_v *GameTaskRoundData)Deserialize(_buf map[string]interface{}) (err error) { { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["key"].(float64); !_ok_ { err = errors.New("key error"); return }; _v.Key = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id_list"].(float64); !_ok_ { err = errors.New("id_list error"); return }; _v.IdList = int32(_tempNum_) } - { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id_tag"].(float64); !_ok_ { err = errors.New("id_tag error"); return }; _v.IdTag = int32(_tempNum_) } { var _ok_ bool; if _v.Open, _ok_ = _buf["open"].(string); !_ok_ { err = errors.New("open error"); return } } + { var _ok_ bool; if _v.Opentask, _ok_ = _buf["opentask"].(string); !_ok_ { err = errors.New("opentask error"); return } } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id_before"].(float64); !_ok_ { err = errors.New("id_before error"); return }; _v.IdBefore = int32(_tempNum_) } + { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["Id_after"].(float64); !_ok_ { err = errors.New("Id_after error"); return }; _v.IdAfter = int32(_tempNum_) } {var _ok_ bool; var __json_text__ map[string]interface{}; if __json_text__, _ok_ = _buf["task_display"].(map[string]interface{}) ; !_ok_ { err = errors.New("_v.TaskDisplay error"); return }; { var _ok_ bool; if _, _ok_ = __json_text__["key"].(string); !_ok_ { err = errors.New("key error"); return } }; { var _ok_ bool; if _v.TaskDisplay, _ok_ = __json_text__["text"].(string); !_ok_ { err = errors.New("text error"); return } } } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["type_id"].(float64); !_ok_ { err = errors.New("type_id error"); return }; _v.TypeId = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["active"].(float64); !_ok_ { err = errors.New("active error"); return }; _v.Active = int32(_tempNum_) } - { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["id_after"].(float64); !_ok_ { err = errors.New("id_after error"); return }; _v.IdAfter = int32(_tempNum_) } { var _ok_ bool; var _tempNum_ float64; if _tempNum_, _ok_ = _buf["jump_interface"].(float64); !_ok_ { err = errors.New("jump_interface error"); return }; _v.JumpInterface = int32(_tempNum_) } { var _ok_ bool; if _v.Icon, _ok_ = _buf["icon"].(string); !_ok_ { err = errors.New("icon error"); return } } {