diff --git a/luafight/Modules/Battle/Config/Data/HardStage.lua b/luafight/Modules/Battle/Config/Data/HardStage.lua new file mode 100644 index 000000000..6bfd06617 --- /dev/null +++ b/luafight/Modules/Battle/Config/Data/HardStage.lua @@ -0,0 +1,84 @@ +local HardStage = { +__count = 38, +__indexs = {1.83}, +__values = {-420,10,31,13,2,5,3,31,12,19,2,20,2,25,4,16,13,21,30,1,8,6,78,67,1.83,112,110,89,85,29567,-5000.4,1001,1.73,3962,-5000.61,70000,1.73}, +__exVals = {49,nil,'x_xiaoyaoyou_ditu_longzi','x_xiaoyaoyou_ditu_huangzi','x_xiaoyaoyou_ditu_luzi','x_xiaoyaoyou_ditu_hezi','x_xiaoyaoyou_ditu_shengzi','x_xiaoyaoyou_ditu_buzi','x_xiaoyaoyou_ditu_dizi','x_xiaoyaoyou_ditu_xuezi','x_xiaoyaoyou_ditu_jingzi','x_xiaoyaoyou_ditu_xianzi','地图名称1','地图名称2','地图名称3','地图名称4','地图名称5','地图名称6','地图名称7','地图名称8','地图名称9','地图名称10','地图名称11','地图名称12','地图名称13','地图名称14','地图名称15','地图名称16','地图名称17','地图名称18','地图名称19','地图名称2-1','地图名称2-2','地图名称2-3','地图名称2-4','地图名称2-5','地图名称2-6','地图名称2-7','地图名称2-8','地图名称2-9','地图名称2-10','地图名称2-11','地图名称2-12','地图名称2-13','地图名称2-14','地图名称2-15','地图名称2-16','地图名称2-17','地图名称2-18','地图名称2-19'}, +__fields = { + 'Id', + 'Chapter', + 'Section', + 'Picture ', + 'Name', + 'LevelPointPosition', + 'Repeat ', + 'NextLevel', + 'LevelLimit', + 'Star ', + 'MonsterGroup', + 'HardStageBuff', + 'RecommendFightAbility', + 'PassReward', + 'StageType', + 'HighestStar', + 'ConditionValue', + 'Reward1' +}, +__defaults = { + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + 25, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil +}, +__refs = { + {26,.81,1,.81}, + {26,1.81,-18,1.81}, + {166,1.9,-9,2.1,2.1,1.7}, + {176,1.73}, + {{{1},{66,-1,-1,-1,-3,-37,-3,-6,2,-5,-7,6,8,1,47,14.31,-8,5.1,5.4}},{{2},{13,-4,-2,-1,-1,-2,-2,1,6,4,5,4,1,-7,-2,14.31,-3,5.1,5.4}}}, + {26,-1,1,2.1,4.1,8.1,2.1,0,19.81}, + {25,1.73}, + {50,.3,2,2.1,4.1,.2,-34,.81}, + nil, + {72,1.73}, + {26,1.01,-10,2.1,2.1,1.4}, + {69,-2,3,2.1,-2,41,-40,2.1,41,10.5,4.3,1,9.8,8.1,2.1}, + {{{1},{127,1.73}}}, + {26,1,-1,2,-2,4.1,8.1,4.2,0,19.81}, + {28,-3,3,2.1,4.1,8.1,2.1,0,19.81}, + {{{1},{26,.91},{-2.9,3,-2.8}},{{2},{27,.91},{-2.9,3,-2.8}},{{3},{28,.91},{-2.9,3,-2.8}}}, + {{{1},{129,-2.9,-18,-2.9},{-2.9,3,-2.8}},{{2},{131,-2.9,-18,-2.9},{-2.9,3,-2.8}},{{3},{133,-2.9,-18,-2.9},{-2.9,3,-2.8}}} +}, +__refPoss = { + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil +}, +} +return HardStage \ No newline at end of file diff --git a/luafight/Modules/Battle/Config/Data/HardStageCondition.lua b/luafight/Modules/Battle/Config/Data/HardStageCondition.lua new file mode 100644 index 000000000..11831a9de --- /dev/null +++ b/luafight/Modules/Battle/Config/Data/HardStageCondition.lua @@ -0,0 +1,28 @@ +local HardStageCondition = { +__count = 11, +__indexs = {1.11}, +__values = {0,1.11,49989,950003}, +__exVals = {11,'通过关卡','2回合内通过关卡','上阵N个神将通过关卡','5回合内造成50000伤害','使用指定佛系神将5个','存活5个人','不上阵输出神将通过关卡','不上阵佛系神将通过关卡','佩戴普贤菩萨魂印通过关卡','不使用灵兽通过关卡','全部上阵输出职业神将通过关卡'}, +__fields = { + 'Id', + 'ConditionType', + 'ConditionValue', + 'Describe' +}, +__defaults = { + nil, + nil, + nil +}, +__refs = { + {2,1.01}, + {{{1},{2,1.2,2,-3,3,-4,1,11,-13,1}},{{2},{13,-7},{4,1}}}, + {15,1.01} +}, +__refPoss = { + nil, + nil, + nil +}, +} +return HardStageCondition \ No newline at end of file diff --git a/luafight/Modules/Battle/Config/Data/PassiveSkillLogicConfig.lua b/luafight/Modules/Battle/Config/Data/PassiveSkillLogicConfig.lua index 0801c9ac7..034a3da95 100644 --- a/luafight/Modules/Battle/Config/Data/PassiveSkillLogicConfig.lua +++ b/luafight/Modules/Battle/Config/Data/PassiveSkillLogicConfig.lua @@ -1,8 +1,8 @@ local PassiveSkillLogicConfig = { -__count = 2738, -__indexs = {1.7,94,1,899,1.42,8976,1.7,13,2.1,4.1,2.1,1.6,14,2.1,4.1,2.1,1.5,15,2.1,4.1,4.3,89695,1100,1.01,90,1.41,886,4.1,8.1,16.1,1.9,91,4.1,8.1,28.41,1.11,89,52.02,1.51,885,52.81,20.2,56.61,60.61,104.82,156.34,57786,1.2,99998,1.3,90097,100,1.4,96,1.5,95,1,9699,300,600,1.6,194,1,199,5.2,994,2.1,1.6,294,1.3,97,9.2,394,4600,1.8,9992,1.3,9997,1.2,298,9800,300,1,49699,33.2,1.6,94,1.2,98,1,99,6.2,58.2,1.11,1789,800,1.5,195,52.2,900,16.2,5500,200,1.51,85,1.4,196,400,1.01,190,1.3,197,1.4,596,1.01,990,2.1,1.01,290,33.2,600,1.01,390,4600,1.01,9990,1.9,9991,1.8,292,57.2,200,449400,1.27,-2.2,1.2,2,1.9,2,1.7,2,1,19,41.2,1.4,396,54.2,1.4,296,6.3,8.4,2.1,4.1,20.2,2.1,596,1.4,896,6.3,6585,-10.6,1,9,-10.3,1,9899,-10.9,1,9,5.2,11.3,-10.2,8.3,19899,13.5,-10.01,19900,15.7,59899,23.8,8.3,1,9,10,28.31,51.8,8.1,69899,78.6,-10.01,17.5,19.4,29899,25.6,9900,24.5,49899,74.11,54.5,105.3,26.6,18.2,1.2,8,72.8,14.2,114.7,1509991,10,90,2.1,1,9,1.2,88,8.3,5.2,30.3,89,4.3,389,21.1,42.14,965289,1.42,999976,1.63,64,1.14,59,1.24,5000538,30,1.2,8,1.3,17,1,29,50,1,19,56160,1.5,995,2.1,4.1,8.1,16.51,18995,1.31,87,537.5,907785,1.9,999992,1.01,999989,1.8,28000116,200,-400.2,-200.2,300,-100.2,300,59908686,-10.5,11,1,8,10,4.2,9,1.3,9896,-10.8,234.4}, +__count = 2742, +__indexs = {1.7,94,1,899,1.42,8976,1.7,13,2.1,4.1,2.1,1.6,14,2.1,4.1,2.1,1.5,15,2.1,4.1,4.3,89695,1100,1.01,90,1.41,886,4.1,8.1,16.1,1.9,91,4.1,8.1,28.41,1.11,89,52.02,1.51,885,52.81,20.2,56.61,60.61,104.82,156.34,57786,1.2,99998,1.3,90097,100,1.4,96,1.5,95,1,9699,300,600,1.6,194,1,199,5.2,994,2.1,1.6,294,1.3,97,9.2,394,4600,1.8,9992,1.3,9997,1.2,298,9800,300,1,49699,33.2,1.6,94,1.2,98,1,99,6.2,58.2,1.11,1789,800,1.5,195,52.2,900,16.2,5500,200,1.51,85,1.4,196,400,1.01,190,1.3,197,1.4,596,1.01,990,2.1,1.01,290,33.2,600,1.01,390,4600,1.01,9990,1.9,9991,1.8,292,57.2,200,449400,1.27,-2.2,1.2,2,1.9,2,1.7,2,1,19,41.2,1.4,396,54.2,1.4,296,6.3,8.4,2.1,4.1,20.2,2.1,596,1.4,896,6.3,6585,-10.6,1,9,-10.3,1,9899,-10.9,1,9,5.2,11.3,-10.2,8.3,19899,13.5,-10.01,19900,15.7,59899,23.8,8.3,1,9,10,28.31,51.8,8.1,69899,78.6,-10.01,17.5,19.4,29899,25.6,9900,24.5,49899,74.11,54.5,105.3,26.6,18.2,1.2,8,72.8,14.2,114.7,1509991,10,90,2.1,1,9,1.2,88,8.3,5.2,30.3,89,4.3,389,21.1,42.14,965289,1.42,999976,1.63,64,1.14,59,1.24,5000538,30,1.2,8,1.3,17,1,29,50,1,19,56160,1.5,995,2.1,4.1,8.1,16.51,18995,1.31,87,537.5,907785,1.9,999992,1.01,999989,1.21,28000112,200,-400.2,-200.2,300,-100.2,300,59908686,-10.5,11,1,8,10,4.2,9,1.3,9896,-10.8,234.4}, __values = {0,1.23,2,1.91,2,1.2,3,2,1.3,2.1,2.1,3,12,1,7.3,1.51,2,1.9,-2.2,1.01,2,1.7,2,1.71,2,1,2,1.31,2,1.02,14.2,2,1.32,2,1.5,2,1,4,1.52,2,1.11,12.3,1.6,98,1.4,5,-10.2,60,11,5.4,200,100,60,40,1.52,75,100,150,50,-100.2,-200.3,-300.2,-200.2,-300.2,200,1.4,96,1,3,8,2,29,1,10,249,97,1,3,496,1.7,18,8,2,1,9,1,55,69.3,6,21.5,98,3,2,494,3600,401,1.7,3,-2.2,3,1.01,5,8,1.7,13,2.1,2.1,1.6,14,2.1,4.1,2.1,1.5,15,2.1,4.1,4.3,91801,3000,1000,10000,14000,2000,8000,6.2,255893,600084,8,50978,10000,350000,1,29,70.3,19959,11568931,1.7}, -__exVals = {72,.05,.1,.2,.5,.4,.08,.3,.15,.25,.12,.6,.06,nil,.35,.8,.16,.03,.04,.18,.14,.36,.32,.7,.24,.09,.20,.10,.30,.07,.02,.45,.13,.48,.01,.72,.75,2.5,.95,.26,.64,.65,.55,3.2,3.6,.9,.17,.34,.015,1.2,.21,.23,.29,1.6,.50,.40,1.75,.96,1.5,2.8,4.8,.11,2.1,2.4,2.7,4.5,2.9,4.3,5.4,.28,.42,.85,.075}, +__exVals = {72,.05,.1,.2,.5,.4,.08,.3,.15,.25,.12,.06,.6,nil,.8,.35,.16,.03,.04,.18,.14,.36,.32,.7,.24,.09,.20,.10,.30,.07,.02,.45,.13,.48,.01,.72,.75,2.5,.95,.26,.64,.65,.55,3.2,3.6,.9,.17,.34,.015,1.2,.21,.23,.29,1.6,.50,.40,1.75,.96,1.5,2.8,4.8,.11,2.1,2.4,2.7,4.5,2.9,4.3,5.4,.28,.42,.85,.075}, __fields = { 'Id', 'Type', @@ -21,19 +21,19 @@ __defaults = { nil }, __refs = { - {45,.2,5,1.2,-7,-6,8,.4,1,-1,.4,-23,15,8,.9,-8,6,0,-5,.93,-1,.6,-5,.6,-19,.31,9,.6,5,.5,-7,.5,22,.5,-27,.5,-2,.11,54,2,.5,142,-139,-3,1,3,-4,.3,140,-140,.51,6,-3,-3,7,-1,-6,.3,3,-3,.51,1,2,-3,10,27,-37,.3,4,-4,.51,12,-9,-3,3,10,-13,20.4,14,-11,-3,15,-1,-14,.3,2,-2,.51,16,-13,-3,0,16,-16,.3,17,-17,.51,15,-12,-3,9,-3,50.2,15,-15,10.4,18,-9,-9,.3,19,-19,.51,20,-17,-3,11,-11,.3,1,-1,.51,21,-18,-3,144,-144,.3,142,-142,.51,22,-19,-3,145,-145,.3,24,-24,.51,13,-10,67.2,-15,.3,106,-106,36.2,14,-34,142,-117,-25,.3,149,-149,.51,26,-23,19.2,-5,-10,.3,41.2,76.5,131,-140,.3,18,-18,.51,27,-24,-3,28,-26,1,-3,.3,27,-27,.51,29,-26,-3,0,30,-30,.02,3,0,-3,31,-28,17.2,134.3,10.3,106,-103,10.2,13,-13,104.4,1,145,-146,96.4,68,-65,-3,32,110,-142,.12,10,-7,-3,5,-5,74.4,190.3,22,-22,.3,71,-71,.51,28,-25,-3,79.2,.3,9,-9,.51,33,-30,9.4,167.3,68,-34,121.2,-107,-35,43.4,36,-32,-4,.3,38,-38,.51,39,-36,-3,40,-25,148.2,41,-41,.31,67,-67,42,-39,-3,43,-37,-6,.3,191,-191,.51,44,-41,-3,45,1,-43,-3,.3,44,-44,113.4,183.2,4.2,.3,70,-70,.51,47,-44,-3,48,21,-69,.3,47,-47,.51,53,-50,-3,142,-93,-49,.3,50,-50,182.4,51,-11,-40,.3,39,-39,74.5,9.2,73.2,.51,50,-47,230.4,147,-147,38.4,9.3,10,-10,127.4,9.3,33,-33,18.4,52,92,276.2,54,-54,.51,55,-52,-3,33,-15,147.2,55,-55,.51,24,-21,-3,18,-8,258.2,148,-148,.51,2,1,96.2,9,-57,.3,58,-58,.51,59,-56,-3,0,59,-59,.3,60,-60,.51,18,-15,-3,13,5,187.5,69.3,3,58,-61,318.4,116.3,1,17,216.5,62,-59,-3,63,-45,10.2,126.3,365.3,226.3,69.3,89.3,.5,46.6,28,-28,333.4,45.3,62,-62,9.4,278.3,64,1,-65,.3,66,-66,.9,-37,5,-2.2,-1,-8,5,0,-37,9,4,-4,4,29,.2,-26,.2,-8,3,21,-31,-1,25,-24,44,.3,-32,0,-6,28,-35,27,18,.3,-42,9,-5,38,0,1,-1,-15,-7,-4,26,.3,211.2,-1,3,-4,1,41,.3,-41,3,2,1,12,16,-1,-1,9,1,-27,1,25,1,-4,4,0,-4,-10,-31,0,36,1,.4,-38,70.4,2,0,16,3,2,-28,14,-3,4,1,21,.2,1,-25,14,0,8,.3,1,.2,-38,4,10,.2,7,0,1,0,5,.2,12,-3,-39,14,0,12,0,-11,27,.3,-24,24,0,-15,13,-11,24.2,116.2,-14,1,.2,14,25.2,.2,-28,0,24,1,14,-1,-39,2,-1,44,112.3,.4,-32,0,-13,0,7,4,-4,5,0,9,-21,28,17,.2,1,-1,.3,-45,12,-12,45,25.3,11.3,-15,-6,-5,26,18.4,143.2,37,-25,30,-43,-4,5,1,39,49.4,149.9,.2,1,-28,1.2,23,0,1.2,7.2,-4,3,4.2,.4,155.3,38,30,72,.2,-72,.3,73,1,31,37,-67,1,-76,0,72,5,-5,1,0,5,-6,-72,79,1.2,-81,79,3,1,-83,84,1,99,-98,1.2,-9,10,1.2,-6,7,1.5,8,-7,-98,99,1,-100,101,1.3,-32,0,-72,0,185,8,-108,-15,-35,-22,-1,-6,-6,194,-176,0,27,8,-11,43,-49,-9,5,59,-61,-21,-9,16,-2,45,-2,106,-102,-52,45,86,-140,194,-207,.4,2,.4,-1,.4,8,.4,-37,.4,34,.4,-3,.4,-4,.4,5,.4,-33,.4,27,.4,9,.2,-64,0,44,.2,-44,0,67,.2,-67,0,62,.2,-62,0,65,.2,-65,0,70,856.2,-105,-34,857.3,197,-201,.5,855.4,165,1.2,-174,.5,1,149,-147,-3,10,141,-114,122,-159,.5,843.4,173,-174,175,-189,.5,842.6,.5,15,137,-149,-3,18,138,-147,152,-161,.5,26,0,784.3,172,-177,141,-151,.5,27,170,-194,0,-3,28,170,-196,197,-199,.5,170,-167,-3,0,171,-171,.5,3,-3,2.1,106,63,-166,165,-168,.5,20,2,850.2,1,95,50,3,-149,.5,68,83,-148,-3,32,123,-13,-131,-11,.5,39,12,-48,714.3,152,-167,.3,712.7,180,-186,.5,44,120,-161,0,-3,165,-119,120,-166,.5,53,43,-93,689.2,2,-95,-49,.5,15,139,-151,-3,158,-118,122,-162,18.2,-38,536.2,52,-29,121,56,-200,.5,24,129,-150,-3,18,139,-147,115.3,640.4,142,-133,-57,.5,59,117,-173,639.3,117,-176,.5,33,-18,13,834.2,3,31,27,114,-175,57.2,148,-160,629.3,142,-160,.5,1,4,-2,-3,64,138,-137,-89,0,-8,0,-18,-11,11,-11,17,-14,0,34,.3,-6,154.3,9,-33,736.2,33,21.1,42.14,-13,.42,177,0,1.2,2.1,3,2,-117,118,2,1.4,0,2,1.3,-152,.4,153,1.4,.3,2,1.2,-30,21.81,3,1,-25,6,21,-15,10,4,-31,27.21,1.2,-151,27.21,-25,2,50,-122,-1,1,8,107,-118,0,157,-170,3,-16,0,43,-57,.101,143,-140,-3,56,126,-4,1.2,-180,.3,10,167,-177,782.4,196,-41,-155,.3,194,-194,.9,-34,175,54,.5,-40,40,-195,.01,203,-203,.7,-13,2,-1,-29,26,8,-11,8,-4,5,9,.5,181,-38,47.6,3,-183,.5,44.3,3,193,-4,-37}, - {{{1},{1,.2,3,529,-1,-528,0,3,-5,8,0,-8,11,-6,-1,-4,8,-5,-3,0,5,1,3,-6,3,7,-7,-2,-4,3,-3,-1,0,1,.7,2.1,4.1,2.1,5,.2,-2,0,-3,0,287,1,2,26,1.2,2,208,.2,-1,.2,7,-6,5.4,-527,.6,527,0,-7,.2,10,-537,0,-1,2.1,-1,11.2,5,0,-4,.3,6,0,-5,0,2,28.2,0,33.4,0,7,-461,-77,6,-6,11,-3,7,-14,538,-539,534,-533,-1,99.3,528,-532,5,6,-7,11,-15,5.1,7,4.2,0,4,517,7,-525,518,35,-567,26.3,530,-534,26.01,.2,51.3,521,-3,-527,-6,543,-543,150.4,0,25.01,14,-14,11,-4,8,-15,533,-528,525,-530,0,26.3,526,-530,26.01,11,-11,2.1,15,528,-10,-525,-8,551,-551,26.3,532,-536,26.31,-5,9,516,2,-520,-2,531,-542,78.51,129.3,-5,9,-15,528,-514,-13,533,-534,26.51,181.3,104.3,528,-523,-5,.2,25.81,-3,7,25.2,-528,530,-530,102.51,179.4,-6,524,179.2,152.4,49.21,8,-8,100.5,-520,526,99.4,-2,-2,254.51,125.3,-14,50.61,99.6,2,-2,1,530,-531,26.3,-3,-1,100.41,-15,552,-546,-5,-1,51.91,-4,8,356.2,-534,-5,532,-532,26.51,253.3,3,1,522,-4,-522,-11,536,-3,-533,27.3,542,-546,129.31,-6,10,129.3,-3,-11,79.4,9,-13,358.51,515,-2,254.2,230.5,358.21,181.5,26.2,181.2,26.5,281.02,536,-527,-9,26.51,182.4,514,4,-527,523,-529,103.4,7,-11,25.01,0,52.8,531,233.4,309.71,521,-8,-520,-8,51.4,529,-533,408.91,258.61,459.8,334.71,126.5,-528,5,-6,1,638.4,126.11,-6,-9,334.7,-4,-2,385.22,539,-539,532,-531,52.4,538,-542,281.31,522,-518,639.2,-526,-7,534,561.61,462.6,533,-519,-14,0,533,360.4,692.71,515,3,-528,334.2,3,27.61,615.52,156.5,533,590.2,639.42,-1,543,716.61,26.8,542,25.4,527,-531,75.81,665.42,356.5,331.14,-15,537,-531,528,-534,50.12,543,-19,-525,-14,175.4,546,-550,50.41,-13,550,-546,199.5,713.61,479.2,-517,-11,24.4,525,-529,299.31,659.3,533,-522,2,-12,378.4,352.81,149.3,456.5,26.02,516,1043.5,350.02,531,-536,26.4,2,-6,301.51,-14,527,633.3,26.4,154.21,278.5,-6,519,278.81,77.5,527,-14,-523,0,-5,303.54,377.2,-5,177.61,24.4,531,-9,-531,530,-6,835.4,254.11,62,-77,557,-556,528,-360,-169,4,555,-24,-3,3,-3,-2,.2,-530,1.2,530,27,-265,238,0,6,-8,895.2,3,-2,530,0,-6,-521,523,6,-529,-6,5,-8,1,528,0,-523,7,-2,-6,525,1,-531,6,-3,1,-4,536,.2,-4,2,-2,-529,531,-534,10,-2,-5,531,-2,0,-2,-530,4,-4,0,4,7,-11,-2.2,7,521,-521,0,518,-239,242,0,-528,-4,1.4,526,0,8,-8,8,-9,0,-529,19,-10,529,-527,-10,537,-6,-532,1.2,9,531,-533,10,-20,.3,1.3,536,-4,-533,-2.2,527,18,-8,-1,-532,10,-5,-11,532,-526,-1,1,2.1,525,-526,1.2,3,519,-528,7.2,-531,325,217,-9,9,-541,1.2,532,-534,1.2,-2,2.1,1.2,536,.3,-6,-1,0,1,2,-527,6,-2,3,-14,137.3,532,-6,3,0,-1,-4,-2.2,.2,4,-4,18.2,-9,136.3,5,-8,531,7,-538,84.2,3,-8,148.5,-528,4,6,-8,6,-5,152.3,532,6,-6,6,-9,-526,526,29,-27,11,-8,-527,-1,5,58.2,160.3,555,-20,0,115.2,3,-4,0,7,56.3,519,-529,1,-3,.2,8,9.3,531,-535,5.3,.4,518,-235,244,-4,-525,-9,11,-10,13,-6,-4,1,-4,533,3,-537,546,23,-555,1,-15,548,-537,-11,6,1556.2,7,-9,529,-530,6,-4,-1,1,7,-7,0,507,-508,0,537,-537,0,12,534,-546,6,543,-549,0,442.2,546,-547,16,516,1,350.2,1161.2,538,-536,.3,-2,.2,170.2,1,-1,4,-4,.2,5.2,.2,2,549,-22,12,-541,0,4,527,12,-543,1,907.2,5,-6,538,-530,162.2,.4,1,-1,7,25,9,-572,.4,529,8,10,26,-43,.3,4,0,13,-4,3,5,4,34,1.2,-20,21,-50,.3,814.2,61.2,529,.2,-7,1,-2,6,319.3,2,6.2,-537,1,2,530,6.2,-7,.2,-531,.3,548.6,542,-10,-533,560,-559,550,-551,613.5,552,-34,-519,518,-532,-1,3,-2,702.5,-5,1311.2,33.2,532,-541,-2,1656.5,551,-37,-521,-8,0,574,-572,13.4,-5,9,527,-13,-516,-2,-11,1244.4,637.3,6,166.2,-5,.6,520.4,0,824.2,-5,0,-1,45.4,1424.4,-8,.2,-518,34.2,536,-535,-1,1411.5,534,7,-542,-3,0,-11,1370.6,-524,550,-542,-14,1,529,-531,1,974.6,0,552,-552,536,-5,-522,-5,-4,1220.5,-518,518,-523,1347.3,536,-536,27.7,220.2,563,-562,-1,0,817.3,518,-514,-15,529,-522,1169.3,0,777.6,0,529,0,-515,-14,.5,35.4,529.2,162.2,198.6,46.4,541,1,-542,.3,11.4,1,542,-537,526,-3,562.2,-531,923.5,1,534,-531,-6,3,-3,148.2,13.4,517,24,-545,158.3,82.4,899.3,70.2,-518,2,-12,0,160.4,83.3,.2,556,-542,516,-527,-3,.2,210.6,534,22,-551,527,-532,6,978.3,-3,7,533,14,-19,-537,418.2,530,-527,.3,534.2,-534,534,-535,529,612.2,0,8,1,519,-509,525,1031.2,-5,5,526,-526,21.1,42.14,258.2,658.4,564,-35,13,-532,0,520,.2,1,13,0,-534,519,6,5,-534,-2,-1,4,1,-8,-1,3,-1,-1,4.3,209.2,573,-575,36.6,-31,62,-585,36.4,7,749.2,523,7,-10,-524,36.21,0,555,-557,539,-10,0,5,-2,-532,41.6,-34,1,789.2,41.2,1.2,0,-522,520,0,39.41,542,-543,528,6,0,-4,11,-542,2,14.2,.2,-1,542,1,0,-12,18,-548,551,23,-573,253.4,985.3,259.6,12.1,1337.6,270.6,12.1,6.1,1014.5,11.1,5.1,39.6,11.1,407.5,514,8,719.2,7,-7,.3,1055.4,377.2,1181.51,531,-9,-537,5,1765.61,-16,1,-3.5,2,-17,6,-6,5,1.3,4,-4,69.2,4,0,520,-535,.7,535,3,-538,534,-3,-1,34,-563,541,-533,-9,54.5,519,9,0,-543,83.3,.4,13.5,533,-18,-530,1276.2,6,-11},{1924,1,4,1,4,4.1,1,412,1.42}},{{2},{1.3,528,1,-531,353,179,-2,-1,0,1,.4,-1,-464,468,-363,384,1.2,-473,472,-1,1,-1,-23,-448,199,-280,-1,294,27,-2.2,1.4,-35,4.1,8.1,4.3,2,1.3,6,9,3,-352,.31,530,48,-12,13,-30,-8,-9,-4,5,4,6,-13,0,-2,1,8,-2,-5,6,-533,.5,-2,.11,1,.5,46,212,273,-273,71,198,-528,5,524,-529,289,89,149,0,-528,528,.3,3.1,-528,260,20.3,204,-534,4,532,-247,19.3,-520,520,19.9,202,-532,0,-1,529,-529,290,21.2,.5,18.5,279,-279,18.4,10,518,18.4,39.21,206,-536,11,-1,518,-517,278,21.3,-527,527,60.11,41.2,5,-244,59.31,4,116.2,76.41,5,523,75.5,133.8,20.6,537,-535,282,74.61,133.2,-239,56.31,530,-527,525,17.3,56.21,131.2,93.2,19.4,3,-3,75.11,528,14,-542,228.4,-529,529,20.6,269,-269,248.3,528,-529,537,229.3,76.6,265.6,531,-537,2,288,18.11,226.3,542,-542,1,18.9,73.5,-1,5,524,5,3,284.4,95.31,-1,14,515,-525,286,266.11,135.6,0,524,1,-519,279,230.41,537,135.4,97.21,208.2,-521,228.4,1,-1,57.5,528,-268,39.71,362.6,3,525,2,-241,287.71,523,250.51,343.4,286.9,227.5,0,528,8,-6,56.4,95.7,545,-285,22.5,-1,537,-537,439.51,20.3,6,524,-530,385.51,-331,1,529,-519,518,20,-259,21.3,21,-21,215.11,2,-2,528,2,-529,277.3,0,-525,525,258.21,1,528,-521,-6,299.51,6,523,13,-252,601.41,432.3,-531,241.6,14,-14,489.31,-2,-541,510.71,-1,6,537,-543,21.21,63.5,541,-542,512.4,381.41,515.6,605.31,16.9,277,-277,220.3,116.2,241.6,2,-2,241.21,5,739.5,94.8,281.6,0,530.31,376.3,6,536,-12,376.71,10,532,20.5,78.8,627.01,131.9,16.4,-529,3,287,169.61,5,523,-528,873.21,230.8,666.5,21.31,3,209.51,330.3,-530,291,227.42,791.7,848.01,506.6,485.2,223.4,420.7,19,29,-47,32,297,-329,1068.3,2,-2,1.2,846.2,6,1,-534,527,9.2,0,-1,117.2,0,11,-2,-8,533,-515,27,-42,525,-360,-168,10,-7,5,520,-520,-7,532,-534,4,42,-37,520,-529,.5,64,-64,529,-520,-5,42,-46,.3,532,-251,-112,359,-519,16.2,534,-525,520,-526,526,0,-526,527,0,-178,-23,.4,-328,71.4,4.2,527,-529,0,535,-534,-1,.2,535,0,-5,0,-530,9,5,-13,1.3,530,-534,529,7,-4,-2,11,-6,-3,4,0,-4,-492,-32,547,-1,-1,1,27,-27,28,-27,0,-555,553,0,-546,-7,0,1.2,533,.2,61.2,.2,-7,.5,3,0,-2,-530,544,-492,-45,535,-533,10,511,-511,2.1,-10,0,-9,.3,11,525,-536,1.2,-2,2,539,341.2,0,511,-501,53,-73,521,146.2,3,525,.2,25.2,31.3,-17,139.2,9,21.3,-521,73,-63,511,-530,.3,3,37,-37,-3,5,-5,134.2,0,521,55.4,73,-82,1,.2,537,-214,-43,247,-524,15,32.2,-530,531,-530,-1,4,8.3,-527,1,5.3,.4,-527,531,-6,-520,47,-53,531,148.3,34,-561,224.3,530,-530,26,-26,150,410,2,-25,1015.2,1,3,-4,1,0,-8,-530,583,-580,581,-584,535,-535,1.2,-1,540,-540,545,-12,-534,550,-548,6,69,183,269,19,-548,66.2,534,-531,527,-1,-530,0,9,521,-530,535,-523,519,-528,-3,530,-528,532,-530,-4,.4,588,-29,-24,-5,6,-2,7,-9,0,-1,3,.4,-533,.4,563,29,-23,24,1,-53,.2,-542,0,532,-1,7,.2,-535,.2,1,0,-4,.2,-1,6.2,.2,11,.2,519,4,-3,-239,237,-236,87,157,-536,-1,6,545,-550,0,291,11.3,193,-572,4,542,-547,292,9.3,149,389.4,-2,-535,528,-236,12.3,167,-546,11,-1,526,325.2,-240,23.5,10,526,-6,-239,241,-240,32.4,5,176.2,-531,530,-238,245,-244,64.3,528,10,-539,547,-547,535,-243,33.6,-10,1,1181.2,0,-1,292,37.6,4,532,-6,15,-254,11.3,68.2,4,524,-524,532,-7,-529,10,-11,25.6,535,-530,613.2,0,-2,293,106.6,533,-534,537,-529,-4,0,288,139.6,541,-535,545,-551,36.4,-380,962.3,526,12,-549,11.4,61.2,2,-3,1.2,535,-6,0,-531,154.6,282.2,155.2,-529,252,273,71.4,1018.4,.2,292,243,-242,35.3,809.2,543,-543,11,94.2,144.5,486.3,144.2,529,-237,94.6,6,523,16,-15,179.6,530,-520,519,12,-8,-242,142.6,532,-537,537,-534,-4,293,23.5,5,531,49.2,56.6,.2,55.2,-15,3,-156,-44,-335,534,-534,110.2,5,-4,4,1,-5,1,-2,-1,1,-529,528,340.2,21.1,42.14,535,0,-534,1.2,8,524,-535,539,-4,2,0,-536,531,-521,-11,543,252.2,.4,7,-15,-518,524,9,.3,-539,530,-524,519,0,-529,28.2,584.2,552,-16,7,0,-542,537,-527,-11,551,-538,533,.4,-18,7,-524,525,-8,.3,8,-525,-7,0,-4,536,0,497.2,8,530,-541,535,6,-11,39.2,-1,222.2,548,-12,.4,-3,3,-525,530,29.3,-530,29.3,529,1.2,18,-19,19,-8,-541,.2,11,20,-19,0,519,-409,422,-422,202,221,-544,121,6.3,209,-532,6.4,12.1,12.6,204,-527,12.1,12.7,423,-423,12.1,12.4,6.3,36.9,12.11,259,1145.5,8,-9,357.2,1166.4,9,-9,1166.11,0,-1,543,-544,5,1602.4,-524,524,22.5,77,-77,.5,4,-4,539,-6,-6.2,-6,-6,6,1007.2,-330,-1,513,17,6,9.2,-2,-2,6,12,-539,538,-18,682.2,576,-38,-246,488.5,8,-9,530,-519,-11,293,242,442.2,11.2,0,-1,263.2,-7,600,-595},{5,77,1.6,65,4,22,3,1,25,6,21,25,23,4,5,17,3.1,3,23,25,3,5,20,22,3,2.1,26,1,5,17,9,17,3,7,46,32,24.3,21,23,8,42,20.3,5,20,24,4,-26.2,25,27,7,20,26,23,54,25,45.3,5,56.2,1,2.1,5,20,23,70.4,5,17,26,4,26,36.3,25,24.3,17,8,20,1,16,2,3,16,63,35,1.2,20,10,22,85,5,15,2,12,14,4,-3.2,1,3,1.2,4,3,4,1,5,8,-2.2,9.2,5,2,4,-2.2,12,1.4,6,1.4,39,1,4,1,4,4.1,1,7,5,8,3,2,1,8,3,13,1,9,4,7,4,14,2,8,5,35,6,14,13,1,11,26,1,8,14,5,12,2,11,9,5,8,1.2,13,1,4,12,1.2,16,2,21,2.1,4.3,6,1.42,9,10,1,26,3.2,17,3,1,-10.2,1,16,3,1,13,110,2,87.2,39,30,3,2,10,6,1.3}},{{3},{2,1,-1,0,1,0,4.3,-1,.9,3.2,529,6,-5,6,-2,7,-10,-2,7.6,26,-13,1,-6,-6,0,2,12.5,4,6.1,6.5,-493,-38,.6,1,-1,.3,-1,2,-1,59.4,5.3,.5,3.2,.7,8.4,13.5,.2,27.3,3.2,.4,16.9,26.5,15.01,31.3,8.3,2,-1,3.2,-2,39.3,52.31,5.1,18.7,.9,536,-536,13.1,65.01,.8,78.51,109.31,.41,529,-528,149.12,.7,4,-3,93.11,54.4,17.3,55.01,97.31,84.5,.2,140.21,207.51,87.01,100.3,26.3,42.01,156.3,102.41,528,-527,36.2,3,-2,18.8,5.3,313.4,174.01,376.3,11.7,.31,536,-535,11.9,66.41,-523,-5,3,-3,.3,68.01,62.3,3.1,71.3,144.8,187.2,70.3,.3,74.01,.6,11.5,101.01,164.3,532,-531,18.4,568,-567,196.01,496.5,36.01,.51,253.41,0,-1,531,-531,82.11,214.3,22.3,548,-547,63.9,548,-548,115.41,53.7,293.31,119.3,208.12,93.6,531,-530,123.22,535,-534,477.41,13.3,.4,324.3,184.11,31.01,98.3,263.01,13.3,47.6,117.8,530,-529,54.9,538,-538,1,579,-580,192.11,145.01,125.01,165.51,-1,558,-558,670.61,.4,82.01,0,7,527,.4,2,.2,-527,.2,-6,-2,-1,21.2,.2,32.2,534,0,-6,2,-530,.2,1,6,523,9,-539,49.7,535,.2,24,-31,3,-528,525,653.2,.2,529,5,-4,0,57.4,1,63,-63,0,527,-528,1,530,.6,-524,524,-2,-524,529,-4,-529,.3,6,524,-512,19,-24,-14,528,-521,.4,-7,.3,19,-19,0,532,.2,-521,.2,527,-531,.8,-7,1,-1,534,-534,68.3,71.6,531,0,1,0,-3,-528,537,-7,0,-522,525,-534,133.3,3.2,17.2,29,-560,112.3,149.7,16.3,.2,29,-28,-526,521,2,-2,33,-561,49.6,530,4,.2,-533,26.6,81,-82,4.2,314.2,-529,.91,2,-2,26.3,.2,6,-3,-3,0,550,-550,.6,3,6.2,1.2,-2,0,585,-585,5,-5,0,542,-542,.2,586,-16,1,16,-582,6,.4,521,-1,7,25,9,-570,.4,-2,.4,1,563,-562,.2,-3,.2,10,.2,522,.2,-531,678.6,104.5,8.3,144.6,947.4,3.2,566.7,630.3,577.4,4,1,-4,585.6,.2,5,-5,501.4,666.5,0,801.6,764.4,0,535,-535,.6,42.4,439.3,1010.5,416.3,532,-532,14.3,521.7,133.2,449.4,687.6,6.2,161.2,513.4,13,423.2,82.3,41.3,73.4,7.3,.2,1,3,-1,-3,856.6,.2,3,0,-3,1,.3,21.2,529,-529,2.1,0,12.1,24.22,-524,-1,526,75.3,-530,0,4,1,530,339.3,-2,.5,539,-539,7,1,6,-8,-6,11,-10,4,438.2,92.3,20.2,4,1,531,-535,8.2,.6,552,-552,24.4,5,-10,45.3,4,-1,527,5,0,-5,-531,26.3,536,-540,0,-1,.5,537,-537,26.9,488.2,395.3,0,2,95.3,-5,.01,1,-1,3.1,.13,6.5,161.3,6.3,.61,783.4,7,-6,679.11,536,-537,651.01,0,4,.5,528,-528,1151.5,.4,541,-540,.7,529,-519,521,-529,-3,2,-2,222.3,576,-566,-11,.5,1,.2,545},{1.8,12,1,11,1.65,15,1.81,32,3,1,22,3.1,3,1,5,17,4,25,6,4.2,7.3,3.2,3,23,8,4.2,5,20,22,3,24.4,20,27.3,9,17,3,1,29.3,25,32,8.3,5,21,23,3,5,17,25,28.3,5,20,24,4,26,20,6,34.3,26,7,4.2,25,23,54,5,20,60.3,5,21,25,1,2.1,69.4,74.4,88.4,70.3,26,46.3,25,28.3,17,89.3,1,16,1.2,2,1.3,14,12,2,2.1,21,1.2,4,1,7,3,1.5,12,1,8,1.9,2,1.6,11,8,1.2,21,1,23,20,2,19,13,1.2,6,1.5,15,2,10,1.4,4,8,4,3,1,2,44.2,1.6,4.2,8.3,3,7,12.3,3,2.1,-2.2,1,3.1,11,1.4,6,1.9,21,1.9,4,1.6,4,1,4.2,7,1,22.2,7,3,2,1,8.3,1.3,10,1,9,4,8.3,1,13,1.3,7,1,4,2,8,4,21,4,1.3,8,5,13,1,5,6,4.2,9,3,1,8,1,13,4,1.2,11,27.2,10.4,4,1,7,1.2,5,8,59.4,4.3,2.1,2,9,2,8,5.1,10.9,6,1.42,7.2,5,25.2,8,17,6.5,62.3,9,9.4,7,9.3,-2.2,25.2,109,1.4,5,18,3,17,1,30,2,1,2,10,6,81.2,77.2}},{{4},{14,-11,.6,1,.6,2,0,2,.2,2,-8,.71,38,-37,0,-2,1,6,-7,4,525,-527,2,-3,535,7,-12,1,-531,1,.2,-2,2,1,-2,1,-1,2,-2,9,.2,-6,.2,-3,2,-1,1,-2,0,12,-12,1.2,-2,4,-4,4,0,-3,0,11,0,-9,9,0,-7,-5,31.4,.2,1,.2,11,-5,-7,.2,2,0,7,40.3,-2,.5,2,.2,1,49,-41,-11,1,-1,2.1,11,-11,0,11,.2,-12,1.3,4,-7,5,-1,-3,3,8,-8,-2,17.2,0,-8,8,.4,43.2,529,0,6,0,-7,2,-526,3,.3,525,.4,-530,.4,530,.4,-525,.2,-5,4,0,-6,6,-6,0,1,2,125.2,0,10,-5,9.3,0,2,-3,1,2,-2,0,3.1,6.1,-1,0,5,-1,1,-4,0,3,0,-3,-1,.4,536,-535,574,-575,15.11,1,556,-18,-10,-527,-2,17.21,543,-15,6,-533,-2,11,-9,-2,3,530,-534,530,9,4,-542,.3,-1,577,-61,-511,528,-530,530,45,-578},{14,75,1.31,20,1.42,265,8,25,18,25,134,49,3,52,72,1,29,6,123,9,21,25,126,49,113,46,146,5,1.01,5,1,6,1,3,6,5,9,1.4,2,1,5,2,5,2,4,1.4,10,1.9,9,24,1.5,12,1.5,2,1.8,3,4,5,6,1.3,7,-5.2,2,3,4,8,5,1.9,4,6,2,5,4,10,1,4,1.5,60,7,1,8,7,2,15,1.5,26,1.41,26,1.2,31,61,1,19,2,22,3,8,13,4,1,10,15,2,27,11,13,10,19,26,2,35,8,2,13,3.1,6.5,30,86.2,7,2,1,10,-2.2,1.11,7.6,85.2,1,3,4.2,11.3,9,11.5,2,4,1.2,8,116,21,5,13,1.7,12,9,7,1.2,12,17}},{{5},{531,-524,0,2,.2,2,0,-4,6.5,-8,.5,3,8.4,-3,0,2,0,19.5,6.3,-6,-3,9,-8,8,-8,.2,8,0,520,-520,.3,-9,528,1,0,-529,529,0,-528,-1,19.3,.2,20,-21,522,-530,1,.2,529,-521,0,521,.3,-521,.3,-8,2,527,-530,528,2,0,-530,530,.4,-529,-1,0,3,1,.2,5,0,-5,3,-6,2,530,-527,524,-530,-1,.7,530,52.2,.2,4,531,-535,535,0,-535,.2,536,-536,5,0,525,38.2,.2,541,-541,33.3,533,-3,-530,19,.6,512,-522},{14,75,1.31,20,1.32,528,824,1.6,15,1,14,9,1.3,11,5,2,4,1.4,11,1.5,2,1,9,24,17,1.2,25,6,1,14,10,4,8,5,1.4,2,7,8,5,4,10,1,4,1.5,60,7,18,51,1.4,64,83,-25.2,26,2,38,42,71,2,21,2.1,4.3,30,1.4,30,1.7,30,1,2,1,56.2,29,6.3,5,4,2,8,155,64.2,12,17}},{{6},{3,-1,.6,1,.6,-1,.5,1,.5,-1,1,2.1,0,4.2,.3,6.2,527,-527,0,5.2,.5,1,25.2,536,-5,.4,-532,7.2,.7,7,1,-8,0,1,6,5.2,1,-1,0,11.3,6.3,2,515,15},{14,75,1.31,32,1.11,1353,2,18,1,14,28,2,4,2,1,13,2,5,9,68,6,1,14,10,4,8,18,13,4,10,5,1.4,68,69,1.4,64,199,113,2,21,2.1,4.3,30,1,33,1.4,33,1,2,1,4,1,32,6.3,11,182,17}},{{7},{3,-1,1,542,-543,.9,532,-531,8,-9,0,1,4.1,8,541},{1561,29,151,228,312,2,21,2.1,4.3,30,1,33,1.4,33,1,7,1,32,1,196}},{{8},{11,-5,5,-8,1,.7,6,506},{1561,29,151,228,312,2,21,2.1,4.3,64,275}},{{9},{2,550},{2416,275}},{{10},{518},{2691}},{{11},{552},{2691}},{{12},{520},{2691}},{{13},{530},{2691}},{{14},{522},{2691}},{{15},{537},{2691}},{{16},{523},{2691}},{{17},{536},{2691}},{{18},{524},{2691}},{{19},{543},{2691}},{{20},{525},{2691}},{{21},{599},{2691}},{{22},{526},{2691}},{{23},{571},{2691}},{{24},{527},{2691}},{{25},{570},{2691}},{{26},{528},{2691}},{{27},{600},{2691}},{{28},{529},{2691}}}, + {45,.2,5,1.2,-7,-6,8,.4,1,-1,.4,-23,15,8,.9,-8,6,0,-5,.93,-1,.6,-5,.6,-19,.31,9,.6,5,.5,-7,.5,22,.5,-27,.5,-2,.11,54,2,.5,142,-139,-3,1,3,-4,.3,140,-140,.51,6,-3,-3,7,-1,-6,.3,3,-3,.51,1,2,-3,10,27,-37,.3,4,-4,.51,12,-9,-3,3,10,-13,20.4,14,-11,-3,15,-1,-14,.3,2,-2,.51,16,-13,-3,0,16,-16,.3,17,-17,.51,15,-12,-3,9,-3,50.2,15,-15,10.4,18,-9,-9,.3,19,-19,.51,20,-17,-3,11,-11,.3,1,-1,.51,21,-18,-3,144,-144,.3,142,-142,.51,22,-19,-3,145,-145,.3,24,-24,.51,13,-10,67.2,-15,.3,106,-106,36.2,14,-34,142,-117,-25,.3,149,-149,.51,26,-23,19.2,-5,-10,.3,41.2,76.5,131,-140,.3,18,-18,.51,27,-24,-3,28,-26,1,-3,.3,27,-27,.51,29,-26,-3,0,30,-30,.02,3,0,-3,31,-28,17.2,134.3,10.3,106,-103,10.2,13,-13,104.4,1,145,-146,96.4,68,-65,-3,32,110,-142,.12,10,-7,-3,5,-5,74.4,190.3,22,-22,.3,71,-71,.51,28,-25,-3,79.2,.3,9,-9,.51,33,-30,9.4,167.3,68,-34,121.2,-107,-35,43.4,36,-32,-4,.3,38,-38,.51,39,-36,-3,40,-25,148.2,41,-41,.31,67,-67,42,-39,-3,43,-37,-6,.3,191,-191,.51,44,-41,-3,45,1,-43,-3,.3,44,-44,113.4,183.2,4.2,.3,70,-70,.51,47,-44,-3,48,21,-69,.3,47,-47,.51,53,-50,-3,142,-93,-49,.3,50,-50,182.4,51,-11,-40,.3,39,-39,74.5,9.2,73.2,.51,50,-47,230.4,147,-147,38.4,9.3,10,-10,127.4,9.3,33,-33,18.4,52,92,276.2,54,-54,.51,55,-52,-3,33,-15,147.2,55,-55,.51,24,-21,-3,18,-8,258.2,148,-148,.51,2,1,96.2,9,-57,.3,58,-58,.51,59,-56,-3,0,59,-59,.3,60,-60,.51,18,-15,-3,13,5,187.5,69.3,3,58,-61,318.4,116.3,1,17,216.5,62,-59,-3,63,-45,10.2,126.3,365.3,226.3,69.3,89.3,.5,46.6,28,-28,333.4,45.3,62,-62,9.4,278.3,64,1,-65,.3,66,-66,.9,-37,5,-2.2,-1,-8,5,0,-37,9,4,-4,4,29,.2,-26,.2,-8,3,21,-31,-1,25,-24,44,.3,-32,0,-6,28,-35,27,18,.3,-42,9,-5,38,0,1,-1,-15,-7,-4,26,.3,211.2,-1,3,-4,1,41,.3,-41,3,2,1,12,16,-1,-1,9,1,-27,1,25,1,-4,4,0,-4,-10,-31,0,36,1,.4,-38,70.4,2,0,16,3,2,-28,14,-3,4,1,21,.2,1,-25,14,0,8,.3,1,.2,-38,4,10,.2,7,0,1,0,5,.2,12,-3,-39,14,0,12,0,-11,27,.3,-24,24,0,-15,13,-11,24.2,116.2,-14,1,.2,14,25.2,.2,-28,0,24,1,14,-1,-39,2,-1,44,112.3,.4,-32,0,-13,0,7,4,-4,5,0,9,-21,28,17,.2,1,-1,.3,-45,12,-12,45,25.3,11.3,-15,-6,-5,26,18.4,143.2,37,-25,30,-43,-4,5,1,39,49.4,149.9,.2,1,-28,1.2,23,0,1.2,7.2,-4,3,4.2,.4,155.3,38,30,72,.2,-72,.3,73,1,31,37,-67,1,-76,0,72,5,-5,1,0,5,-6,-72,79,1.2,-81,79,3,1,-83,84,1,99,-98,1.2,-9,10,1.2,-6,7,1.5,8,-7,-98,99,1,-100,101,1.3,-32,0,-72,0,185,8,-108,-15,-35,-22,-1,-6,-6,194,-176,0,27,8,-11,43,-49,-9,5,59,-61,-21,-9,16,-2,45,-2,106,-102,-52,45,86,-140,194,-207,.4,2,.4,-1,.4,8,.4,-37,.4,34,.4,-3,.4,-4,.4,5,.4,-33,.4,27,.4,9,.2,-64,0,44,.2,-44,0,67,.2,-67,0,62,.2,-62,0,65,.2,-65,0,70,856.2,-105,-34,857.3,197,-201,.5,855.4,165,1.2,-174,.5,1,149,-147,-3,10,141,-114,122,-159,.5,843.4,173,-174,175,-189,.5,842.6,.5,15,137,-149,-3,18,138,-147,152,-161,.5,26,0,784.3,172,-177,141,-151,.5,27,170,-194,0,-3,28,170,-196,197,-199,.5,170,-167,-3,0,171,-171,.5,3,-3,2.1,106,63,-166,165,-168,.5,20,2,850.2,1,95,50,3,-149,.5,68,83,-148,-3,32,123,-13,-131,-11,.5,39,12,-48,714.3,152,-167,.3,712.7,180,-186,.5,44,120,-161,0,-3,165,-119,120,-166,.5,53,43,-93,689.2,2,-95,-49,.5,15,139,-151,-3,158,-118,122,-162,18.2,-38,536.2,52,-29,121,56,-200,.5,24,129,-150,-3,18,139,-147,115.3,640.4,142,-133,-57,.5,59,117,-173,639.3,117,-176,.5,33,-18,13,834.2,3,31,27,114,-175,57.2,148,-160,629.3,142,-160,.5,1,4,-2,-3,64,138,-137,-89,0,-8,0,-18,-11,11,-11,17,-14,0,34,.3,-6,154.3,9,-33,736.2,33,21.1,42.14,-13,.42,177,0,1.2,2.1,3,2,-117,118,2,1.4,0,2,1.3,-152,.4,153,1.4,.3,2,1.2,-30,21.81,3,1,-25,6,21,-15,10,4,-31,27.21,1.2,-151,27.21,-25,2,50,-122,-1,1,8,107,-118,0,157,-170,3,-16,0,43,-57,.101,143,-140,-3,56,126,-4,1.2,-180,.3,10,167,-177,782.4,196,-41,-155,.3,194,-194,.9,-34,175,54,.5,-40,40,-195,.01,203,-203,.7,195,.3,-208,2,-1,-29,26,8,-11,8,-4,5,9,.5,181,-38,49.6,3,-183,.5,46.3,3,193,-4,-37}, + {{{1},{1,.2,3,529,-1,-528,0,3,-5,8,0,-8,11,-6,-1,-4,8,-5,-3,0,5,1,3,-6,3,7,-7,-2,-4,3,-3,-1,0,1,.7,2.1,4.1,2.1,5,.2,-2,0,-3,0,287,1,2,26,1.2,2,208,.2,-1,.2,8,-7,5.4,-528,.6,528,0,-8,.2,11,-538,0,-1,2.1,-1,527,0,5,0,-4,.3,6,0,-5,0,2,28.2,0,33.4,0,8,-462,-77,6,-6,11,-3,7,-14,537,-538,534,-533,-1,99.3,528,-532,5,6,-7,11,-15,5.1,7,4.2,0,4,517,6,-524,518,35,-567,26.3,530,-534,26.01,82.2,-3,7,521,-3,-527,-6,543,-543,150.4,0,25.01,14,-14,11,-4,8,-15,533,-528,525,-530,0,26.3,526,-530,26.01,11,-11,2.1,15,528,-10,-525,-8,551,-551,26.3,532,-536,26.31,-5,9,516,2,-520,-2,530,-541,78.51,129.3,-5,9,-15,528,-514,-13,533,-534,26.51,181.3,104.3,528,-523,-5,.2,25.81,-3,7,25.2,-528,530,-530,102.51,179.4,-6,524,179.2,152.4,49.21,8,-8,100.5,-520,526,99.4,-2,-2,254.51,125.3,-14,50.61,99.6,2,-2,1,530,-531,26.3,-3,-1,100.41,-15,552,-546,-5,-1,51.91,-4,8,356.2,-533,-5,532,-532,26.51,253.3,3,1,522,-4,-522,-11,536,-3,-533,27.3,542,-546,129.31,-6,10,129.3,-3,-11,79.4,9,-13,358.51,515,-2,254.2,230.5,358.21,181.5,26.2,181.2,26.5,281.02,536,-527,-9,26.51,182.4,514,4,-527,523,-529,103.4,7,-11,25.01,0,52.8,531,233.4,309.71,521,-8,-520,-8,51.4,529,-533,408.91,258.61,459.8,334.71,126.5,-528,5,-6,1,638.4,126.11,-6,-9,334.7,-4,-2,385.22,538,-538,532,-531,52.4,537,-541,281.31,522,-518,639.2,-526,-7,534,561.61,462.6,533,-519,-14,0,533,360.4,692.71,515,3,-528,334.2,3,27.61,615.52,156.5,533,590.2,639.42,457.2,716.61,26.8,541,25.4,527,-531,75.81,665.42,356.5,331.14,-15,537,-531,528,-534,50.12,543,-20,-524,-14,175.4,546,-550,50.41,-13,550,-546,199.5,713.61,479.2,-517,-11,24.4,525,-529,299.31,659.3,533,-522,2,-12,378.4,352.81,149.3,456.5,26.02,516,1043.5,350.02,531,-536,26.4,2,-6,301.51,-14,527,633.3,26.4,154.21,278.5,-6,519,278.81,77.5,526,-13,-523,0,-5,303.54,377.2,-5,177.61,24.4,531,-9,-531,530,-6,835.4,254.11,62,-77,557,-556,528,-360,-169,4,555,-24,-3,3,-3,-2,.2,-530,1.2,530,27,-265,238,0,7,-9,895.2,3,-2,530,0,-6,-521,523,7,-530,-6,5,-8,1,528,0,-523,7,-2,-6,525,1,-531,6,-3,1,-4,536,.2,-4,2,-2,-529,531,-534,10,-2,-5,531,-2,0,-2,-530,4,-4,0,4,7,-11,-2.2,7,521,-521,0,518,-239,242,0,-528,-4,1.4,526,0,9,-9,9,-10,0,-529,19,-10,530,-528,-10,538,-7,-532,1.2,9,530,-532,10,-20,.3,1.3,537,-5,-533,-2.2,527,18,-9,1,-533,10,-5,-11,532,-526,-1,1,2.1,525,-526,1.2,3,519,-528,7.2,-531,325,218,-10,10,-542,1.2,532,-534,1.2,-2,2.1,1.2,537,.3,-7,-1,0,1,2,-527,6,-2,3,-14,137.3,533,-7,3,0,-1,-4,-2.2,.2,5,-5,18.2,-9,136.3,5,-8,531,8,-539,84.2,3,-8,148.5,-528,4,6,-8,6,-5,152.3,532,7,-7,7,-10,-526,526,29,-27,10,-7,-527,-1,5,58.2,160.3,555,-19,0,115.2,3,-4,0,7,56.3,519,-529,1,-3,.2,8,9.3,1525.2,5.3,.4,518,-235,245,-5,-525,-9,11,-10,13,-6,-4,1,-4,533,3,-537,546,23,-555,1,-15,548,-537,-11,6,31.2,7,-9,529,-530,6,-4,-1,1,7,-7,0,507,-508,0,537,-537,0,12,534,-546,6,543,-549,0,442.2,546,-547,16,516,1,350.2,1161.2,539,-537,.3,-2,.2,170.2,1,-1,4,-4,.2,5.2,.2,2,549,-22,13,-542,0,4,527,12,-543,1,907.2,5,-6,539,-531,162.2,.4,1,-1,8,24,9,-572,.4,529,8,10,26,-43,.3,4,0,13,-4,3,5,4,34,1.2,-20,21,-51,.3,814.2,61.2,530,.2,-8,1,-2,6,319.3,2,-2,7,-538,1,2,530,6.2,-8,.2,-531,.3,548.6,542,-10,-533,560,-559,550,-551,613.5,552,-34,-519,518,-532,-1,3,-2,702.5,-5,1311.2,33.2,532,-541,-2,1656.5,551,-37,-521,-8,0,574,-572,13.4,-5,9,526,-12,-516,-2,-11,1244.4,637.3,6,166.2,-5,.6,520.4,0,824.2,-5,0,-1,45.4,1424.4,96.2,-518,34.2,536,-535,-1,1411.5,534,7,-542,-3,0,-11,1370.6,-524,550,-542,-14,1,529,-531,1,974.6,0,552,-552,536,-5,-522,-5,-4,1220.5,-518,518,-523,1347.3,536,-536,27.7,220.2,563,-562,-1,0,817.3,518,-514,-15,529,-522,1169.3,0,777.6,0,529,0,-515,-14,.5,35.4,529.2,162.2,198.6,46.4,542,-1,-541,.3,11.4,1,542,-537,526,-3,562.2,-531,923.5,1,534,-531,-6,3,-3,148.2,13.4,517,24,-545,158.3,82.4,899.3,70.2,-518,2,-12,0,160.4,83.3,.2,556,-542,516,-527,-3,.2,210.6,534,22,-551,527,-532,6,978.3,-3,7,533,14,-19,-537,418.2,530,-527,.3,-2,556.2,534,-535,529,612.2,0,8,1,519,-509,525,-525,-14,-5,5,526,-526,21.1,42.14,258.2,658.4,564,-35,13,-532,0,520,.2,1,13,0,-534,519,-6.2,-535,-2,-1,4,1,-8,-1,3,-1,-1,4.3,208.2,573,-575,35.6,-31,62,-585,35.4,6,0,1633.2,8,-11,-524,36.21,0,555,-557,538,-9,0,5,-2,-532,41.6,-34,1,788.2,41.2,1.2,0,-522,520,0,39.41,542,-543,528,6,0,-4,10,-541,2,14.2,.2,-1,543,-1,0,-11,18,-548,551,23,-573,252.4,984.3,258.6,12.1,1336.6,269.6,12.1,6.1,1013.5,11.1,5.1,39.6,11.1,406.5,514,8,718.2,7,-7,.3,1054.4,376.2,1180.51,531,-9,-537,5,1764.61,-16,1,-3.5,2,-17,6,-6,5,1.3,4,-4,69.2,4,0,520,-535,.7,4,-5.2,2,519,4,-539,534,-3,-1,34,-563,540,-532,-9,57.5,519,9,0,-543,86.3,.4,13.5,533,-18,-530,1278.2,6,-11},{1924,1,4,1,4,4.1,1,412,1.42}},{{2},{1.3,528,1,-531,353,179,-2,-1,0,1,.4,-1,-464,468,-363,384,1.2,-473,472,-1,1,-1,-23,-448,199,-280,-1,294,27,-2.2,1.4,-35,4.1,8.1,4.3,2,1.3,6,9,3,-352,.31,530,48,-12,13,-30,-7,-10,-4,5,4,6,-13,0,-2,1,8,-2,-5,6,-533,.5,-2,.11,1,.5,46,212,273,-273,71,198,-528,5,524,-529,289,89,149,0,-528,528,.3,3.1,-528,260,20.3,204,-534,4,532,-247,19.3,-520,520,19.9,202,-532,0,-1,529,-529,290,21.2,.5,18.5,278,-278,18.4,10,518,18.4,39.21,206,-536,11,-1,518,-517,278,21.3,-527,527,60.11,41.2,5,-244,59.31,4,116.2,76.41,5,523,75.5,133.8,20.6,537,-535,282,74.61,133.2,-239,56.31,530,-527,525,17.3,56.21,131.2,93.2,19.4,3,-3,75.11,528,14,-542,228.4,-529,529,20.6,269,-269,248.3,528,-529,537,229.3,76.6,265.6,531,-537,2,288,18.11,226.3,542,-542,1,18.9,73.5,-1,5,524,5,3,284.4,95.31,-1,14,515,-525,286,266.11,135.6,0,524,1,-519,279,230.41,537,135.4,97.21,208.2,-521,228.4,1,-1,57.5,528,-268,39.71,362.6,3,525,2,-241,287.71,523,250.51,343.4,286.9,227.5,0,528,8,-6,56.4,95.7,545,-285,22.5,-1,537,-537,439.51,20.3,6,524,-530,385.51,-331,1,529,-519,518,20,-259,21.3,21,-21,215.11,2,-2,528,2,-529,277.3,0,-525,525,258.21,1,528,-521,-6,299.51,6,523,12,-251,601.41,432.3,-531,241.6,13,-13,489.31,-1,-542,510.71,-1,6,537,-543,21.21,63.5,540,-541,512.4,381.41,515.6,605.31,16.9,277,-277,220.3,116.2,241.6,2,-2,241.21,5,739.5,94.8,281.6,0,530.31,376.3,6,536,-12,376.71,10,532,20.5,78.8,627.01,131.9,16.4,-529,3,287,169.61,5,523,-528,873.21,230.8,666.5,21.31,3,209.51,330.3,-530,291,227.42,791.7,848.01,506.6,485.2,223.4,420.7,19,29,-47,32,297,-329,1068.3,2,-2,1.2,846.2,6,1,-534,527,9.2,0,-1,117.2,0,11,-2,-8,533,-515,27,-42,525,-360,-168,10,-7,5,520,-520,-7,532,-534,4,42,-37,520,-529,.5,64,-64,529,-520,-5,42,-46,.3,532,-251,-112,359,-519,16.2,534,-525,520,-526,526,0,-526,527,0,-178,-23,.4,-328,71.4,4.2,527,-529,0,535,-534,-1,.2,535,0,-5,0,-530,9,5,-13,1.3,530,-534,529,7,-4,-2,12,-7,-3,4,0,-4,-492,-32,547,-1,-1,1,27,-27,28,-27,0,-555,553,0,-546,-7,0,1.2,533,.2,61.2,.2,-7,.5,3,0,-2,-530,544,-492,-45,534,324.2,511,-511,2.1,-10,0,-9,.3,11,525,-536,1.2,-2,2,540,-533,10,0,511,-501,53,-73,521,146.2,3,525,.2,25.2,31.3,-17,139.2,9,21.3,-521,73,-63,511,-530,.3,3,37,-37,-3,5,-5,134.2,0,521,55.4,73,-82,1,.2,538,-215,-43,247,-524,15,32.2,-530,531,-530,-1,4,8.3,-527,1,5.3,.4,-527,531,-6,-520,47,-53,531,148.3,34,-561,224.3,530,-530,26,-26,150,410,2,-25,1015.2,2,3,-5,2,0,-9,-530,583,-580,581,-584,535,-535,1.2,-1,541,-541,545,-12,-534,550,-548,6,69,183,269,19,-548,66.2,534,-531,527,-1,-530,0,9,521,-530,535,-523,519,-528,-3,530,-528,532,-530,-4,.4,588,-29,-24,-5,6,-2,8,-10,0,-1,3,.4,-533,.4,563,29,-23,24,1,-54,.2,-541,0,532,-1,8,.2,-536,.2,1,0,-4,.2,-1,6.2,.2,11,.2,519,4,-3,-239,237,-236,87,157,-536,-1,6,545,-550,0,291,11.3,193,-572,4,542,-547,292,9.3,149,389.4,-2,-535,528,-236,12.3,167,-546,11,-1,526,325.2,-240,23.5,10,526,-6,-239,241,-240,32.4,5,176.2,-531,530,-238,245,-244,64.3,528,9,-538,547,-547,535,-243,33.6,-10,1,1181.2,0,-1,292,37.6,4,532,-6,15,-254,11.3,68.2,4,524,-524,532,-7,-529,10,-11,25.6,535,-530,613.2,0,-2,293,106.6,533,-534,537,-529,-4,0,288,139.6,542,-536,545,-551,36.4,-380,962.3,526,12,-549,11.4,61.2,2,-3,1.2,535,-6,0,-531,154.6,282.2,155.2,-529,252,273,71.4,1018.4,.2,292,243,-242,35.3,809.2,543,-543,11,94.2,144.5,486.3,144.2,529,-237,94.6,6,523,16,-15,179.6,530,-520,519,11,-7,-242,142.6,532,-537,537,-534,-4,293,23.5,5,531,49.2,56.6,.2,55.2,-15,3,-156,-44,-335,534,-534,110.2,5,-4,4,1,-5,1,-2,-1,1,-529,528,340.2,21.1,42.14,535,0,-534,1.2,8,524,-535,538,-3,2,0,-536,531,-521,-11,543,252.2,.4,7,-15,-518,524,9,.3,-539,530,-524,519,0,-529,28.2,584.2,552,-16,7,0,-542,538,-528,-11,551,-538,533,.4,-18,7,-524,525,-8,.3,8,-525,-7,0,-4,536,0,497.2,8,531,-542,535,7,-12,39.2,-1,222.2,548,-12,.4,-3,3,-525,531,-9,.3,9,-531,29.3,529,1.2,18,-19,19,-7,-542,.2,11,20,-19,0,519,-409,422,-422,202,221,-544,121,6.3,209,-532,6.4,12.1,12.6,204,-527,12.1,12.7,423,-423,12.1,12.4,6.3,36.9,12.11,259,1145.5,8,-9,357.2,1166.4,9,-9,1166.11,0,-1,543,-544,5,1602.4,-524,524,22.5,77,-77,.5,4,-4,538,-5,5,7,-7,4.2,1008.2,-330,-1,513,15,2,6,.2,-4,-1,447.2,.3,11,538,-18,684.2,576,-37,-247,490.5,8,-9,530,-519,-11,293,242,444.2,11.2,0,-1,265.2,-7,600,-595},{5,77,1.6,65,4,22,3,1,25,6,21,25,23,4,5,17,3.1,3,23,25,3,5,20,22,3,2.1,26,1,5,17,9,17,3,7,46,32,24.3,21,23,8,42,20.3,5,20,24,4,-26.2,25,27,7,20,26,23,54,25,45.3,5,56.2,1,2.1,5,20,23,70.4,5,17,26,4,26,36.3,25,24.3,17,8,20,1,16,2,3,16,63,35,1.2,20,10,22,85,5,15,2,12,14,4,-3.2,1,3,1.2,4,3,4,1,5,8,-2.2,9.2,5,2,4,-2.2,12,1.4,6,1.4,39,1,4,1,4,4.1,1,7,5,8,3,2,1,8,3,13,1,9,4,7,4,14,2,8,5,35,6,14,13,1,11,26,1,8,14,5,12,2,11,9,5,8,1.2,13,1,4,12,1.2,16,2,21,2.1,4.3,6,1.42,9,10,1,26,3.2,17,3,1,-10.2,1,16,3,1,13,110,2,87.2,39,34,3,2,10,6,1.3}},{{3},{2,1,-1,0,1,0,4.3,-1,.9,3.2,529,6,-5,6,-2,8,-11,-2,7.6,26,-13,1,-7,-5,0,2,12.5,4,6.1,6.5,-493,-38,.6,1,-1,.3,-1,2,-1,59.4,5.3,.5,3.2,.7,8.4,13.5,.2,27.3,3.2,.4,16.9,26.5,15.01,31.3,8.3,2,-1,3.2,-2,39.3,52.31,5.1,18.7,.9,536,-536,13.1,65.01,.8,78.51,109.31,.41,529,-528,149.12,.7,4,-3,93.11,54.4,17.3,55.01,97.31,84.5,.2,140.21,207.51,87.01,100.3,26.3,42.01,156.3,102.41,528,-527,36.2,3,-2,18.8,5.3,313.4,174.01,376.3,11.7,.31,536,-535,11.9,66.41,-523,-5,3,-3,.3,68.01,62.3,3.1,71.3,144.8,187.2,70.3,.3,74.01,.6,11.5,101.01,164.3,532,-531,18.4,568,-567,196.01,496.5,36.01,.51,253.41,0,-1,531,-531,82.11,214.3,22.3,548,-547,63.9,548,-548,115.41,53.7,293.31,119.3,208.12,93.6,531,-530,123.22,535,-534,477.41,13.3,.4,324.3,184.11,31.01,98.3,263.01,13.3,47.6,117.8,530,-529,54.9,539,-539,1,579,-580,192.11,145.01,125.01,165.51,-1,558,-558,670.61,.4,82.01,0,7,527,.4,2,.2,-527,.2,-6,-2,-1,21.2,.2,32.2,534,0,-6,2,-530,.2,1,6,523,8,-538,49.7,535,.2,24,-31,3,-528,525,653.2,.2,529,5,-4,0,57.4,1,63,-63,0,527,-528,1,530,.6,-524,524,-2,-524,529,-4,-529,.3,6,524,-512,19,-24,-14,528,-521,.4,-7,.3,19,-19,0,532,.2,-521,.2,528,-532,.8,-7,1,-1,534,-534,68.3,71.6,531,0,1,0,-3,-528,538,-8,0,-522,525,-534,133.3,3.2,17.2,29,-560,112.3,149.7,16.3,.2,29,-28,-526,521,2,-2,33,-561,49.6,530,4,.2,-533,26.6,81,-82,4.2,314.2,-529,.91,2,-2,26.3,.2,6,-3,-3,0,550,-550,.6,3,6.2,1.2,-2,0,585,-585,5,-5,0,541,-541,.2,586,-16,1,16,-582,6,.4,521,-1,8,24,9,-570,.4,-2,.4,1,563,-562,.2,-3,.2,10,.2,522,.2,-531,678.6,104.5,8.3,144.6,947.4,3.2,566.7,630.3,577.4,4,1,-4,585.6,.2,5,-5,501.4,666.5,0,801.6,764.4,0,535,-535,.6,42.4,439.3,1010.5,416.3,532,-532,14.3,521.7,133.2,449.4,687.6,6.2,161.2,513.4,13,423.2,82.3,41.3,73.4,7.3,.2,1,3,-1,-3,856.6,.2,3,0,-3,1,.3,21.2,529,-529,2.1,0,12.1,24.22,-524,-1,526,75.3,-530,0,4,1,530,339.3,-2,.5,538,-538,7,1,6,-8,-6,11,-10,4,438.2,92.3,20.2,4,1,531,-535,8.2,.6,552,-552,24.4,5,-10,45.3,4,-1,527,5,0,-5,-531,26.3,537,-541,0,-1,.5,537,-537,26.9,488.2,395.3,0,2,95.3,-5,.01,1,-1,3.1,.13,6.5,161.3,6.3,.61,783.4,7,-6,679.11,536,-537,651.01,0,4,.5,528,-528,1151.5,.4,542,-541,.7,3,.3,526,-519,521,-529,-3,2,-2,224.3,576,-566,-11,.5,1,.2,545},{1.8,12,1,11,1.65,15,1.81,32,3,1,22,3.1,3,1,5,17,4,25,6,4.2,7.3,3.2,3,23,8,4.2,5,20,22,3,24.4,20,27.3,9,17,3,1,29.3,25,32,8.3,5,21,23,3,5,17,25,28.3,5,20,24,4,26,20,6,34.3,26,7,4.2,25,23,54,5,20,60.3,5,21,25,1,2.1,69.4,74.4,88.4,70.3,26,46.3,25,28.3,17,89.3,1,16,1.2,2,1.3,14,12,2,2.1,21,1.2,4,1,7,3,1.5,12,1,8,1.9,2,1.6,11,8,1.2,21,1,23,20,2,19,13,1.2,6,1.5,15,2,10,1.4,4,8,4,3,1,2,44.2,1.6,4.2,8.3,3,7,12.3,3,2.1,-2.2,1,3.1,11,1.4,6,1.9,21,1.9,4,1.6,4,1,4.2,7,1,22.2,7,3,2,1,8.3,1.3,10,1,9,4,8.3,1,13,1.3,7,1,4,2,8,4,21,4,1.3,8,5,13,1,5,6,4.2,9,3,1,8,1,13,4,1.2,11,27.2,10.4,4,1,7,1.2,5,8,59.4,4.3,2.1,2,9,2,8,5.1,10.9,6,1.42,7.2,5,25.2,8,17,6.5,62.3,9,9.4,7,9.3,-2.2,25.2,109,1.4,5,18,3,17,1,34,2,1,2,10,6,81.2,77.2}},{{4},{14,-11,.6,1,.6,2,0,2,.2,2,-8,.71,38,-37,0,-2,1,6,-7,4,525,-527,2,-3,535,6,-11,1,-531,1,.2,-2,2,1,-2,1,-1,2,-2,9,.2,-6,.2,-3,2,-1,1,-2,0,12,-12,1.2,-2,4,-4,4,0,-3,0,11,0,-9,9,0,-7,-5,31.4,.2,1,.2,11,-5,-7,.2,2,0,7,40.3,-2,.5,2,.2,1,49,-41,64.2,-1,2.1,11,-11,0,11,.2,-12,1.3,4,-7,5,-1,-3,3,8,-8,-2,17.2,0,-8,8,.4,43.2,529,0,6,0,-7,2,-526,3,.3,525,.4,-530,.4,530,.4,-525,.2,-5,4,0,-6,6,-6,0,1,2,125.2,0,10,-5,9.3,0,2,-3,1,2,-2,0,3.1,6.1,-1,0,5,-1,1,-4,0,3,0,-3,-1,.4,536,-535,574,-575,15.11,1,556,-19,-9,-527,-2,17.21,543,-15,6,-533,-2,11,-9,-2,3,530,-534,530,10,2,-541,.3,-1,577,-61,17,18,-9,-541,4,528,-530,530,45,-578},{14,75,1.31,20,1.42,265,8,25,18,25,134,49,3,52,72,1,29,6,123,9,21,25,126,49,113,46,146,5,1.01,5,1,6,1,3,6,5,9,1.4,2,1,5,2,5,2,4,1.4,10,1.9,9,24,1.5,12,1.5,2,1.8,3,4,5,6,1.3,7,-5.2,2,3,4,8,5,1.9,4,6,2,5,4,10,1,4,1.5,60,7,1,8,7,2,15,1.5,26,1.41,26,1.2,31,61,1,19,2,22,3,8,13,4,1,10,15,2,27,11,13,10,19,26,2,35,8,2,13,3.1,6.5,30,86.2,7,2,1,10,-2.2,1.11,7.6,85.2,1,3,4.2,11.3,9,11.5,2,4,1.2,8,116,21,5,13,1.7,12,9,1.4,7,1.2,12,17}},{{5},{531,-524,0,2,.2,2,0,-4,6.5,-8,.5,3,8.4,-3,0,2,0,19.5,6.3,-6,-3,9,-8,8,-8,.2,8,0,520,-520,.3,-9,528,1,0,-529,529,0,-528,-1,19.3,.2,20,-21,522,-530,1,.2,529,-521,0,521,.3,-521,.3,-8,2,527,-530,528,2,0,-530,530,.4,-529,-1,0,3,1,.2,5,0,-5,3,-6,2,530,-527,524,-530,-1,.7,530,52.2,.2,4,531,-535,535,0,-535,.2,536,-536,5,0,525,38.2,.2,542,-542,33.3,533,-3,-530,19,.6,512,-512,.3,-10},{14,75,1.31,20,1.32,528,824,1.6,15,1,14,9,1.3,11,5,2,4,1.4,11,1.5,2,1,9,24,17,1.2,25,6,1,14,10,4,8,5,1.4,2,7,8,5,4,10,1,4,1.5,60,7,18,51,1.4,64,83,-25.2,26,2,38,42,71,2,21,2.1,4.3,30,1.4,30,1.7,30,1,2,1,56.2,29,6.3,5,4,2,8,155,64.2,12,75.2,9}},{{6},{3,-1,.6,1,.6,-1,.5,1,.5,-1,1,2.1,0,4.2,.3,6.2,527,-527,0,5.2,.5,1,25.2,536,-5,.4,-532,7.2,.7,7,1,-8,0,1,6,5.2,1,-1,0,11.3,6.3,2,515,15},{14,75,1.31,32,1.11,1353,2,18,1,14,28,2,4,2,1,13,2,5,9,68,6,1,14,10,4,8,18,13,4,10,5,1.4,68,69,1.4,64,199,113,2,21,2.1,4.3,30,1,33,1.4,33,1,2,1,4,1,32,6.3,11,182,21}},{{7},{3,-1,1,542,-543,.9,532,-531,8,-9,0,1,4.1,8,541},{1561,29,151,228,312,2,21,2.1,4.3,30,1,33,1.4,33,1,7,1,32,1,196}},{{8},{11,-5,5,-8,1,.7,6,506},{1561,29,151,228,312,2,21,2.1,4.3,64,275}},{{9},{2,550},{2416,275}},{{10},{518},{2691}},{{11},{552},{2691}},{{12},{520},{2691}},{{13},{530},{2691}},{{14},{522},{2691}},{{15},{537},{2691}},{{16},{523},{2691}},{{17},{536},{2691}},{{18},{524},{2691}},{{19},{544},{2691}},{{20},{525},{2691}},{{21},{599},{2691}},{{22},{526},{2691}},{{23},{571},{2691}},{{24},{527},{2691}},{{25},{570},{2691}},{{26},{528},{2691}},{{27},{600},{2691}},{{28},{529},{2691}}}, {297,1.42,62,1.7,7,1.7,2,1.49,-320,.2,91,.3,67,1,.4,1,.5,1,0,2,1,-69,.6,70,0,1,-70,.6,1,2.1,.6,69,.2,-336,337,15.3,-69,.8,1,.3,1,.2,68,2,30.3,.5,23.3,.2,1,0,6.3,.9,1,.11,1.2,.5,1,.4,1.2,.2,1.3,.51,58.3,-87,.01,88,.3,7.2,-88,.01,1,2.1,.01,87,.2,-363,363,2.1,19.4,3.2,39.3,.8,86,1.3,3,.4,2,.4,4,.4,39.3,8.3,2.1,8.4,12.5,.2,2.1,4.1,2.1,-133,107,2,4,2,1.5,3}, {79,.531,422,1.8,-430,.082,434,1,7,-10,1,0,-433}, {2,.513}, - {2,.541,1,.4,-1,0,2,-1,4.2,1,.3,-1,3.1,6.4,17.9,1,-1,17.51,34.31,1,-2,34.23,0,14.8,34.52,119.81,16.1,32.1,98.05,34.81,4.2,184.71,.8,14.7,2,0,32.2,31.3,232.01,17.7,100.33,65.6,.5,212.17,78.21,209.82,3.2,.2,226.43,195.5,4.2,313.66,428.611,611.94,679.4,217.221,.182,1,.7,-1,.5,1,-1,2.1,2.1,.2,1,0,4.3,3.1,-1,.12,591.3,28.3,.13,7.2,.08,49.3,434.4,.2,57.7,.3,16.7,8.4,16.8,230.6,24.01,8.1,8.2,456.3,33.21,236.3,491.4,-2,44.12,100.4,542.6,108.4,60.5,9.6,8.1,16.01,133.61,24.7,0,215.3,9.2,.3,102.3,0,-2,10.4,51.21,.552,8.3,3.1,6.1,12.1,24.1,91.7,.4,148.3,301.8,315.61,.81,300.4,.7,-1,.9,99.7,.5,463.8,.2} + {2,.541,1,.4,-1,0,2,-1,4.2,1,.3,-1,3.1,6.4,17.9,1,-1,17.51,34.31,1,-2,34.23,0,14.8,34.52,119.81,16.1,32.1,98.05,34.81,4.2,184.71,.8,14.7,2,0,32.2,31.3,232.01,17.7,100.33,65.6,.5,212.17,78.21,209.82,3.2,.2,226.43,195.5,4.2,313.66,428.611,611.94,679.4,217.221,.182,1,.7,-1,.5,1,-1,2.1,2.1,.2,1,0,4.3,3.1,-1,.12,591.3,28.3,.13,7.2,.08,49.3,434.4,.2,57.7,.3,16.7,8.4,16.8,230.6,24.01,8.1,8.2,456.3,33.21,236.3,491.4,-2,44.12,100.4,542.6,108.4,60.5,9.6,8.1,16.01,133.61,24.7,0,215.3,9.2,.3,102.3,0,-2,10.4,51.21,.552,8.3,3.1,6.1,12.1,24.1,91.7,.4,148.3,301.8,315.61,.81,300.4,.7,-1,.31,99.7,.5,463.8,.2} }, __refPoss = { nil, nil, - {10,1.531,1343,1.082,98,1.75,3,1.2,2.1,4.1,727,30,1.9}, + {10,1.531,1343,1.082,98,1.75,3,1.2,2.1,4.1,727,34,1.9}, {10,1.531,38,78,26,262,363,53,204,73,26,220,1.082,229,12,213,291,2,1,154}, - {153,3,1,22,3.1,6.1,12.1,3,2.1,4.1,20.21,23,35.41,23,35.01,26.21,12.3,15.11,70.81,105.62,364,2,1,5,1.2,3,1,2,1,2,1.5,3,89,1,3,1.2,7,3,1.3,7,1,4.3,3.1,3,1,10.5,4.1,1,4,15.41,8.5,44.3,3.2,1,4,4.3,8.4,4.1,60.8,15.6,87.2,38.6,4.3,240,1.8,2,1.3,103,3,1.4,164.3,62,1,3,1.5,7,52.2}, + {153,3,1,22,3.1,6.1,12.1,3,2.1,4.1,20.21,23,35.41,23,35.01,26.21,12.3,15.11,70.81,105.62,364,2,1,5,1.2,3,1,2,1,2,1.5,3,89,1,3,1.2,7,3,1.3,7,1,4.3,3.1,3,1,10.5,4.1,1,4,15.41,8.5,44.3,3.2,1,4,4.3,8.4,4.1,60.8,15.6,87.2,38.6,4.3,240,1.8,2,1.3,103,3,1.4,164.3,66,1,3,1.5,7,52.2}, nil }, } diff --git a/luafight/Modules/Battle/Data/ConfigData.lua b/luafight/Modules/Battle/Data/ConfigData.lua index 90cd4fe42..040bfe37a 100644 --- a/luafight/Modules/Battle/Data/ConfigData.lua +++ b/luafight/Modules/Battle/Data/ConfigData.lua @@ -190,6 +190,8 @@ ConfigName = { ArroGantFly = "ArroGantFly", ComposeActivity = "ComposeActivity", ComposeBook = "ComposeBook", + HardStage ="HardStage", + HardStageCondition="HardStageCondition", } require "Modules/Battle/Framework/GameDataBase" diff --git a/luafight/Modules/Battle/Logic/Base/Passivity.lua b/luafight/Modules/Battle/Logic/Base/Passivity.lua index 6a06be3d9..c652b411b 100644 --- a/luafight/Modules/Battle/Logic/Base/Passivity.lua +++ b/luafight/Modules/Battle/Logic/Base/Passivity.lua @@ -6761,6 +6761,7 @@ local passivityList = { role:AddBuff(Buff.Create(role, BuffName.PropertyChange,round, BattlePropList[p1],v1, ct)) end end,nil,nil,role) + end, -- 敌方单位被击杀自身释放[a]技能,释放的技能类型为[b]。 -- a[int] b[int] @@ -6781,7 +6782,7 @@ local passivityList = { end, --英雄[a],附加的[b]种类[c]类型buff,持续时间改变[d][e]回合 --a[int],b[int buff类型],c[int type类型],d[int 改变类型],e[int] - [306] = function(role, args) + [306] = function(role, args,id,judge) local id = args[1] local tp1 = args[2] local tp2 = args[3] @@ -6835,7 +6836,7 @@ local passivityList = { end, -- 根据生命百分比添加被动 血量百分比[a],被动id[b],...(后面没有的不配) -- a[float],b[int],c[float],d[int],e[float],f[int],g[float],h[int] - [313] = function(role, args) + [313] = function(role, args,id,judge) local passTable={} for i = 1, #args do if i%2==0 then @@ -6860,5 +6861,15 @@ local passivityList = { end role.Event:AddEvent(BattleEventName.RoleBeDamaged, onRoleBeDamaged,nil,nil,role) end, + -- 普通攻击不会回复怒气 + -- a[float] + [314] = function(role, args,id,judge) + role.isNormalAttackAddRage=false + end, + -- 禁止治疗 + -- a[float] + [315] = function(role, args,id,judge) + role.ctrl_noheal=true + end, } return passivityList diff --git a/luafight/Modules/Battle/Logic/BattleLogManager.lua b/luafight/Modules/Battle/Logic/BattleLogManager.lua index ab1e340b6..9a091549a 100644 --- a/luafight/Modules/Battle/Logic/BattleLogManager.lua +++ b/luafight/Modules/Battle/Logic/BattleLogManager.lua @@ -3,11 +3,11 @@ local this = BattleLogManager local isEditor = AppConst and AppConst.Platform == "EDITOR" local isMobile = AppConst and (AppConst.Platform == "ANDROID" or AppConst.Platform == "IOS") -local isDebug = false +local isDebug = true function LogBattle(str) if isDebug then if isEditor then - LogGreen(str) + --LogGreen(str) else print(str) end @@ -114,6 +114,7 @@ function this.Log(...) if #this.logList > 100 then this.WriteLogToFile() end + LogBattle(log) end diff --git a/luafight/Modules/Battle/Logic/BattleLogic.lua b/luafight/Modules/Battle/Logic/BattleLogic.lua index 3502a98a1..d5a2e72be 100644 --- a/luafight/Modules/Battle/Logic/BattleLogic.lua +++ b/luafight/Modules/Battle/Logic/BattleLogic.lua @@ -1,3 +1,5 @@ +require("Modules.Battle.Logic.HardStageCondition") +require("Modules.Battle.Logic.HardStageEventManager") BattleLogic = {} local floor = math.floor local min = math.min @@ -22,6 +24,9 @@ local userData local allHeroDamage=0 --所有怪的伤害和治疗 local allEnemyDamage=0 +--关卡星级记录 +local levelStarRecord +local hardStageId =0 --是否开启战斗日志 BattleLogic.IsOpenBattleRecord = false --逻辑帧频 @@ -44,23 +49,19 @@ function BattleLogic.Init(data, _userData, maxRound) if BattleLogic.IsOpenBattleRecord then record = {} end - + levelStarRecord={} fightData = data userData = _userData - + hardStageId=data.nodeId BattleLogic.CurOrder = 0 BattleLogic.TotalOrder = #data.enemyData - BattleLogic.Clear() - curFrame = 0 - CurRound = 0 MaxRound = maxRound or 20 allHeroDamage= 0 allEnemyDamage= 0 _IsDebug = false - BattleLogic.Event:ClearEvent() BattleLogic.BuffMgr:Init() BattleLogic.IsEnd = false @@ -73,7 +74,7 @@ function BattleLogic.Init(data, _userData, maxRound) SkillManager.Init() OutDataManager.Init(fightData) PassiveManager.Init() - + HardStageEventManager.Init() -- 监听英雄受到治疗 BattleLogic.Event:AddEvent(BattleEventName.RoleBeTreated,function (castRole, realTreat, treat) --巅峰争霸赛和切磋超时改为只判断总伤害,不再判断总治疗 @@ -93,6 +94,7 @@ function BattleLogic.Init(data, _userData, maxRound) allEnemyDamage=allEnemyDamage+damage end end) + end @@ -101,6 +103,15 @@ function BattleLogic.GetAllDamage() return allHeroDamage, allEnemyDamage end +--获取我方灵兽数据 +function BattleLogic.GetPlayerMonsterData() + return fightData.playerData.monsterList +end + +--获取精英副本星级记录 +function BattleLogic.GetHardLevelStarRecord() + return levelStarRecord +end -- 检测先手阵营 function BattleLogic.CheckFirstCamp() @@ -439,13 +450,28 @@ function BattleLogic.BattleEnd(result) BattleLogic.IsEnd = true BattleLogic.Result = result BattleLogic.Event:DispatchEvent(BattleEventName.BattleEnd, result) - + if hardStageId and hardStageId~=0 then + --获取精英副本 星级信息 + local hardStageConfig=ConfigManager.GetConfigData(ConfigName.HardStage,hardStageId) + if hardStageConfig then + if hardStageConfig.ConditionValue then + for i = 1, #hardStageConfig.ConditionValue do + local harConfig = ConfigManager.GetConfigData(ConfigName.HardStageCondition,hardStageConfig.ConditionValue[i]) + local v1=HardStageCondition.CheckCondition(harConfig.ConditionType,harConfig.ConditionValue) + table.insert(levelStarRecord,hardStageConfig.ConditionValue[i]) + table.insert(levelStarRecord,v1) + end + end + end + end + -- 打印结果 BattleLogic.LogResult(result) -- 战斗日志写入 if not BattleLogic.GetIsDebug() then BattleLogManager.WriteLogToFile() end + HardStageEventManager.ClearEvent() end -- 打印战斗结果 diff --git a/luafight/Modules/Battle/Logic/HardStageCondition.lua b/luafight/Modules/Battle/Logic/HardStageCondition.lua new file mode 100644 index 000000000..0d9d606db --- /dev/null +++ b/luafight/Modules/Battle/Logic/HardStageCondition.lua @@ -0,0 +1,131 @@ +HardStageCondition = {} +local this = HardStageCondition + +local _ConditionConfig = { + --通过关卡 + [1]=function(condition) + if BattleLogic.Result==1 then + return 1 + end + return 0 + end, + --[a]回合内通过关卡 + [2]=function(condition) + local v1 = condition[1] + local round,maxRound=BattleLogic.GetCurRound() + if round<=v1 then + return 1 + end + return 0 + end, + --上阵[a]个神将通过关卡 + [3]=function(condition) + local v1 = condition[1] + local list = RoleManager.Query(function(v) return v.camp == 0 end) + if BattleUtil.LengthOfTable(list)<=v1 then + return 1 + end + return 0 + end, + --[a]回合内造成[b]伤害 + [4]=function(condition) + local v1 = condition[1] + local v2 = condition[2] + local record=HardStageEventManager.GetRoundDamageRecord() + if record then + for key, value in pairs(record) do + if key<=v1 and value[2]>=v2 then + return 1 + end + end + end + return 0 + end, + --使用指定[a]系神将[b]名 + [5]=function(condition) + local v1 = condition[1] + local v2 = condition[2] + local list = RoleManager.Query(function(v) return v.camp == 0 and v.element==v1 end) + if BattleUtil.LengthOfTable(list)>=v2 then + return 1 + end + return 0 + end, + --存活[a]名 + [6]=function(condition) + local v1 = condition[1] + local list = RoleManager.Query(function(v) return v.camp == 0 and not v:IsDead() end) + if BattleUtil.LengthOfTable(list)>=v1 then + return 1 + end + return 0 + end, + --不上阵[a]职能神将通过关卡 + [7]=function(condition) + local v1 = condition[1] + local list = RoleManager.Query(function(v) return v.camp == 0 and v.professionId==v1 end) + if BattleUtil.LengthOfTable(list)==0 then + return 1 + end + return 0 + end, + --不上阵[a]阵营神将通过关卡 + [8]=function(condition) + local v1 = condition[1] + local list = RoleManager.Query(function(v) return v.camp == 0 and v.element==v1 end) + if BattleUtil.LengthOfTable(list)==0 then + return 1 + end + return 0 + end, + --佩戴xxxid被动通过关卡 + [9]=function(condition) + local v1 = condition[1] + local list = RoleManager.Query(function(v) return v.camp == 0 end) + if not list or #list==0 then + return 0 + end + for i = 1, #list do + local isHave=list[i]:CheckHavePassive(v1) + if isHave then + return 1 + end + end + return 0 + end, + --不使用灵兽通过关卡 + [10]=function(condition) + local v1 = condition[1] + local data=BattleLogic.GetPlayerMonsterData() + if data and BattleUtil.LengthOfTable(data)>v1 then + return 0 + end + return 1 + end, + --全部上阵[a]职业神将通过关卡 + [11]=function(condition) + local v1 = condition[1] + local list = RoleManager.Query(function(v) return v.camp == 0 and v.professionId~=v1 end) + if BattleUtil.LengthOfTable(list)==0 then + return 1 + end + return 0 + end, + +} + + + +-- 条件检测 +function HardStageCondition.CheckCondition(type,condition) + --LogError("*************".. type.." "..condition) + if not condition then + return true + end + -- local v1 = condition[1] + -- local v2 = condition[2] + -- local v3 = condition[3] + return _ConditionConfig[type](condition) +end + +return HardStageCondition \ No newline at end of file diff --git a/luafight/Modules/Battle/Logic/HardStageEventManager.lua b/luafight/Modules/Battle/Logic/HardStageEventManager.lua new file mode 100644 index 000000000..67d334e69 --- /dev/null +++ b/luafight/Modules/Battle/Logic/HardStageEventManager.lua @@ -0,0 +1,43 @@ +HardStageEventManager = {} +local this = HardStageEventManager +local CurRound +--记录的回合数 +local recordRound=1 +local roundDamage=0 +--记录的回合伤害 +local recordRoundDamage +function this.Init() + recordRound=1 + roundDamage=0 + recordRoundDamage={} + BattleLogic.Event:AddEvent(BattleEventName.RecordDamage,this.OnRecordDamage) +end + +function this.ClearEvent() + BattleLogic.Event:RemoveEvent(BattleEventName.RecordDamage,this.OnRecordDamage) +end +--记录伤害 +function this.OnRecordDamage(atkRole,defRole,damage) + if not atkRole or atkRole.camp==1 then + return + end + local curRound,maxRound=BattleLogic.GetCurRound() + CurRound=curRound + --如果进入下一回合,记录上一回合的伤害 + if CurRound==recordRound+1 then + table.insert(recordRoundDamage,{recordRound,roundDamage}) + recordRound=CurRound + end + roundDamage=roundDamage+damage +end + +--获取回合伤害记录 +function this.GetRoundDamageRecord() + --如果一回合就结束战斗了,就直接把记录的回合数伤害加进去 + if CurRound==1 then + table.insert(recordRoundDamage,{recordRound,roundDamage}) + end + return recordRoundDamage +end + +return HardStageEventManager \ No newline at end of file diff --git a/luafight/Modules/Battle/Readme.txt b/luafight/Modules/Battle/Readme.txt index eb4ac532e..80799c256 100644 --- a/luafight/Modules/Battle/Readme.txt +++ b/luafight/Modules/Battle/Readme.txt @@ -1,3 +1,16 @@ +v1.0.31 + 1. 添加精英副本相关战斗逻辑 +v1.0.30 + 1. 同步客户端被动表lua文件 +v1.0.29 + 1、新增客户端数据文件,客户端数据解析文件 + 1、被动新增 313,用于动态从表数据里面抓取被动数据 +v1.0.28 + 1、BattleMain添加测试接口 +v1.0.27 + 1、清除轮转方法,防止收到上一局战斗的影响 +v1.0.26 + 1、合并海外战斗内容 v1.0.25 1、选择单个对位目标修改 v1.0.24 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/HardStageInfoRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/HardStageInfoRequestHandler.java index 42b0f0c71..870dca856 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/HardStageInfoRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/HardStageInfoRequestHandler.java @@ -23,6 +23,6 @@ public class HardStageInfoRequestHandler extends BaseHandler dropList = new ArrayList<>(); SHardStage nodeConfig = SHardStage.getConfigMap().get(nodeId); Map chapterMap = user.getHardStageManager().getChapterMap(user); - if(!chapterMap.containsKey(nodeConfig.getChapter()) || chapterMap.get(nodeConfig.getChapter()).getNode(nodeId) == null){ + if (!chapterMap.containsKey(nodeConfig.getChapter()) || chapterMap.get(nodeConfig.getChapter()).getNode(nodeId) == null) { throw new ErrorCodeException(ErrorCode.newDefineCode("节点信息错误 节点不存在或未开启")); } List teamPosHeroInfos = user.getTeamPosManager().getTeamPosForHero().get(teamId); + PlayerInfoProto.HardStageFightResponse.Builder fightStartResponse = PlayerInfoProto.HardStageFightResponse.newBuilder(); if (teamPosHeroInfos == null || teamPosHeroInfos.size() == 0) { throw new ErrorCodeException(ErrorCode.newDefineCode("阵容有误!!")); } - if(nodeConfig.getStageType() == 2){//直接发奖励 - HardStageLogic.passNode(iSession,nodeConfig,0,dropList); - return; - } - int seed = (int)(System.currentTimeMillis()/1000); - CommonProto.FightTeamInfo fightTeamInfo = HardStageLogic.getFightTeamInfo(user,teamId,nodeConfig); - Map> monsterfightTeamInfos = MonsterUtil.getHardStageMonsterByGroup(nodeConfig); - List monsterPokemonByGroup = MonsterUtil.getMonsterPokemonByGroup(nodeConfig.getMonsterGroup()); - List monsterGroupList = BehaviorUtil.getFightTeamInfos(monsterfightTeamInfos,monsterPokemonByGroup, Global.MONSTER_1); + CommonProto.FightTeamInfo fightTeamInfo = HardStageLogic.getFightTeamInfo(user, teamId, nodeConfig); + //直接发奖励 + if (nodeConfig.getStageType() == 2) { + Map chapt = user.getHardStageManager().getChapterMap(user); + HardStageNode node = chapt.get(nodeConfig.getChapter()).getNode(nodeConfig.getId()); + node.setHasPass(true); + dropList.addAll(HardStageLogic.getFirstRewards(user, nodeConfig)); + } else if (nodeConfig.getStageType() == 1 || nodeConfig.getStageType() == 3) { + //战斗后发奖励 + int seed = (int) (System.currentTimeMillis() / 1000); + Map> monsterfightTeamInfos = MonsterUtil.getHardStageMonsterByGroup(nodeConfig); + List monsterPokemonByGroup = MonsterUtil.getMonsterPokemonByGroup(nodeConfig.getMonsterGroup()); + List monsterGroupList = BehaviorUtil.getFightTeamInfos(monsterfightTeamInfos, monsterPokemonByGroup, Global.MONSTER_1); + LuaValue getFightData = FightDataUtil.getFinalFightData(fightTeamInfo, monsterGroupList); + getFightData.set("nodeId", nodeId); + LuaValue getOptionData = FightDataUtil.getOptionData(user.getId() + ""); + long[][] fight = CheckFight.getInstance().checkHardStageFight(seed, 20, getFightData, getOptionData, FightType.HardStage); + int[] resultNum = new int[3]; + resultNum[0] = (int) fight[1][1]; + resultNum[1] = (int) fight[1][3]; + resultNum[2] = (int) fight[1][5]; + System.err.print("0:" + resultNum[0] + "1:" + resultNum[1] + "2:" + resultNum[2]); + int resultCode = (int) fight[0][0]; + if (resultCode == -1) { + throw new ErrorCodeException(ErrorCode.FIGHT_EXCEPTION); + } + if (resultCode == 1) {//通过 + HardStageLogic.passNode(iSession, nodeConfig, resultNum, dropList); + } + //战斗回放 + String fightInfo = nodeId + "#" + seed + "#" + teamId; + String key = RedisKey.getKey(RedisKey.HARD_STAGE_BATTLE, String.valueOf(iSession.getUid()), false); + RedisUtil.getInstence().set(key, fightInfo, -1); - LuaValue getFightData = FightDataUtil.getFinalFightData(fightTeamInfo, monsterGroupList); - getFightData.set("nodeId",nodeId); - LuaValue getOptionData = FightDataUtil.getOptionData(user.getId()+""); - long[][] fightResult = CheckFight.getInstance().checkHardStageFight(seed, 20, getFightData, getOptionData, FightType.HardStage); - int resultCode = (int) fightResult[0][0]; - if (resultCode == -1) { - throw new ErrorCodeException(ErrorCode.FIGHT_EXCEPTION); - } - int resultNum = (int)fightResult[1][1]+(int)fightResult[1][3]+(int)fightResult[1][5]; - if(resultCode == 1){//通过 - HardStageLogic.passNode(iSession,nodeConfig,resultNum,dropList); - }else{ - HardStageLogic.passNode(iSession,nodeConfig,0,dropList); + String fightId = FightUtil.getFightId(user.getId(), FightType.HardStage.getType()); + CommonProto.FightData fightData = CommonProto.FightData.newBuilder() + .setFightType(FightType.HardStage.getType()) + .setHeroFightInfos(fightTeamInfo) + .addAllMonsterList(monsterGroupList) + .setFightSeed(seed) + .setFightMaxTime(20) + .setFightId(fightId) + .build(); + fightStartResponse.setFightData(fightData); + FightRecordLogic.getInstance().addRecordMap(user, fightData); } - - String fightInfo = nodeId + "#" +seed+ "#" + teamId; - String key = RedisKey.getKey(RedisKey.HARD_STAGE_BATTLE, String.valueOf(iSession.getUid()), false); - RedisUtil.getInstence().set(key, fightInfo, -1); - - PlayerInfoProto.HardStageFightResponse.Builder fightStartResponse = PlayerInfoProto.HardStageFightResponse.newBuilder(); - String fightId = FightUtil.getFightId(user.getId(),FightType.HardStage.getType()); - CommonProto.FightData fightData = CommonProto.FightData.newBuilder() - .setFightType(FightType.HardStage.getType()) - .setHeroFightInfos(fightTeamInfo) - .addAllMonsterList(monsterGroupList) - .setFightSeed(seed) - .setFightMaxTime(20) - .setFightId(fightId) - .build(); - fightStartResponse.setFightData(fightData); - for(CommonProto.Drop.Builder drop : dropList){ + for (CommonProto.Drop.Builder drop : dropList) { fightStartResponse.addDrop(drop); } - FightRecordLogic.getInstance().addRecordMap(user,fightData); - - MessageUtil.sendMessage(iSession, 1,MessageTypeProto.MessageType.HARD_STAGE_FIGHT_START_RESPONSE.getNumber(), fightStartResponse.build(), true); + MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.HARD_STAGE_FIGHT_START_RESPONSE.getNumber(), fightStartResponse.build(), true); + //更新消息 + CommonProto.HardStageInfo.Builder info = HardStageLogic.getInfo(user); + PlayerInfoProto.HardStageResponse.Builder response = PlayerInfoProto.HardStageResponse.newBuilder(); + response.setInfo(info); + MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.HARD_STAGE_INFO_RESPONSE.getNumber(), response.build(), true); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/HardStageManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/HardStageManager.java index 94c9f3d97..5f0f090bf 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/HardStageManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/HardStageManager.java @@ -15,69 +15,80 @@ public class HardStageManager extends MongoBase { private int curChapter; private int curNode; - private Map chapterMap ;//山河玩家信息 + private Map chapterMap;//山河玩家信息 - public HardStageManager(){ + public HardStageManager() { } - public Map getChapterMap(User user) throws Exception{ - if(null == chapterMap ||chapterMap.size()<1){ + + public Map getChapterMap(User user) throws Exception { + if (null == chapterMap || chapterMap.size() < 1) { Map map = initChapterMap(user); chapterMap = map; } return chapterMap; } - private Map initChapterMap(User user) throws Exception{ + private Map initChapterMap(User user) throws Exception { Map map = new HashMap<>(); SHardStage nodeOne = SHardStage.getConfigMap().get(1);//第一个节点 - if(user.getPlayerInfoManager().getLevel() reward = SHardStageReward.getChapterConfigMap().get(chapterId); - for(SHardStageReward config : reward){ - chapter.getRewardMap().put(config.getStarReward(),Boolean.FALSE); + for (SHardStageReward config : reward) { + chapter.getRewardMap().put(config.getStarReward(), Boolean.FALSE); chapter.updateRewardMap(); } + setCurChapter(chapterId); return chapter; } /** * 满足条件开启新节点 + * * @param config */ - public void openNewNode(User user,SHardStage config){ - if(user.getPlayerInfoManager().getLevel() initChapter(config.getChapter())); + HardStageNode node = initNode(config, chapter.getChapterId()); + chapter.addNodeList(node); + /*if(chapterMap.containsKey(config.getChapter())){ chapter = chapterMap.get(config.getChapter()); HardStageNode node = initNode(config); chapter.addNodeList(node); @@ -91,8 +102,8 @@ public class HardStageManager extends MongoBase { setCurNode(node.getId()); chapterMap.put(config.getChapter(),chapter); setCurChapter(chapter.getChapterId()); - } - updateString("chapterMap." + chapter.getChapterId(), chapterMap); + }*/ + updateString("chapterMap." + chapter.getChapterId(), chapterMap.get(chapter.getChapterId())); } public int getCurChapter() { @@ -101,7 +112,7 @@ public class HardStageManager extends MongoBase { public void setCurChapter(int curChapter) { this.curChapter = curChapter; - updateString("curChapter" ,curChapter); + updateString("curChapter", curChapter); } public int getCurNode() { @@ -110,6 +121,6 @@ public class HardStageManager extends MongoBase { public void setCurNode(int curNode) { this.curNode = curNode; - updateString("curNode" ,curNode); + updateString("curNode", curNode); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageChapter.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageChapter.java index bc41654c2..8585b6171 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageChapter.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageChapter.java @@ -15,7 +15,7 @@ public class HardStageChapter extends MongoBase { private int stars; - private Map rewardMap = new HashMap<>(); + private Map rewardMap = new HashMap<>(); public int getChapterId() { return chapterId; @@ -31,8 +31,8 @@ public class HardStageChapter extends MongoBase { public void addNodeList(HardStageNode node) { this.nodeList.add(node); - node.init(this.getRootId(), getMongoKey() + ".nodeList." + node.getId()); - updateString("nodeList" ,nodeList); + //node.init(this.getRootId(), getMongoKey() + ".nodeList." + node.getId()); + updateString("nodeList", nodeList); } public int getStars() { @@ -41,7 +41,7 @@ public class HardStageChapter extends MongoBase { public void addStars(int stars) { this.stars += stars; - updateString("stars" , this.stars); + updateString("stars", this.stars); } public Map getRewardMap() { @@ -49,12 +49,12 @@ public class HardStageChapter extends MongoBase { } public void updateRewardMap() { - updateString("rewardMap" , this.rewardMap); + updateString("rewardMap", this.rewardMap); } - public HardStageNode getNode(int id){ - for(HardStageNode node : nodeList){ - if(node.getId() == id){ + public HardStageNode getNode(int id) { + for (HardStageNode node : nodeList) { + if (node.getId() == id) { return node; } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageLogic.java index 4dadf7d85..6f61f2d23 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageLogic.java @@ -33,24 +33,25 @@ public class HardStageLogic { /** * 获取山河社稷图信息 */ - public static CommonProto.HardStageInfo.Builder getInfo(User user) throws Exception{ + public static CommonProto.HardStageInfo.Builder getInfo(User user) throws Exception { Map map = user.getHardStageManager().getChapterMap(user); CommonProto.HardStageInfo.Builder builder = CommonProto.HardStageInfo.newBuilder(); - for(Map.Entry entry : map.entrySet()){ + for (Map.Entry entry : map.entrySet()) { CommonProto.HardStageChapter.Builder chapterBuilder = CommonProto.HardStageChapter.newBuilder(); - for(HardStageNode node : entry.getValue().getNodeList()){ + for (HardStageNode node : entry.getValue().getNodeList()) { CommonProto.HardStageNode.Builder nodeBuilder = CommonProto.HardStageNode.newBuilder(); nodeBuilder.setNodeId(node.getId()); nodeBuilder.setType(node.getType()); nodeBuilder.setState(node.getState()); + nodeBuilder.setIsFirst(node.isHasPass()); chapterBuilder.addNode(nodeBuilder); } chapterBuilder.setChapterId(entry.getKey()); chapterBuilder.setStars(entry.getValue().getStars()); - for(Map.Entry entry1 : entry.getValue().getRewardMap().entrySet()){ + for (Map.Entry entry1 : entry.getValue().getRewardMap().entrySet()) { CommonProto.HardStageChapterReward.Builder rewardBuilder = CommonProto.HardStageChapterReward.newBuilder(); rewardBuilder.setId(entry1.getKey()); - rewardBuilder.setState(entry1.getValue()?1:0); + rewardBuilder.setState(entry1.getValue() ? 1 : 0); } builder.addChapter(chapterBuilder); } @@ -60,57 +61,57 @@ public class HardStageLogic { /** * 添加战斗规则 */ - public static void fight(ISession session, int teamId, int nodeId){ + public static void fight(ISession session, int teamId, int nodeId) { } /** * 领取章节奖励 */ - public static void getChapterReward(User user,SHardStageReward rewardStage,List list) throws Exception{ + public static void getChapterReward(User user, SHardStageReward rewardStage, List list) throws Exception { HardStageChapter chapter = user.getHardStageManager().getChapterMap(user).get(rewardStage.getChapter()); - if(chapter.getStars() < rewardStage.getStar()){ + if (chapter.getStars() < rewardStage.getStar()) { LOGGER.error("章节星星数量不足"); return; } - if(!chapter.getRewardMap().get(rewardStage.getStarReward())){ - chapter.getRewardMap().put(rewardStage.getStarReward(),true); + if (!chapter.getRewardMap().get(rewardStage.getStarReward())) { + chapter.getRewardMap().put(rewardStage.getStarReward(), true); chapter.updateRewardMap(); - list.add(getReward(user,rewardStage.getStarReward())); + list.add(getReward(user, rewardStage.getStarReward())); } } /** * 回放 */ - public static void getHSReport(){ + public static void getHSReport() { } /** * 判断奖励 */ - public static int passReward(User user,HardStageNode node,int num,List dropList) throws Exception{ + public static int passReward(User user, HardStageNode node, int[] num, List dropList) throws Exception { int addStar = 0; SHardStage config = SHardStage.getConfigMap().get(node.getId()); - if(num>>2 == 1){//第一星 + if (num[0] == 1) {//第一星 int rewardId = config.getReward1()[0]; - if(addDropAndStar(node,dropList,rewardId,user)){ - node.setState(node.getState()+4); - addStar++; + if (addDropAndStar(node, dropList, rewardId, user)) { + node.setState(node.getState() + 4); + addStar += 4; } } - if((num&2) == 2){//第二星 + if (num[1] == 1) {//第二星 int rewardId = config.getReward1()[1]; - if(addDropAndStar(node,dropList,rewardId,user)){ - node.setState(node.getState()+2); - addStar++; + if (addDropAndStar(node, dropList, rewardId, user)) { + node.setState(node.getState() + 2); + addStar += 2; } } - if(num<<2 == 1){//第三星 + if (num[2] == 1) {//第三星 int rewardId = config.getReward1()[2]; - if(addDropAndStar(node,dropList,rewardId,user)){ - node.setState(node.getState()+1); + if (addDropAndStar(node, dropList, rewardId, user)) { + node.setState(node.getState() + 1); addStar++; } } @@ -121,7 +122,7 @@ public class HardStageLogic { /** * 获取己方teamfight */ - public static CommonProto.FightTeamInfo getFightTeamInfo(User user, int teamId,SHardStage nodeConfig) { + public static CommonProto.FightTeamInfo getFightTeamInfo(User user, int teamId, SHardStage nodeConfig) { user.getTeamPosManager().setCurTeamPosId(teamId); List heroFightInfos = new ArrayList<>(); List teamPosHeroInfos = user.getTeamPosManager().getTeamPosForHero().get(teamId); @@ -135,21 +136,21 @@ public class HardStageLogic { Map heroAttributeMap = HeroLogic.getInstance().calHeroNotBufferAttribute(user, hero, false, teamId); StringBuilder skillSb = new StringBuilder(); StringBuilder propertySb = new StringBuilder(); - HeroLogic.getInstance().getHeroSkills(user,hero,skillSb); + HeroLogic.getInstance().getHeroSkills(user, hero, skillSb); - if(nodeConfig.getHardStageBuff() != 0){ + if (nodeConfig.getHardStageBuff() != 0) { SHardStageBuff buff = SHardStageBuff.getConfigMap().get(nodeConfig.getHardStageBuff()); - if(buff.getType()==2 || buff.getType()==3){ + if (buff.getType() == 2 || buff.getType() == 3) { skillSb.append(buff.getPassiveSkillLogic()).append("#"); } } - String property = HeroLogic.getInstance().getHeroPropertyBuilder(propertySb, hero.getTemplateId(),hero.getLevel(user.getHeroManager()), heroAttributeMap).toString(); + String property = HeroLogic.getInstance().getHeroPropertyBuilder(propertySb, hero.getTemplateId(), hero.getLevel(user.getHeroManager()), heroAttributeMap).toString(); CommonProto.FightUnitInfo heroFightInfo = CommonProto.FightUnitInfo .newBuilder() .setUnitId(Integer.toString(hero.getTemplateId())) - .setUnitSkillIds(skillSb.substring(0,skillSb.length()-1)) - .setProperty(property.substring(0, property.length()-1)) + .setUnitSkillIds(skillSb.substring(0, skillSb.length() - 1)) + .setProperty(property.substring(0, property.length() - 1)) .setPosition(teamPosHeroInfo.getPosition()) .setStar(hero.getStar()) .setSkinId(hero.getSkin()) @@ -165,46 +166,55 @@ public class HardStageLogic { .addAllFightUnitList(heroFightInfos) .addAllPokemonUnitList(HeroLogic.getInstance().getPokemonSkills(user)) .setTeamPassiveList(pokenmonPassiveSkills) - .setSpecialPassive(SpecialForTeamBuildEnum.toParm(teamId,user)) + .setSpecialPassive(SpecialForTeamBuildEnum.toParm(teamId, user)) .build(); } /** * 通过节点 */ - public static void passNode(ISession iSession, SHardStage nodeConfig, int resultNum,List dropList) throws Exception{ + public static void passNode(ISession iSession, SHardStage nodeConfig, int[] resultNum, List dropList) throws Exception { User user = UserManager.getUser(iSession.getUid()); + if(user == null){ + return; + } Map chapterMap = user.getHardStageManager().getChapterMap(user); HardStageNode node = chapterMap.get(nodeConfig.getChapter()).getNode(nodeConfig.getId()); - if(node.getType() == 1){//大节点 - int star = passReward(user,node,resultNum,dropList); + if (node.getType() == 1) {//大节点 + int star = passReward(user, node, resultNum, dropList);//星级通关奖励 chapterMap.get(nodeConfig.getChapter()).addStars(star); - if(!node.isHasPass()){ + if (!node.isHasPass()) { node.setHasPass(true); - dropList.addAll(getFirstRewards(user,nodeConfig)); + dropList.addAll(getFirstRewards(user, nodeConfig));//关卡通过奖励 + //SHardStage nextNodeConfig = SHardStage.getConfigMap().get(nodeConfig.getNextLevel()); + SHardStage.getPreList(nodeConfig.getId()).stream().forEach(n -> { + if (n != null) { + user.getHardStageManager().openNewNode(user, n); + } + }); } - }else{ - if(node.isHasPass()){ + } else { + if (node.isHasPass()) { return; } - node.setHasPass(true); - dropList.addAll(getFirstRewards(user,nodeConfig)); + //node.setHasPass(true); + //dropList.addAll(getFirstRewards(user,nodeConfig)); } - List openList = SHardStage.getPreList(nodeConfig.getId()); + /* List openList = SHardStage.getPreList(nodeConfig.getId()); for(SHardStage stage : openList){ user.getHardStageManager().openNewNode(user,stage); - } + }*/ sendHardStageIndication(user); } /** * 首通奖励 */ - public static List getFirstRewards(User user,SHardStage nodeConfig) throws Exception{ + public static List getFirstRewards(User user, SHardStage nodeConfig) throws Exception { List dropList = new ArrayList<>(); - for(int rewardId : nodeConfig.getPassReward()){ - dropList.add(getReward(user,rewardId)); + for (int rewardId : nodeConfig.getPassReward()) { + dropList.add(getReward(user, rewardId)); } return dropList; } @@ -212,18 +222,18 @@ public class HardStageLogic { /** * 获取奖励 */ - public static CommonProto.Drop.Builder getReward(User user,int rewardId) throws Exception{ + public static CommonProto.Drop.Builder getReward(User user, int rewardId) throws Exception { SRewardGroup rewardGroup = SRewardGroup.getsRewardItemMap().get(rewardId); - ItemMap itemObj = new ItemMap(); + //ItemMap itemObj = new ItemMap(); int[] dropList = rewardGroup.getRewardItem(); - CommonProto.Drop.Builder drop = ItemUtil.drop(user, dropList,1,0, BIReason.HARD_STAGE_GET); + CommonProto.Drop.Builder drop = ItemUtil.drop(user, dropList, 1, 0, BIReason.HARD_STAGE_GET); return drop; } - private static boolean addDropAndStar(HardStageNode node,List dropList,int rewardId,User user) throws Exception{ - if(!node.getRewardMap().get(rewardId)){ - dropList.add(getReward(user,rewardId)); - node.getRewardMap().put(rewardId,true); + private static boolean addDropAndStar(HardStageNode node, List dropList, int rewardId, User user) throws Exception { + if (node.getRewardMap().get(rewardId)) { + dropList.add(getReward(user, rewardId)); + node.getRewardMap().put(rewardId, true); node.updateRewardMap(); return true; } @@ -235,22 +245,22 @@ public class HardStageLogic { PlayerInfoProto.HardStageResponse.Builder response = PlayerInfoProto.HardStageResponse.newBuilder(); response.setInfo(info); ISession session = OnlineUserManager.getSessionByUid(user.getId()); - MessageUtil.sendIndicationMessage(session,1, MessageTypeProto.MessageType.HARD_STAGE_INFO_RESPONSE.getNumber(),response.build(),true); + MessageUtil.sendIndicationMessage(session, 1, MessageTypeProto.MessageType.HARD_STAGE_INFO_RESPONSE.getNumber(), response.build(), true); } /** * 升级刷新 */ - public static void refreshInfoByLevel(User user) throws Exception{ + public static void refreshInfoByLevel(User user) throws Exception { int curNodeId = user.getHardStageManager().getCurNode(); - if(curNodeId == 0){ + if (curNodeId == 0) { user.getHardStageManager().getChapterMap(user); - }else{ - SHardStage nodeConfig = SHardStage.getConfigMap().get(curNodeId); + } else { + /*SHardStage nodeConfig = SHardStage.getConfigMap().get(curNodeId); List openList = SHardStage.getPreList(nodeConfig.getId()); for(SHardStage stage : openList){ user.getHardStageManager().openNewNode(user,stage); - } + }*/ } sendHardStageIndication(user); } diff --git a/tablemanager/src/main/java/config/SHardStage.java b/tablemanager/src/main/java/config/SHardStage.java index 16b7eb63a..b2d9b3295 100644 --- a/tablemanager/src/main/java/config/SHardStage.java +++ b/tablemanager/src/main/java/config/SHardStage.java @@ -8,122 +8,123 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -@Table(name ="HardStage") +@Table(name = "HardStage") public class SHardStage implements BaseConfig { - private int id; + private int id; - private int chapter; + private int chapter; - private int section; + private int section; - private String picture ; + private String picture; - private int repeat ; + private int repeat; - private int nextLevel; + private int nextLevel; - private int levelLimit; + private int levelLimit; - private int star ; + private int star; - private int monsterGroup; + private int monsterGroup; - private int hardStageBuff; + private int hardStageBuff; - private int recommendFightAbility; + private int recommendFightAbility; - private int[] passReward; + private int[] passReward; - private int stageType; + private int stageType; - private int[] conditionValue; + private int[] conditionValue; - private int[] reward1; + private int[] reward1; - private static Map configMap ; - private static Map> preConfigMap; + private static Map configMap; + private static Map> preConfigMap; - - @Override + + @Override public void init() throws Exception { Map tempConfig = STableManager.getConfig(SHardStage.class); Map> tempPreConfigMap = new HashMap<>(); - for(SHardStage stage : tempConfig.values()){ - if(stage.getNextLevel() > 0){ - if(tempPreConfigMap.containsKey(stage.getNextLevel())){ + for (SHardStage stage : tempConfig.values()) { + if (stage.getNextLevel() > 0) { + if (tempPreConfigMap.containsKey(stage.getNextLevel())) { tempPreConfigMap.get(stage.getNextLevel()).add(stage); - }else{ + } else { List list = new ArrayList<>(); list.add(stage); - tempPreConfigMap.put(stage.getNextLevel(),list); + tempPreConfigMap.put(stage.getNextLevel(), list); } } } - if(null == configMap){ + if (null == configMap) { configMap = tempConfig; preConfigMap = tempPreConfigMap; } } - public int getId() { + public int getId() { return id; } - public int getChapter() { + public int getChapter() { return chapter; } - public int getSection() { + public int getSection() { return section; } - public String getPicture () { - return picture ; + public String getPicture() { + return picture; } - public int getRepeat () { - return repeat ; + public int getRepeat() { + return repeat; } - public int getNextLevel() { + public int getStar() { + return star; + } + + public int getNextLevel() { return nextLevel; } - public int getLevelLimit() { + public int getLevelLimit() { return levelLimit; } - public int getStar () { - return star ; - } - public int getMonsterGroup() { + public int getMonsterGroup() { return monsterGroup; } - public int getHardStageBuff() { + public int getHardStageBuff() { return hardStageBuff; } - public int getRecommendFightAbility() { + public int getRecommendFightAbility() { return recommendFightAbility; } - public int[] getPassReward() { + public int[] getPassReward() { return passReward; } - public int getStageType() { + public int getStageType() { return stageType; } - public int[] getConditionValue() { + public int[] getConditionValue() { return conditionValue; } - public int[] getReward1() { + public int[] getReward1() { return reward1; } @@ -135,7 +136,7 @@ public class SHardStage implements BaseConfig { return preConfigMap; } - public static List getPreList(int id){ - return preConfigMap.get(id); + public static List getPreList(int id) { + return preConfigMap.get(id); } } \ No newline at end of file