From ad20cec591cfeeae87f122a37ef77fde49c1a616 Mon Sep 17 00:00:00 2001 From: "PC-202302260912\\Administrator" <1769111741@qq.com> Date: Tue, 12 Dec 2023 17:38:59 +0800 Subject: [PATCH 01/32] =?UTF-8?q?=E6=B3=95=E5=AE=9D=E8=81=9A=E7=81=B5?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=B1=9E=E6=80=A7=E7=99=BE=E5=88=86=E6=AF=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/handler/GetPlayerInfoHandler.java | 9 +- .../hero/FaBaoSoulUpLvRequestHandler.java | 47 +++------- .../logic/activity/FifteenActivity.java | 46 +++++----- .../jieling/logic/dao/CumulationData.java | 4 +- .../ljsd/jieling/logic/dao/HeroManager.java | 90 +++++++++--------- .../com/ljsd/jieling/logic/dao/vo/HeroVo.java | 8 +- .../ljsd/jieling/logic/hero/HeroLogic.java | 92 ++++++++++++++----- .../src/main/java/config/STrumpBook.java | 4 +- 8 files changed, 156 insertions(+), 144 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java index 15d3bb302..2ac667995 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java @@ -144,7 +144,7 @@ public class GetPlayerInfoHandler extends BaseHandler{ StoreLogic.getInstance().reloadStoreInfo(user,7);//重载功能商店 ExplorerMapLogic.getInstance().calOfflineReward(user);//挂机探索 // monthCardRefresh(user);//月卡特殊处理 - faBaoJuLingHandler(user);//法宝修改 +// faBaoJuLingHandler(user);//法宝修改 //森罗幻境自动挂机返回掉落展示清除 Map dropShow = mapManager.getTowerGetRewardInfoShowMap(); if(dropShow != null && !dropShow.isEmpty()){ @@ -429,11 +429,4 @@ public class GetPlayerInfoHandler extends BaseHandler{ return lifeGridInfos; } - public static void faBaoJuLingHandler(User user) throws Exception { - Set keySet = user.getHeroManager().getFaBaoGongMingSkillMap().keySet(); - for (Integer bookId : keySet) { - FaBaoSoulUpLvRequestHandler.updateFaBaoGongMingLv(user, bookId); - } - } - } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/hero/FaBaoSoulUpLvRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/hero/FaBaoSoulUpLvRequestHandler.java index 576658c53..e811883fb 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/hero/FaBaoSoulUpLvRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/hero/FaBaoSoulUpLvRequestHandler.java @@ -8,13 +8,11 @@ import com.ljsd.jieling.logic.activity.event.Poster; import com.ljsd.jieling.logic.activity.event.SaveHeroForceEvent; import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.root.User; -import com.ljsd.jieling.logic.mission.GameEvent; -import com.ljsd.jieling.logic.mission.MissionType; +import com.ljsd.jieling.logic.hero.HeroLogic; import com.ljsd.jieling.network.session.ISession; import com.ljsd.jieling.util.ItemUtil; import com.ljsd.jieling.util.MessageUtil; import config.STrump; -import config.STrumpBook; import config.STrumpLevelupPool; import org.springframework.stereotype.Component; import rpc.protocols.HeroInfoProto; @@ -32,50 +30,27 @@ public class FaBaoSoulUpLvRequestHandler extends BaseHandler trumpConfig.getLvMax()) { LOGGER.error("法宝之魂强化等级已达上限"); throw new ErrorCodeException(ErrorCode.HANDLE_FAILED); } - int[][]costArr=new int[1][2]; - int costLv=faBaoLv-1; - costArr[0][0]=trumpConfig.getLvupCostItem(); - costArr[0][1]=STrumpLevelupPool.levelPoolMap.get(trumpConfig.getLvupPool()).get(costLv).getLvupCostItemNum(); + int[][] costArr = new int[1][2]; + int costLv = faBaoLv-1; + costArr[0][0] = trumpConfig.getLvupCostItem(); + costArr[0][1] = STrumpLevelupPool.levelPoolMap.get(trumpConfig.getLvupPool()).get(costLv).getLvupCostItemNum(); boolean costResult = ItemUtil.itemCost(user,costArr, BIReason.FABAO_SOUL_UP_COST,faBaoId); if (!costResult) { LOGGER.error("法宝之魂强化材料不足"); throw new ErrorCodeException(ErrorCode.HERO_ITEM_NOT); } - user.getHeroManager().putFaBaoSoulMap(faBaoId,faBaoLv); - updateFaBaoGongMingLv(user,trumpConfig.getBookId()); + user.getHeroManager().putFaBaoSoulMap(faBaoId, faBaoLv); + int bookId = trumpConfig.getBookId(); + HeroLogic.getInstance().updateTrumpBookStarLv(user, bookId); // 更新战力 Poster.getPoster().dispatchEvent(new SaveHeroForceEvent(user.getId(),"")); MessageUtil.sendMessage(session,1, MessageTypeProto.MessageType.FA_BAO_SOUL_UPLV_RESPONSE_VALUE,null,true); } - - public static void updateFaBaoGongMingLv(User user,int bookId) throws Exception { - STrumpBook sTrumpBook=STrumpBook.sTrumpBookMap.get(bookId); - int[] trumpList = sTrumpBook.getTrumpList(); - int gongmingLv=0; - for (int trumpId : trumpList) { - if (!user.getHeroManager().getFaBaoSoulMap().containsKey(trumpId)) { - return; - } - if (gongmingLv==0){ - gongmingLv=user.getHeroManager().getFaBaoSoulMap().get(trumpId); - } - if (user.getHeroManager().getFaBaoSoulMap().get(trumpId)= sActivityRewardConfig.getValues()[0][0] - 1; } @Override @@ -40,18 +38,19 @@ public class FifteenActivity extends AbstractActivity { if(globalActivity == null){ return; } - ActivityLogic.getInstance().initAllActivityMission(user.getActivityManager().getActivityMissionMap(),globalActivity.getId()); - if(user.getActivityManager().getActivityMissionMap().get(globalActivity.getId()) == null){ + ActivityManager activityManager = user.getActivityManager(); + Map activityMissionMap = activityManager.getActivityMissionMap(); + ActivityLogic.getInstance().initAllActivityMission(activityMissionMap,globalActivity.getId()); + ActivityMission activityMission = activityMissionMap.get(globalActivity.getId()); + if(activityMission == null){ return; } - long startTime = ToolsUtil.getTimeLong - (globalActivity.getStartTimeLong(),globalActivity.getEndTimeLong(),globalActivity.getTime(), - user.getPlayerInfoManager().getCreateTime(), 1); - int st = (int)(startTime/1000); - for(Map.Entry entry : user.getActivityManager().getActivityMissionMap(). - get(globalActivity.getId()).getActivityMissionMap().entrySet()){ + long startTime = ToolsUtil.getTimeLong(globalActivity.getStartTimeLong(),globalActivity.getEndTimeLong(),globalActivity.getTime(),user.getPlayerInfoManager().getCreateTime(), 1); + int time = (int)(startTime/1000); + Map progressInfoMap = activityMission.getActivityMissionMap(); + for(Map.Entry entry : progressInfoMap.entrySet()){ SActivityRewardConfig config = SActivityRewardConfig.getsActivityRewardConfigByMissionId(entry.getKey()); - entry.getValue().setProgrss((int)((TimeUtils.DAY * (config.getValues()[0][0] - 1))/1000) + st); + entry.getValue().setProgrss((int)((TimeUtils.DAY * (config.getValues()[0][0] - 1))/1000) + time); } } @@ -63,18 +62,17 @@ public class FifteenActivity extends AbstractActivity { User user = UserManager.getUser(session.getUid()); List reward = new ArrayList<>(); getAllMissRewards(user,session,reward); - Map itemMap = new HashMap<>(); - reward.forEach(n-> Arrays.stream(n).forEach(m->itemMap.put(m[0],itemMap.getOrDefault(m[0], 0)+m[1]))); - - int[][] rewardArray = ItemUtil.mapToArray(itemMap); - CommonProto.Drop.Builder drop = ItemUtil.drop(user, rewardArray, BIReason.TAKE_ACTIVITY_REWARD); - + CommonProto.Drop.Builder drop = ItemUtil.drop(user, reward, BIReason.TAKE_ACTIVITY_REWARD); PlayerInfoProto.TakeActivityRewardResponse build = PlayerInfoProto.TakeActivityRewardResponse.newBuilder().setDrop(drop).build(); - - reportTakeActivityReward(user,rewardArray,missionId); - +// reportTakeActivityReward(user,rewardArray,missionId); MessageUtil.sendMessage(session, 1, rewardResponseValue, build, true); + updateActivityValue(session); + return true; + } + + public void updateActivityValue(ISession session) throws Exception { + User user = UserManager.getUser(session.getUid()); ActivityMission activityMission = user.getActivityManager().getActivityMissionMap().get(id); boolean isAll = true; for(Map.Entry entry:activityMission.getActivityMissionMap().entrySet()){ @@ -87,7 +85,5 @@ public class FifteenActivity extends AbstractActivity { activityMission.setV(2); } sendActivityProgress(session, null); - return true; - } } \ No newline at end of file diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java index 75789ea5f..a7eebde8e 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java @@ -589,7 +589,7 @@ public class CumulationData { } public void addTransfigurationNum(int quality,int num){ - get_transfiguration_num.merge(quality,num,(oldV, newV) -> oldV + newV); + get_transfiguration_num.merge(quality,num, Integer::sum); } public void setGet_transfiguration_num(Map get_transfiguration_num) { @@ -601,7 +601,7 @@ public class CumulationData { } public void addActivate_treasure_skill_num(int quality,int num){ - get_transfiguration_num.merge(quality,num,(oldV, newV) -> oldV + newV); + get_transfiguration_num.merge(quality, num, Integer::sum); } public Map getActivate_treasure_skill_num() { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/HeroManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/HeroManager.java index a00c3e0a9..a024855b3 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/HeroManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/HeroManager.java @@ -116,39 +116,33 @@ public class HeroManager extends MongoBase { */ private Map sixiangDataMap = new HashMap<>(); - public Map getSixiangDataMap() { - return sixiangDataMap; - } - /** * 四象心法进阶额外属性加成 * key: 职业类型 value:< key: 属性类型 value: 属性加成值 > */ private Map> sixiangPropUpMap = new HashMap<>(); + private Map heroLikableMap = new HashMap<>();// 好感度数据 key: 英雄静态id value:好感度值 + private int likableSendTime;//好感度已赠送次数 + private Map faBaoSoulMap = new HashMap<>();//法宝之魂数据 + private Map trumpBookStarMap = new HashMap<>();// 法宝组合星级 key:bookid,value:星级 + private Map> LifeGridMap = new HashMap<>();//命格数据 + private Map transformationList = new HashMap<>();//变身卡列表 + + public Map getSixiangDataMap() { + return sixiangDataMap; + } + public Map> getSixiangPropUpMap() { return sixiangPropUpMap; } - /** - * 好感度数据 - * key: 英雄静态id value:好感度值 - */ - private Map heroLikableMap = new HashMap<>(); - public Map getHeroLikableMap() { return heroLikableMap; } - //神将好感度属性加成, 20220812修改,好感度加成读表计算,不再记录到数据库 - private Map>heroLikablePropAddMap=new HashMap<>(); - //所有神将总好感度带来的属性加成(包含特权加成) 20220812修改,好感度加成属性读表计算,不再记录到数据库 - private Map allLikablePropAddMap = new HashMap<>(); - /** * 获取单个英雄好感度加成属性 - * @param heroTId - * @return */ public Map getHeroLikablePropAddMap(int heroTId) { Integer curHeroLikableNum = getHeroLikableMap().getOrDefault(heroTId, 0); @@ -158,7 +152,6 @@ public class HeroManager extends MongoBase { /** * 获取总好感度加成属性 - * @return */ public Map getAllLikablePropAddMap() { int allHeroLikableNum = HeroUpLikableRequestHandler.GetAllHeroLikableNum(getHeroLikableMap()); @@ -174,27 +167,13 @@ public class HeroManager extends MongoBase { return HeroUpLikableRequestHandler.GetAllLikableLvByLikaNum(allHeroLikableNum); } - private int likableSendTime;//好感度已赠送次数 + public void setLifeGridMap(Map> lifeGridMap) { + LifeGridMap = lifeGridMap; + updateString("LifeGridMap", LifeGridMap); + } public int getLikableSendTime() { return likableSendTime; } - private Map faBaoSoulMap= new HashMap<>();//法宝之魂数据 - - public Map getFaBaoSoulMap() { - return faBaoSoulMap; - } - - private Map faBaoGongMingSkillMap = new HashMap<>();//法宝之魂共鸣数据<法宝组合id:技能id> - - public Map getFaBaoGongMingSkillMap() { - return faBaoGongMingSkillMap; - } - - /** - * 命格数据 - */ - private Map>LifeGridMap=new HashMap<>(); - public Map> getLifeGridMap() { return LifeGridMap; } @@ -208,11 +187,6 @@ public class HeroManager extends MongoBase { updateString("LifeGridMap."+gridId, LifeGridMap.get(gridId)); } - /** - * 变身卡列表 - */ - private Map transformationList = new HashMap<>(); - public void setTransformationList(Map transformationList) { this.transformationList = transformationList; updateString("transformationList", this.transformationList); @@ -286,14 +260,40 @@ public class HeroManager extends MongoBase { updateString("heroLikableMap."+heroStaticId, likableNum); } - public void putFaBaoSoulMap(int fabaoId,int fabaoLv) { + public void setFaBaoSoulMap(Map faBaoSoulMap) { + this.faBaoSoulMap = faBaoSoulMap; + updateString("faBaoSoulMap", faBaoSoulMap); + } + + public void putFaBaoSoulMap(int fabaoId, int fabaoLv) { faBaoSoulMap.put(fabaoId,fabaoLv); updateString("faBaoSoulMap."+fabaoId, fabaoLv); } - public void putFaBaoGongMingSkillMap(int bookId,int skillId) { - faBaoGongMingSkillMap.put(bookId,skillId); - updateString("faBaoGongMingSkillMap."+bookId, skillId); + public Map getFaBaoSoulMap() { + return faBaoSoulMap; + } + + public int getFaBaoSoulLv(int id) { + return faBaoSoulMap.getOrDefault(id, 0); + } + + public Map getTrumpBookStarMap() { + return trumpBookStarMap; + } + + public int getTrumpBookStar(int bookId){ + return trumpBookStarMap.getOrDefault(bookId, 0); + } + + public void setTrumpBookStarMap(Map trumpBookStarMap) { + this.trumpBookStarMap = trumpBookStarMap; + updateString("trumpBookStarMap", trumpBookStarMap); + } + + public void putTrumpBookStar(int bookID, int star){ + this.trumpBookStarMap.put(bookID, star); + updateString("trumpBookStarMap", trumpBookStarMap); } //刷新好感度赠送次数 参数传当日已赠送次数 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/vo/HeroVo.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/vo/HeroVo.java index f518a635d..bd8a7451f 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/vo/HeroVo.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/vo/HeroVo.java @@ -27,7 +27,7 @@ public class HeroVo { private Map godSealByPositionMap = new HashMap<>(); private Map purpleMansionSealMap = new HashMap<>(); private Map equipPositionMap = new HashMap<>(); - private Map faBaoGongMingSkillMap = new HashMap<>(); + private Map trumpBookStarMap = new HashMap<>(); private Map userMountValidTime = new HashMap<>(); private Map jewelMap = new HashMap<>(); private Map faxiangMap = new HashMap<>(); @@ -53,7 +53,7 @@ public class HeroVo { heroVo.godSealByPositionMap = new HashMap<>(hero.getGodSealByPositionMap()); heroVo.purpleMansionSealMap = new HashMap<>(heroManager.getPurpleMansionSeal()); heroVo.equipPositionMap = new HashMap<>(hero.getEquipByPositionMap()); - heroVo.faBaoGongMingSkillMap = new HashMap<>(heroManager.getFaBaoGongMingSkillMap()); + heroVo.trumpBookStarMap = new HashMap<>(heroManager.getTrumpBookStarMap()); heroVo.userMountValidTime = new HashMap<>(user.getPlayerInfoManager().getUserMountValidTime()); heroVo.jewelMap = CBean2Proto.propertyItemOfLocal(user,hero.getJewelInfo()); heroVo.faxiangMap = CBean2Proto.propertyItemOfLocal(user,hero.getFaxiangList()); @@ -133,7 +133,7 @@ public class HeroVo { return equipPositionMap; } - public Map getFaBaoGongMingSkillMap() { - return faBaoGongMingSkillMap; + public Map getTrumpBookStarMap() { + return trumpBookStarMap; } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index b73715ace..fb99ee001 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -2129,31 +2129,33 @@ public class HeroLogic { } ///法宝之魂共鸣技能 - Map faBaoGongMingSkillMap = heroVo.getFaBaoGongMingSkillMap(); - if (!faBaoGongMingSkillMap.isEmpty()) { + Map trumpBookStarMap = heroVo.getTrumpBookStarMap(); + if (!trumpBookStarMap.isEmpty()) { List faBaoSoulSkills = new ArrayList<>(); - for (Map.Entry entry : faBaoGongMingSkillMap.entrySet()) { - SXiuXianSkill sXiuXianSkill = STableManager.getConfig(SXiuXianSkill.class).get(entry.getValue()); + Map trumpBookMap = STrumpBook.sTrumpBookMap; + for (Map.Entry entry : trumpBookStarMap.entrySet()) { + STrumpBook trumpBook = trumpBookMap.get(entry.getKey()); + if (trumpBook == null){ + continue; + } + int xiuxianSkillId = trumpBook.getSkillList()[entry.getValue() - 1][0]; + SXiuXianSkill sXiuXianSkill = STableManager.getConfig(SXiuXianSkill.class).get(xiuxianSkillId); + if (sXiuXianSkill == null){ + continue; + } int[] fitList = sXiuXianSkill.getFitList(); + List integerList = Arrays.stream(sXiuXianSkill.getSkillId()).boxed().collect(Collectors.toList()); if (fitList[0] == 0) { - for (int skillId : sXiuXianSkill.getSkillId()) { - faBaoSoulSkills.add(skillId); - } + faBaoSoulSkills.addAll(integerList); } if (fitList[0] == 1 && fitList[1] == propertyId) { - for (int skillId : sXiuXianSkill.getSkillId()) { - faBaoSoulSkills.add(skillId); - } + faBaoSoulSkills.addAll(integerList); } if (fitList[0] == 2 && fitList[1] == propertyId) { - for (int skillId : sXiuXianSkill.getSkillId()) { - faBaoSoulSkills.add(skillId); - } + faBaoSoulSkills.addAll(integerList); } } - if (!faBaoSoulSkills.isEmpty()) { - skillList.addAll(faBaoSoulSkills); - } + skillList.addAll(faBaoSoulSkills); } // 好感度技能 @@ -2861,16 +2863,37 @@ public class HeroLogic { // ... 法宝聚灵和命格增加属性逻辑 ... HeroManager heroManager = user.getHeroManager(); - // 法宝聚灵 Map faBaoSoulMap = heroManager.getFaBaoSoulMap(); + // 计算基础属性加成 + int addition = 0; + int trumpStarUp = SSpecialConfig.getIntegerValue("Trump_Star_Up"); + Map trumpBookMap = STrumpBook.sTrumpBookMap; + for (STrumpBook book : trumpBookMap.values()) { + int trumpBookStar = heroManager.getTrumpBookStar(book.getId()); + addition += (trumpBookStar * trumpStarUp); + } + // 法宝聚灵 + Map sTrumpMap = STrump.sTrumpMap; + Map> levelPoolMap = STrumpLevelupPool.levelPoolMap; + + HashMap trumpLvAttr = new HashMap<>(); for (Map.Entry faBaoSoulEntry : faBaoSoulMap.entrySet()) { // 等级处理 - STrump trumpConfig = STrump.sTrumpMap.get(faBaoSoulEntry.getKey()); - STrumpLevelupPool lvUpProps = STrumpLevelupPool.levelPoolMap.get(trumpConfig.getLvupPool()).get(faBaoSoulEntry.getValue()); - combinedAttribute(lvUpProps.getLvupProps(), heroAllAttribute); + STrump trumpConfig = sTrumpMap.get(faBaoSoulEntry.getKey()); + STrumpLevelupPool lvUpProps = levelPoolMap.get(trumpConfig.getLvupPool()).get(faBaoSoulEntry.getValue()); + for (int[] lv : lvUpProps.getLvupProps()) { + trumpLvAttr.merge(lv[0], (long) lv[1], Long::sum); + } } + for (Map.Entry entry : trumpLvAttr.entrySet()) { + long value = Math.round(entry.getValue() * (1 + addition / 10000D)); + trumpLvAttr.put(entry.getKey(), value); + } + LOGGER.info("法宝聚灵属性加成======================={}=>{}",addition,trumpLvAttr); + combinedAttribute(trumpLvAttr, heroAllAttribute); + + // 法宝聚灵总星级属性 Map trumpStarMap = STableManager.getConfig(STrumpStar.class); - // 玩家全部的总星级 int sumStar = faBaoSoulMap.values().stream().mapToInt(v -> v).sum(); STrumpStar trumpStar = null; for (STrumpStar value : trumpStarMap.values()) { @@ -7074,6 +7097,33 @@ public class HeroLogic { return result; } + /** + * 获取法宝组合星级 + * @param user + * @param bookId + * @return + */ + public void updateTrumpBookStarLv(User user,int bookId) throws Exception { + STrumpBook sTrumpBook = STrumpBook.sTrumpBookMap.get(bookId); + if (sTrumpBook == null){ + return; + } + int[] trumpList = sTrumpBook.getTrumpList(); + HeroManager heroManager = user.getHeroManager(); + int result = heroManager.getFaBaoSoulLv(trumpList[0]); + for (int i = 1; i < trumpList.length; i++) { + int faBaoSoulLv = heroManager.getFaBaoSoulLv(trumpList[i]); + if (faBaoSoulLv < result){ + result = faBaoSoulLv; + } + } + if (heroManager.getTrumpBookStar(bookId) == 0){ + // 触发任务 + user.getUserMissionManager().onGameEvent(user, GameEvent.ONE_MISSION_TYPE_CONSUME, MissionType.GET_TREASURE_SKILL_NUM, sTrumpBook.getQuality(), 1); + } + heroManager.putTrumpBookStar(bookId, result); + } + public static class Instance { public final static HeroLogic instance = new HeroLogic(); } diff --git a/tablemanager/src/main/java/config/STrumpBook.java b/tablemanager/src/main/java/config/STrumpBook.java index 1cd6dcf93..3a420c291 100644 --- a/tablemanager/src/main/java/config/STrumpBook.java +++ b/tablemanager/src/main/java/config/STrumpBook.java @@ -3,7 +3,6 @@ package config; import manager.STableManager; import manager.Table; -import java.util.HashMap; import java.util.Map; @Table(name ="TrumpBook") @@ -17,11 +16,10 @@ public class STrumpBook implements BaseConfig { private int[][] skillList; - public static Map sTrumpBookMap; + public static Map sTrumpBookMap; @Override public void init() throws Exception { - sTrumpBookMap=new HashMap<>(); sTrumpBookMap = STableManager.getConfig(STrumpBook.class); } From 3912710dee4da5f4cbc9455e358f3a75b2534b7d Mon Sep 17 00:00:00 2001 From: "PC-202302260912\\Administrator" <1769111741@qq.com> Date: Tue, 12 Dec 2023 17:40:06 +0800 Subject: [PATCH 02/32] =?UTF-8?q?=E6=88=98=E6=96=97=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Battle/Config/Data/CombatControl.lua | 130 +++++++++--------- .../Battle/Config/Data/HardStageCondition.lua | 2 +- .../Config/Data/PassiveSkillLogicConfig.lua | 4 +- .../Battle/Config/Data/SkillLogicConfig.lua | 12 +- luafight/Modules/Battle/Logic/Role/Skill.lua | 2 +- luafight/Modules/Battle/Readme.txt | 6 +- luafight/test.lua | 4 +- 7 files changed, 84 insertions(+), 76 deletions(-) diff --git a/luafight/Modules/Battle/Config/Data/CombatControl.lua b/luafight/Modules/Battle/Config/Data/CombatControl.lua index 7e5d54333..4b749e1e9 100644 --- a/luafight/Modules/Battle/Config/Data/CombatControl.lua +++ b/luafight/Modules/Battle/Config/Data/CombatControl.lua @@ -1,8 +1,8 @@ local CombatControl = { __count = 212, __indexs = {-100.4,611,1,9,1,9,4.1,8.7,6,3,17.51,14.1,28.1,30.1,8899,190,10,1,699,90,10,500,1200,990,2,8,3,597,5280,1.8,80462,32.51,29,68.43,-10.2,37.4,5.2,89,1,9,1.2,8,16.3,19,6.2,1.2,911078,120000,19060,8849240,2010650}, -__values = {-1000,200,0,150,30,120,50,78,72,17,33,50,-15.2,20,15,5,10,20,0,10,40,50,1.01,20,-10.3,15,5,20,4,36,-5.2,30,20,50,3.2,-50.3,6.3,14,16,20,86,14,-50.4,100,20,30,-50.11,100,-50.3,10,-20.2,-50.2,800,200,1000}, -__exVals = {365,nil,null,'live2d_mihuokeskill',1.2,.5,'live2d_mihuokeattack',1.5,-233.6,'c_ren_shifang','c_fo_shifang','c_yao_shifang','live2d_kaiduoskill','live2d_xiaobing14attack','live2d_xiaobing14skill',-.1,'live2d_dasiqiskill','live2d_xiaobing13attack','live2d_xiaobing13skill','live2d_xiangkesiskill','live2d_xiaobing3attack','live2d_xiaobing3skill','live2d_saboskill','live2d_dasiqiattack','live2d_kedaerattack','live2d_kedaerskill','live2d_xiaobing5attack','live2d_xiaobing5skill','live2d_xiaobing10attack','live2d_xiaobing10skill','live2d_xiangkesiattack','live2d_luobinskill','live2d_xiaobing4attack','live2d_xiaobing4skill','live2d_xiaobing2attack','live2d_xiaobing2skill','live2d_xiaobing6attack','live2d_xiaobing6skill','live2d_xiaobing11attack','live2d_xiaobing11skill','live2d_saboattack','live2d_luoskill','live2d_xiaobing12attack','live2d_xiaobing12skill','live2d_xiaobing9attack','live2d_xiaobing9skill','live2d_xiaobing1attack','live2d_xiaobing1skill','live2d_xiaobing7attack','live2d_xiaobing7skill','live2d_xiaobing16attack','live2d_xiaobing16skill','live2d_nameiskill','live2d_guangyueyutianskill','c_ren_jizhong','normal_effect','c_lzz_0002_t9_zh','Audio_battle_vo_lzz01','c_dao_jizhong','c_ab_00014_t9_zh','c_sgb_00041_t9_zh','c_dhdj_00042_t9_zh','Audio_battle_vo_ab01','Audio_battle_vo_sgb01','Audio_battle_yhdd','c_chdr_00030_t3shifa','Effect_c_mp_00051_001_01','Effect_c_zbj_0007_s1_attack_01','Effect_c_dhdj_00042_s1_attack_PG_01','Effect_c_gy_00092_attack_01','live2d_heihuziattack','live2d_heihuziskill','live2d_daheattack','live2d_daheskill','live2d_yanzaijinattack','live2d_yanzaijinskill','live2d_kaiduoattack','live2d_daipengattack','live2d_daipengskill','live2d_lufeiattack','live2d_lufeiskill','live2d_bulukeattack','live2d_bulukeskill','live2d_fulanqiattack','live2d_fulanqiskill','live2d_shanzhiattack','live2d_shanzhiskill','live2d_luobinattack','live2d_wusuopuattack','live2d_wusuopuskill','live2d_qiaobaattack','live2d_qiaobaskill','live2d_wuerjiattack','live2d_wuerjiskill','live2d_caomaolufeiattack','live2d_caomaolufeiskill','live2d_guangyueriheattack','live2d_guangyueriheskill','live2d_suolongattack','live2d_suolongskill','live2d_qingzhiattack','live2d_qingzhiskill','live2d_simogeattack','live2d_simogeskill','live2d_huangyuanattack','live2d_huangyuanskill','live2d_shenpingattack','live2d_shenpingskill','live2d_alongattack','live2d_alongskill','live2d_moliyaattack','live2d_moliyaskill','live2d_luoattack','live2d_luojieattack','live2d_luojieskill','live2d_xiaobing8attack','live2d_xiaobing8skill','live2d_damaattack','live2d_damaskill','live2d_nameiattack','live2d_guangyueyutianattack','c_chdr_00030_t3jizhong','c_ts_00017_t3jiaxue','Effect_c_dhdj_00042_s1_attack_PG_03','c_jbj_0007_t9_zh','c_wsps_00016_t9_zh','c_gyps_00020_t9_zh','c_fhlh_00021_t9_zh','c_ljgz_00032_t9_zh','c_ttjz_00048_t9_zh','c_mp_00051_t9_zh','Audio_battle_vo_zbj01','Audio_battle_vo_dm01','Audio_battle_vo_ptss01','Audio_battle_vo_fhlh01','Audio_battle_vo_negw02','Audio_battle_vo_tljz01','Audio_battle_vo_mp01',.7,29.34,17.3,122.5,109.3,'Effect_c_syf_0016_t3_attack_01','Effect_c_gg_0005_t3_attack_01','Effect_c_jmm_0006_attack_01','c_jbj_0007_t3_qianyao','Effect_c_ghn_0009_t3_attack_01','Effect_c_hsmw_00010_attack_01','Effect_c_hhe_00011_attack_01','Effect_c_bhxz_00013_t1_attack_01','c_swk_00015_t3','Effect_c_kqmw_00018_attack_01','Effect_c_rd_00019_t3_attack_01','c_gyps_00020_t3','Effect_c_ygps_00025_001_01','Effect_c_ft_00026_01_01','Effect_c_jcdp_00027_attack_01','Effect_c_nz_00029_t3_attack_01','Effect_c_wg_00037_t1_attack_01','c_ljgz_00032_t3','c_dlsm_00033_t3','Effect_c_zgm_00039_001_01','fx_yangjian_shifa','c_jls_00044_t3','Effect_c_ny_00036_attack_01','c_lslz_00046_t3','c_ldb_00047_attack','Effect_c_lc_00050_001_01','Effect_c_yc_00052_001_01','c_niutou_shifang','Effect_c_swk_00015_s1_attack_PG_01','Effect_c_swk_00015_s1_attack_01','Effect_tiannv_attack_01','fx_nverguowang_daoguang','Effect_c_dhdj_00042_s1_attack_01','Effect_c_0035_s01_attack_01','Effect_c_jcdp_00027_S1_attack_01','Effect_ls_01_qingluan_attack_01','Effect_ls_05_huodou_attack_01','Effect_ls_03_yinglong_attack_01','Effect_ls_04_zhulong_attack_01','Effect_ls_08_pixiu_attack_01','ls_06_baize_attack_01','Effect_ls_05_fenghuang_attack_01','Effect_ls_08_jinwu_attack_01','Effect_ls_09_jukun_attack_01','Effect_c_zs_0080_attack_01','Effect_c_xy_0026_attack_01','Effect_c_mlmm_0054_attack_01','Effect_c_fm_0027_attack_01','Effect_c_mc_0034_attack_01','Effect_c_jll_00059_attack_01','Effect_c_jlzz_00060_attack_01','Effect_c_rj_0033_attack_01','Effect_c_jpw_0024_attack_01','Effect_c_mjn_00063_attack_01','Effect_c_cyh_0008_attack_01','Effect_c_qr_0065_attack_01','Effect_c_zc_0021_attack_01','Effect_c_ax_0067_001_01','Effect_c_bgj_00091_attack_01','c_ren_guocheng','Effect_c_0035_attack_02','Fx_c_0056_hit','live2d_bulukeattackshouji','live2d_bulukeskillshouji','NEZHA_ATTACK','Effect_c_wg_00037_t1_attack_03','c_ljgz_00032_t3_jizhong','c_dlsm_00033_t3shouji','c_lslz_00046_t3_jizhong','Effect_ls_04_zhulong_attack_03','Effect_ls_05_fenghuang_attack_03','Effect_ls_09_jukun_attack_03','Effect_c_yn_009_attack_new_003','c_jw_0003_t9_zh','c_ls_0004_t9_zh','c_gg_0005_t9_zh','c_jmm_0006_t9_zh','c_bhxz_00013_t9_zh','c_ghn_0009_t9_zh','c_hsmw_00010_t9_zh','c_hhe_00011_t9_zh','c_sjnn_00012_t9_zh','c_dj_0008_t9_zh','c_swk_00015_t9_zh','c_ts_00017_t9_zh','c_dst_00023_t9_zh','c_rd_00019_t9_zh','c_xllh_00022_t9_zh','c_kqmw_00018_t9_zh','c_pxps_00024_t9_zh','c_ygps_00025_t9_zh','c_ft_00026_t9_zh','c_jcdp_00027_t9_zh','c_cy_00031_t9_zh','c_nz_00029_t9_zh','c_chdr_00030_t9_zh','c_wg_00037_t9_zh','c_dlsm_00033_t9_zh','c_ce_00034_t9_zh','c_zgm_00039_t9_zh','c_jtxn_00045_t9_zh','c_chh_00035_t9_zh','c_mz_00038_t9_zh','c_fx_00028_t9_zh','c_yj_00040_t9_zh','c_jzy_00043_t9_zh','c_jls_00044_t9_zh','c_ny_00036_t9_zh','c_lslz_00046_t9_zh','c_ldb_00047_t9_zh','c_ddtz_00049_t9_zh','c_lc_00050_t9_zh','c_yc_00052_t9_zh','c_zn_001_t9_zh','c_qcdn_000_t9','c_tpwn_zh','c_qtwk_0001_t9_zh','l_ls_2_zh','l_ls_3_zh','l_ls_1_zh','l_ls_4_zh','l_ls_6_zh','l_ls_7_zh','l_ls_5_zh','l_ls_8_zh','l_ls_10_zh','c_3_1_t9_zh','c_3_2_t9_zh','c_3_3_t9_zh','c_3_4_t9_zh','c_3_8_t9_zh','c_3_6_t9_zh','c_3_7_t9_zh','c_3_5_t9_zh','c_nxq_00054_t9_zh','c_jy_00055_t9_zh','c_ygl_00056_t9_zh','c_yhj_00057_t9_zh','c_dz_00058_t9_zh','c_jll_00059_t9_zh','c_jlzz_00060_t9_zh','c_axl_00061_t9_zh','c_mz_00062_t9_zh','c_mjn_00063_t9_zh','c_md_00064_t9_zh','c_jz_00065_t9_zh','c_hdxj_00066_t9_zh','c_sdxj_00067_t9_zh','c_jhsn_00068_t9_zh','c_lsx_00069_t9_zh','c_bgj_00091_t9_zh','c_gy_00092_t9_zh','c_yn_jn_001_new','Audio_battle_vo_jw01','Audio_battle_vo_bsz01','Audio_battle_vo_nmw01','Audio_battle_vo_jmm01','Audio_battle_vo_bhxz01','Audio_battle_vo_ghn01','Audio_battle_vo_hsmw01','Audio_battle_vo_bah02','Audio_battle_vo_sjll01','Audio_battle_vo_dj01','Audio_battle_vo_swk01','Audio_battle_vo_ts01','Audio_battle_vo_dst01','Audio_battle_vo_rd01','Audio_battle_vo_xllh01','Audio_battle_vo_kqmw01','Audio_battle_vo_pxps01','Audio_battle_vo_ygps01','Audio_battle_vo_ft01','Audio_battle_vo_bdmw01','Audio_battle_cy','Audio_battle_vo_nz01','Audio_battle_vo_chdr01','Audio_battle_vo_wg01','Audio_battle_vo_dlsm01','Audio_battle_vo_ce01','Audio_battle_vo_zgm01','Audio_battle_vo_hml01','Audio_battle_chh','Audio_battle_vo_mz01','Audio_battle_fx','Audio_battle_vo_yj01','Audio_battle_vo_jzy01','Audio_battle_vo_zk01','Audio_battle_vo_jc01','Audio_battle_vo_tyxj01','Audio_battle_hxz','Audio_battle_vo_ddtz01','Audio_battle_vo_lc01','Audio_battle_vo_yc01','Audio_battle_vo_zn01','Audio_battle_vo_nmw02','Audio_ls_ql_vo_01','Audio_ls_hd_vo_01','Audio_ls_yl_vo_01','Audio_ls_zl_vo_01','Audio_20005pixiu_exskill_voc_01','Audio_ls_bz_vo_01','Audio_ls_fh_vo_01','Audio_jw_vo_01','Audio_ls_jk_vo_01','Audio_battle_vo_nxq01','Audio_battle_vo_jy01','Audio_battle_lm','Audio_battle_vo_bah01','Audio_battle_vo_dz01','Audio_battle_vo_jll01','Audio_battle_vo_jlzz01','Audio_battle_vo_axl01','Audio_battle_vo_muza01','Audio_battle_vo_mjn01','Audio_battle_vo_md01','Audio_battle_vo_qxn01','Audio_battle_ycx','Audio_battle_xyk','Audio_battle_vo_jhsn01','Audio_battle_vo_lsx01','Audio_100912bgj_vo_01','Audio_10092_gyps_vo_01','Audio_battle_luoli_pt01'}, +__values = {-1000,200,150,30,120,50,78,72,17,33,50,-15.2,40,10,20,0,-50.2,1.9,21,-10.3,-20.2,4,36,-5.2,30,20,-50.7,3.2,86,14,-50.6,20,30,-50.11,100,-50.3,10,-20.2,-50.2,-1000.3}, +__exVals = {289,nil,null,'live2d_mihuokeskill',1.2,'live2d_mihuokeattack',1.5,'live2d_kaiduoskill','live2d_dasiqiskill','live2d_xiaobing14attack','live2d_xiaobing14skill','live2d_xiaobing13attack','live2d_xiaobing13skill','live2d_xiangkesiskill','live2d_xiaobing3attack','live2d_xiaobing3skill','live2d_saboskill','live2d_dasiqiattack','live2d_kedaerattack','live2d_kedaerskill','live2d_xiaobing5attack','live2d_xiaobing5skill','live2d_xiaobing10attack','live2d_xiaobing10skill','live2d_xiangkesiattack','live2d_luobinskill','live2d_xiaobing4attack','live2d_xiaobing4skill','live2d_xiaobing2attack','live2d_xiaobing2skill','live2d_xiaobing6attack','live2d_xiaobing6skill','live2d_xiaobing11attack','live2d_xiaobing11skill','live2d_saboattack','live2d_luoskill','live2d_xiaobing12attack','live2d_xiaobing12skill','live2d_xiaobing9attack','live2d_xiaobing9skill','live2d_xiaobing1attack','live2d_xiaobing1skill','live2d_xiaobing7attack','live2d_xiaobing7skill','live2d_xiaobing16attack','live2d_xiaobing16skill','live2d_nameiskill','live2d_guangyueyutianskill','c_lzz_0002_t9_zh','Audio_battle_vo_lzz01','c_ab_00014_t9_zh','c_sgb_00041_t9_zh','c_dhdj_00042_t9_zh','Audio_battle_vo_ab01','Audio_battle_vo_sgb01','Audio_battle_yhdd',2.5,'live2d_heihuziattack','live2d_heihuziskill','live2d_daheattack','live2d_daheskill','live2d_yanzaijinattack','live2d_yanzaijinskill','live2d_kaiduoattack','live2d_daipengattack','live2d_daipengskill','live2d_lufeiattack','live2d_lufeiskill','live2d_bulukeattack','live2d_bulukeskill','live2d_fulanqiattack','live2d_fulanqiskill','live2d_shanzhiattack','live2d_shanzhiskill','live2d_luobinattack','live2d_wusuopuattack','live2d_wusuopuskill','live2d_qiaobaattack','live2d_qiaobaskill','live2d_wuerjiattack','live2d_wuerjiskill','live2d_caomaolufeiattack','live2d_caomaolufeiskill','live2d_guangyueriheattack','live2d_guangyueriheskill','live2d_suolongattack','live2d_suolongskill','live2d_qingzhiattack','live2d_qingzhiskill','live2d_simogeattack','live2d_simogeskill','live2d_huangyuanattack','live2d_huangyuanskill','live2d_shenpingattack','live2d_shenpingskill','live2d_alongattack','live2d_alongskill','live2d_moliyaattack','live2d_moliyaskill','live2d_luoattack','live2d_luojieattack','live2d_luojieskill','live2d_xiaobing15attack','live2d_xiaobing15skill','live2d_xiaobing8attack','live2d_xiaobing8skill','live2d_damaattack','live2d_damaskill','live2d_nameiattack','live2d_guangyueyutianattack','c_jbj_0007_t9_zh','c_wsps_00016_t9_zh','c_gyps_00020_t9_zh','c_fhlh_00021_t9_zh','c_ljgz_00032_t9_zh','c_ttjz_00048_t9_zh','c_mp_00051_t9_zh','Audio_battle_vo_zbj01','Audio_battle_vo_dm01','Audio_battle_vo_ptss01','Audio_battle_vo_fhlh01','Audio_battle_vo_negw02','Audio_battle_vo_tljz01','Audio_battle_vo_mp01',.5,1.8,29.34,17.3,122.5,'c_ren_shifang','Effect_ls_01_qingluan_attack_01','Effect_ls_05_huodou_attack_01','Effect_ls_03_yinglong_attack_01','Effect_ls_04_zhulong_attack_01','Effect_ls_08_pixiu_attack_01','ls_06_baize_attack_01','Effect_ls_05_fenghuang_attack_01','Effect_ls_08_jinwu_attack_01','Effect_ls_09_jukun_attack_01','c_ren_guocheng','c_jw_0003_t9_zh','c_ls_0004_t9_zh','c_gg_0005_t9_zh','c_jmm_0006_t9_zh','c_bhxz_00013_t9_zh','c_ghn_0009_t9_zh','c_hsmw_00010_t9_zh','c_hhe_00011_t9_zh','c_sjnn_00012_t9_zh','c_dj_0008_t9_zh','c_swk_00015_t9_zh','c_ts_00017_t9_zh','c_dst_00023_t9_zh','c_rd_00019_t9_zh','c_xllh_00022_t9_zh','c_kqmw_00018_t9_zh','c_pxps_00024_t9_zh','c_ygps_00025_t9_zh','c_ft_00026_t9_zh','c_jcdp_00027_t9_zh','c_cy_00031_t9_zh','c_nz_00029_t9_zh','c_chdr_00030_t9_zh','c_wg_00037_t9_zh','c_dlsm_00033_t9_zh','c_ce_00034_t9_zh','c_zgm_00039_t9_zh','c_jtxn_00045_t9_zh','c_chh_00035_t9_zh','c_mz_00038_t9_zh','c_fx_00028_t9_zh','c_yj_00040_t9_zh','c_jzy_00043_t9_zh','c_jls_00044_t9_zh','c_ny_00036_t9_zh','c_lslz_00046_t9_zh','c_ldb_00047_t9_zh','c_ddtz_00049_t9_zh','c_lc_00050_t9_zh','c_yc_00052_t9_zh','c_zn_001_t9_zh','c_qcdn_000_t9','c_tpwn_zh','c_qtwk_0001_t9_zh','l_ls_2_zh','l_ls_3_zh','l_ls_1_zh','l_ls_4_zh','l_ls_6_zh','l_ls_7_zh','l_ls_5_zh','l_ls_8_zh','l_ls_10_zh','c_3_1_t9_zh','c_3_2_t9_zh','c_3_3_t9_zh','c_3_4_t9_zh','c_3_8_t9_zh','c_3_6_t9_zh','c_3_7_t9_zh','c_3_5_t9_zh','c_nxq_00054_t9_zh','c_jy_00055_t9_zh','c_ygl_00056_t9_zh','c_yhj_00057_t9_zh','c_dz_00058_t9_zh','c_jll_00059_t9_zh','c_jlzz_00060_t9_zh','c_axl_00061_t9_zh','c_mz_00062_t9_zh','c_mjn_00063_t9_zh','c_md_00064_t9_zh','c_jz_00065_t9_zh','c_hdxj_00066_t9_zh','c_sdxj_00067_t9_zh','c_jhsn_00068_t9_zh','c_lsx_00069_t9_zh','c_bgj_00091_t9_zh','c_gy_00092_t9_zh','c_yn_jn_001_new','Audio_battle_vo_jw01','Audio_battle_vo_bsz01','Audio_battle_vo_nmw01','Audio_battle_vo_jmm01','Audio_battle_vo_bhxz01','Audio_battle_vo_ghn01','Audio_battle_vo_hsmw01','Audio_battle_vo_bah02','Audio_battle_vo_sjll01','Audio_battle_vo_dj01','Audio_battle_vo_swk01','Audio_battle_vo_ts01','Audio_battle_vo_dst01','Audio_battle_vo_rd01','Audio_battle_vo_xllh01','Audio_battle_vo_kqmw01','Audio_battle_vo_pxps01','Audio_battle_vo_ygps01','Audio_battle_vo_ft01','Audio_battle_vo_bdmw01','Audio_battle_cy','Audio_battle_vo_nz01','Audio_battle_vo_chdr01','Audio_battle_vo_wg01','Audio_battle_vo_dlsm01','Audio_battle_vo_ce01','Audio_battle_vo_zgm01','Audio_battle_vo_hml01','Audio_battle_chh','Audio_battle_vo_mz01','Audio_battle_fx','Audio_battle_vo_yj01','Audio_battle_vo_jzy01','Audio_battle_vo_zk01','Audio_battle_vo_jc01','Audio_battle_vo_tyxj01','Audio_battle_hxz','Audio_battle_vo_ddtz01','Audio_battle_vo_lc01','Audio_battle_vo_yc01','Audio_battle_vo_zn01','Audio_battle_vo_nmw02','Audio_ls_ql_vo_01','Audio_ls_hd_vo_01','Audio_ls_yl_vo_01','Audio_ls_zl_vo_01','Audio_20005pixiu_exskill_voc_01','Audio_ls_bz_vo_01','Audio_ls_fh_vo_01','Audio_jw_vo_01','Audio_ls_jk_vo_01','Audio_battle_vo_nxq01','Audio_battle_vo_jy01','Audio_battle_lm','Audio_battle_vo_bah01','Audio_battle_vo_dz01','Audio_battle_vo_jll01','Audio_battle_vo_jlzz01','Audio_battle_vo_axl01','Audio_battle_vo_muza01','Audio_battle_vo_mjn01','Audio_battle_vo_md01','Audio_battle_vo_qxn01','Audio_battle_ycx','Audio_battle_xyk','Audio_battle_vo_jhsn01','Audio_battle_vo_lsx01','Audio_100912bgj_vo_01','Audio_10092_gyps_vo_01','Audio_battle_luoli_pt01'}, __fields = { 'Id', 'SkillType', @@ -23,6 +23,7 @@ __fields = { 'SkillDuration', 'SkillNumber', 'SkillNumbetTime', + 'AttackMove', 'DamageDelay', 'BeforeOrientation', 'Orientation', @@ -42,72 +43,74 @@ __fields = { __defaults = { nil, nil, - 23, - 24, + 19, + 20, nil, - 31, - 24, + 27, + 20, nil, - 24, - 44, + 20, + 38, nil, nil, - 23, + 19, nil, - 23, - 23, - 24, + 19, + 19, + 20, nil, - 23, - {{23}}, + {57,19}, + 19, + {{19}}, nil, - {{23}}, - 91, - 91, + {{19}}, + 83, + 83, + {40,19}, + 83, + nil, + 83, nil, nil, - nil, - 91, - nil, - nil, - {65,65}, + {57,57}, nil, nil }, __refs = { - {25,.3,-1,1,2.1,4.1,8.1,-1,0,17.61,16.1,32.1,24.32,0,3.2,.2,3.1,96.3,.11,63.15,.2,5.3,63.3,73.7,7.1,.6}, - {25,.3,-1,1,2.1,4.1,8.1,0,17.61,16.1,32.1,24.1,89.3,.2,3.1,-1,0,1,.11,63.15,.2,5.3,63.3,162.11,7.3,.6}, + {21,.3,-1,1,2.1,4.1,8.1,-1,0,17.61,16.1,32.1,24.32,0,3.2,.2,3.1,96.3,.11,63.15,.2,5.3,63.3,73.7,7.1,.6}, + {21,.3,-1,1,2.1,4.1,8.1,0,17.61,16.1,32.1,24.1,89.3,.2,3.1,-1,0,1,.11,63.15,.2,5.3,63.3,162.11,7.3,.6}, nil, - {23,3,-3,.4,3,0,-3,.5}, - {24,.4,1,-1,2.1,2.1,7.5,.9,5.3,.2,8.3,.2,20.6,6.1,4.1,17.5,.01,5.4,.6,19.31,5.1,.8,3.2,0,1,.3,9.2,3.1,0,72.2,1.2,-1,14.3,63.51,16.1,18.1,73.4,122.4,2,-2,7.3,64.4,0,77.5}, - {28,.3,-4,.2,6,-6,4,-4,0,1,-1,4,2,-2,2,-4,-2,1,5,-2,-4,1,2,.2,2,-1,0,1,-4,2,-3,4,-3,0,1.2,0}, - {25,.83}, - {58,.3,-7,.2,7,-12,5,0,11,-4,0,9.3,-7,7.2,-7,.11,-5,16,12.4,11,-11,.4,3.2,.11,7,.9,19.2,-11,.21,3.2,7,.2,8.3,0,7,0,6.3,.9,-2,2,7,53.2,-5,5,0,7,.41,-7,7,2.1,4.1,8.1,-7,.23,3.2,69.3,45.3,5.2,.4,45.5,.3,11,0,-4,.4}, - {25,.05}, - {23,.31}, - {{{1},{92,.3,-68,70,-70,73,-73,2,-2,73,-5,.2,5,-73,11.3,-5,16.3,2.1,4.1,1,-1,4.2,2,66,0,32.5,16.4,6.1,10.5,-72,72,-5,.9,-68,16.01,30.6,59.2,44.2,20.3,-2,6.3,-5,75.4,24.7,-5,.3,-67,73.2,0,-2,.41,28.3,36.3,4.1,8.7,62.21,12.1,82.01,.2,39.3,.2,3.2,131,-136,132.2,0,87.6,0,14.2,0,-5,.4}},{{2},{23,72,-72,.5,82,-82,5.2,.2,3.2,2.1,4.1,9.3,3.1,15.5,20.8,10,-82,.5,30.8,4.1,48.2,-10,-72,0,52.4,15.6,.3,72,0,-72,.61,32.21,12.1,8.1,.11,48.3,39.2,0,82,0,-82,.2},{1.4,9,1.2,6,15,1,23,1.9,19,1,5,1,3,12,1.3,5,1.41,62,4,1,3,6,1.4}}}, - {23,.3,28,21,-10,12,-25,29,-27,28,-56,0,39,19,-19,12,-23,8.2,28,25,-25,2.1,4.3,-18,20,-20,20,-13,14,23.2,33.2,-21,36,-29,12.3,35.2,-28,22.5,-27,6.2,28,-14,11,-53,.3,39,-39,.4,-28.2,-21,14.4,46.7,10.2,-14,12,-51,0,42,22,-36,25,-53,0,28,34,-23,19,-30,26.7,-14,17,-56,.3,55,-13,13,0,-55,.41,39,12,-12,2.1,4.1,8.7,-23,34.7,6.1,12.1,58.7,36.2,.2,39.3,.2,3.2,-4,-6,-6,20,65.2,0,28,19.2,19,0,88.2,0,-53,.4}, - {58,.2,7,-5,5}, - {70,4,14,-1,-36,.2,7,-12,16,-11,11,-39,0,28,9.2,-7,11,-9,-2,.9,14,0,-19,16,14.4,11,-11,3.1,2.1,.11,-28,.9,28,6.2,.21,3.2,7,-35,0,9.3,0,-28,6.4,.9,-2,2,9.2,.2,28,-5,5,6.2,.5,17,.2,25,-25,25,0,25.2,-3,7,-7,2.1,4.1,8.1,.23,3.2,83.3,7,.2,11.3,.4,54.5,.3,11,0,-39,.4}, - {47,0,4,-5,5,0}, - {76,-22,.6,11,22,-33,8,-8,-14,0,14,0,11,-11,0}, - {28,-1,.5,2,-2,-1,1,-2,0,2,.4}, - {{{1,1},{92,.4,-68,68,2.1,4.1,0,-68,0,8.7,17.7,6.1,32.9,21.21,.01,15.31,.2,5.3,.2,10.4,5.3,8.5,24.6,.3,5.4,.61,63.02,20.1,10.1,67.4,83.4,7.3,0,13.5,.4,133.2}},{{1,2},{23,.38},{6,-2.3,3,1,-2.2,3,-2.6,6,-2.9,12,-2.6,1.2,2,4,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4,2,1.4}},{{2,1},{25,.28},{6,-2.3,4,-2.2,3,-2.6,6,-2.9,12,-2.6,1.2,2,4,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4,2,1.4}},{{2,2},{40,0,20,0,21,-41,20,-5,.4,-11,-4,11,-11,0,8.2,.3,-4,-11,.2,15,.4,-6,19,0,-17,4,-4,4,.3,-15,15,-11,24,.7,-13,.51,13,.5,-28,.2,25,16,0,-32,22.2},{6,-2.3,4,-2.2,3,-2.6,6,-2.9,12,-2.6,1.2,2,4,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4,2,1.4}},{{3,1},{26,.77},{6,-2.3,6,2,3,-2.6,6,-2.9,12,-2.8,4,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4,5,1}},{{3,2},{46,0,15,0,-15,15,-1,.4,-11,-3,31,-31,0,8.2,.3,10,-24,.2,14,.4,10,0,7,-17,-2,2,.3,-14,14,-11,21,.7,-10,.51,10,.5,20.2,21,3,0},{6,-2.3,6,2,3,-2.6,6,-2.9,12,-2.8,4,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4,5,1}},{{4,1},{27,.77},{6,-2.3,6,2,3,-2.6,6,-2.9,12,-2.8,4,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4,5,1}},{{4,2},{49,0,13,0,-13,13,1,.4,-11,-3,31,-31,0,8.2,.3,8,-22,.2,14,.4,9,0,8,-17,-1,1,.3,-14,14,-11,20,.7,-9,.51,9,.5,-23,.2,19,4,0},{6,-2.3,6,2,3,-2.6,6,-2.9,12,-2.8,4,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4,5,1}},{{5,1},{28,.47},{6,-2.3,6,2,3,-2.6,6,-2.9,12,-2.6,-4.2,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4}},{{5,2},{51,0,12,0,-12,12,2,.4,-7,-7,30,-11,0,-7,2,.3,7,-21,0,19,-5,.4,9,7,-16,.5,-14,14,-7,16,.7,-9,.51,9,.5,-23,19,0,-1},{6,-2.3,6,2,3,-2.6,6,-2.9,12,-2.6,-4.2,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4}},{{6,1},{29,.47},{6,-2.3,6,2,3,-2.6,6,-2.9,12,-2.6,-4.2,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4}},{{6,2},{54,0,10,0,-10,10,5,.4,-8,-7,28,-11,0,-7,5,.3,4,-19,0,17,-2,.4,7,6,-13,-3,3,.3,-15,15,-8,15,.7,-7,.51,7,.5,-22,17,0,-1},{6,-2.3,6,2,3,-2.6,6,-2.9,12,-2.6,-4.2,2,-4.2,-2.4,5,2,18,-2.42,4,2,1.2,-2.3,1,4}},{{7,1},{30,.85},{6,-2.3,6,2,3,-2.6,6,-2.7,4,12,-2.6,8,2,-4.2,-2.4,5,2,34,-2.51,14,2,1,4}},{{7,2},{58,0,12,0,-12,12,2,.4,-8,-6,27,-13,0,-2,2,.3,-14,0,14,.5,13,-13,11,-11,9.2,14,-8,8,.51,5.2,0,-1},{6,-2.3,6,2,3,-2.6,6,-2.7,4,12,-2.6,8,2,-4.2,-2.4,5,2,34,-2.51,14,2,1,4}},{{8,1},{31,.15},{6,12,5,-2.6,6,-2.2,4,-2.3,4,14,-2.5,8,2,-4.2,-2.4,5,2,34,-2.51,14,2,1}},{{8,2},{60,0,15,.4,-8,-7,26,-13,0,2,.3,-15,13,2,.4,11,-11,9,-9,9.2,15,-8,8,.51,14.2,0},{6,12,5,-2.6,6,-2.2,4,-2.3,4,14,-2.5,8,2,-4.2,-2.4,5,2,34,-2.51,14,2,1}},{{9,1},{32,.15},{6,12,5,-2.6,6,-2.2,4,-2.3,4,14,-2.5,8,2,-4.2,-2.4,5,2,34,-2.51,14,2,1}},{{9,2},{62,0,16,.4,-8,-8,25,-13,0,4,.3,-16,12,4,.4,9,-9,7,-7,9.2,16,-8,8,.51,14.2,0},{6,12,5,-2.6,6,-2.2,4,-2.3,4,14,-2.5,8,2,-4.2,-2.4,5,2,34,-2.51,14,2,1}}}, + {19,3,-3,.4,3,0,-3,.5}, + {20,.4,2,-2,1,-1,2.1,.4,5.4,.9,5.3,.2,8.3,.2,13.4,4.1,8.1,17.5,.01,5.4,.6,19.31,5.1,.8,3.2,0,1,.3,9.2,3.1,0,72.2,1.2,-1,14.3,63.51,16.1,18.1,73.4,122.4,141.3,7.2,64.4,0,77.5}, + {24,.3,-4,.2,6,-6,4,-4,0,1,-1,4,2,-2,2,-4,-2,1,5,-2,-4,1,2,.2,2,-1,0,1,-4,2,-3,4,-3,0,1.2,0}, + {21,.24}, + {49,.3,-5,0,-10,36,-36,8,2,9,-4,0,-15,10,-4,9,-5,8.2,-5,.11,-4,30,-21,0,-9,17,-13,9,-19,6,-6,19.2,0,4.2,.01,5,.01,4,-13,6,-2,.01,17.2,0,15,0,-5,9,-11,15,-8,6.3,-9,18,-18,.7,-4,20,-11,64.2,-4,4,-4,9,.4,13,-13,.8,-5,5,2.1,4.1,8.1,-5,.23,3.2,.2,8.3,.2,11.3,.4,5,50.3,81.2,5.3,0,-4,.4}, + {21,.94}, + {19,.31}, + {{{1},{84,.3,-64,66,-66,68,-68,1,-1,68,-4,.2,4,-68,11.3,-4,16.3,2.1,4.1,1,-1,66,-65,1,62,0,4,-2,32.3,16.4,6.3,120,-186,0,10.3,0,2,-67,117,-54,.9,-64,118,-118,42.8,30.6,59.2,0,-64,74.3,63,6.2,187,-187,.2,23.9,-4,.3,-63,72.2,0,-2,.4,-64,64,.8,30.3,38.3,4.1,8.7,64.21,12.1,84.01,.2,39.3,.2,42.3,64,150.2,0,-2,95.4,68,0,3.1,-4,.4}},{{2},{19,.161},{1.4,9,1.2,6,15,1,23,1.9,19,1,5,1,15,1.3,5,1.4,2,1.8,62,4,1,9,1.4}}}, + {19,.3,45,0,-7,9,-9,13,-13,14,-52,0,49,5,-16,9,-13,18,-52,34,15,-15,2.1,4.3,-11,21.2,23.5,34,11,-11,26,-26,17,-17,2.1,18,-18,20.2,11,-15,8.2,28.2,18,-14,11,-49,.3,34,-34,.4,51,1,-18,15.4,49.6,10.3,-6,4,-47,0,38,22,-26,15,-49,0,34,24,-24,20,-20,26.8,84.2,.3,51,76.2,0,-51,.4,54,-54,.8,34,86.4,4.1,8.1,37.8,8.1,16.1,34.2,.2,39.3,.2,3.2,-4,-7,-2,17,68.2,0,159.3,20,0,-20,3.2,-54,.4}, + {49,.2,8,-6}, + {19,0,26,0,4,0,-7,31,-31,13,-6,8,-38,0,23,7,-5,9,-4,8,-13,5,.11,-5,29,-54,0,25,18,-13,8,-15,2,-2,15,-13,0,-2,7,.01,-30,.9,34,4,-13,7,-2,.01,18.2,0,-23,0,30,8,-11,16,-43,6.3,-8,17,-17,.7,-5,20,-15,-30,.2,30,-5,5,-5,-25,.4,47,-47,.8,30,4,-4,2.1,4.1,8.1,.23,3.2,.2,8.3,.2,11.3,.4,-30,51.3,-13,9,0,-4,8,0,-38,.4}, + {41,0,3,-4,4,0}, + {68,-22,.6,11,22,-33,0,-12,0,12,0,11,-11,0}, + {24,-1,.4,2,-2,-4,4,-2,0,-2,4,.4}, + {{{1,1},{84,.4,-64,64,2.1,4.1,0,-64,0,8.7,17.6,.2,7.5,.2,31.8,8.1,6.1,.9,45.7,44.11,42.5,47.51,.3,5.4,.5,47.4,70.12,22.1,6.1,74.4,131.6,107.3,13.4,.4,64,.4}},{{1,2},{19,.88},{6,-2.3,3,1,-2.2,3,-2.3,1.2,-2.2,4,-2.01,11,1,-2.6,1.2,2,4,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1.4}},{{2,1},{21,.88},{6,-2.3,3,1,-2.2,3,-2.3,1.2,-2.2,4,-2.01,11,1,-2.6,1.2,2,4,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1.4}},{{2,2},{34,-3,15,-15,0,3,0,17,-4,.3,-16,20,-13,-4,0,10,-10,0,8,5,-13,13,0,-3,-10,12,-12,15,-2,.4,-5,18,0,-16,-10,10,0,3,.3,-13,17,-13,6,16,.7,-13,.51,13,.5,-26,.2,23,-11,0,-4,24.2},{6,-2.3,3,1,-2.2,3,-2.3,1.2,-2.2,4,-2.01,11,1,-2.6,1.2,2,4,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1.4}},{{3,1},{22,.58},{6,-2.3,3,1,-2.2,3,-2.3,1.2,-2.2,4,-2.01,12,-2.8,4,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1,2.1}},{{3,2},{40,-6,15,-15,0,6,0,12,-1,.3,-17,19,-11,-2,0,29,-29,11.3,-11,11,0,11,-22,3.2,.5,7.2,7,-29,9,2,.4,-11,13,-11,9,11,.7,-11,.51,17.2,-22,.2,19,-6,0,9,0},{6,-2.3,3,1,-2.2,3,-2.3,1.2,-2.2,4,-2.01,12,-2.8,4,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1,2.1}},{{4,1},{23,.58},{6,-2.3,3,1,-2.2,3,-2.3,1.2,-2.2,4,-2.01,12,-2.8,4,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1,2.1}},{{4,2},{42,-4,13,-13,0,4,0,11,1,.3,-16,17,-10,-3,0,30,-30,11.3,-12,12,0,9,-21,8.3,.4,10,0,8,-30,11,4,-3,.3,-12,13,-10,12,7,.7,-10,.51,10,.5,-22,.2,18,-5,0,9,0},{6,-2.3,3,1,-2.2,3,-2.3,1.2,-2.2,4,-2.01,12,-2.8,4,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1,2.1}},{{5,1},{24,.28},{6,-2.3,3,1,-2.2,3,-2.3,1.2,-2.2,4,-2.01,12,-2.6,-4.2,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1}},{{5,2},{44,-4,13,-13,0,4,0,10,3,.3,-17,17,-8,-5,0,29,-11,0,-8,3,-13,13,0,7,-20,0,11,2,.4,9,7,-29,13,2,-2,.3,16.2,-8,10,7,.7,-9,.51,9,.5,-22,18,0,-1,-4,0},{6,-2.3,3,1,-2.2,3,-2.3,1.2,-2.2,4,-2.01,12,-2.6,-4.2,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1}},{{6,1},{25,.08},{6,-2.3,4,-2.2,3,-2.6,4,-2.01,12,-2.6,-4.2,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1}},{{6,2},{46,-5,14,-14,5,0,9,6,.3,-1,-8,-6,0,28,-11,0,-8,6,-15,15,0,4,-19,0,11,4,.4,7,6,-28,12,2,1,.3,-15,14,-8,-8.2,.7,-7,.51,7,.5,-22,17,0,-1,-2,0},{6,-2.3,4,-2.2,3,-2.6,4,-2.01,12,-2.6,-4.2,2,4,-2.6,5,2,7,11,-2.42,4,2,1.2,-2.3,1,4,2,1}},{{7,1},{26,.46},{6,-2.3,4,-2.2,3,-2.6,4,-2.8,4,12,-2.6,8,2,4,-2.6,5,2,7,27,-2.51,14,2,1,4,3.2}},{{7,2},{49,-7,15,-15,7,0,13,2,.3,-2,-7,-6,0,28,-13,0,-8,8,-15,15,0,-15,0,11,4,.4,13,-28,26,-14,3,.3,-15,13,-7,6,3,.51,20.3,-1,-1,0},{6,-2.3,4,-2.2,3,-2.6,4,-2.8,4,12,-2.6,8,2,4,-2.6,5,2,7,27,-2.51,14,2,1,4,3.2}},{{8,1},{27,.06},{6,-2.3,4,2,5,-2.6,4,6.2,2.1,14,-2.5,8,2,4,-2.6,5,2,7,27,-2.51,14,2,1,6,1}},{{8,2},{51,-8,17,-17,8,0,16,.3,-3,-5,-8,0,27,-13,0,2,-16,16,0,-16,11,5,.4,11,-27,25,-14,5,.3,-16,13,-5,3,5,.51,-16,14,0,-1,0},{6,-2.3,4,2,5,-2.6,4,6.2,2.1,14,-2.5,8,2,4,-2.6,5,2,7,27,-2.51,14,2,1,6,1}},{{9,1},{28,.06},{6,-2.3,4,2,5,-2.6,4,6.2,2.1,14,-2.5,8,2,4,-2.6,5,2,7,27,-2.51,14,2,1,6,1}},{{9,2},{53,-9,18,-18,9,0,17,.3,-4,-4,-9,0,26,-13,0,4,-17,17,0,-17,11,6,.4,9,-26,24,-14,7,.3,-17,13,-4,1,7,.51,6.2,.3},{6,-2.3,4,2,5,-2.6,4,6.2,2.1,14,-2.5,8,2,4,-2.6,5,2,7,27,-2.51,14,2,1,6,1}}}, nil, - {{{1,1},{24,.31,1,-1,.3}},{{2,1},{23,.81}},{{2,2},{45,.7,-22,22,.2,-22,.2,22,.3}},{{2,3},{23,.7,22,-22,.2,22,.2,-22,.3}}}, - {{{1,1},{24,-1,.2,1,0,-1,1,.3,7.3,6.2,.7,3.2,2.1,4.3,.3,3.2,.4,3.2,18.4,17.7,4.3,0,19.3,18.3,.2,14.6,.6,4.3,-2,4.2,2,-1,7.2,18.3,3.1,24.6,1.2,-2,.3,2,3.2,1,.4,63.4,2.1,0,65.31,67.4,95.9,3.1,51.7,19.6,43.3,111.4,19.3,104.3,86.3,96.4,.2}},{{2,1},{23,.83,22,-22,.66},{2,1.2,3,5,1.2,2,9,-2.3,1.3,2,1.4,11.2,-2.6,3,1.4,8,-2.2,11,2,3,-4.3,-2.2,3,16.2,1.3,6,1.4,-2.2,1,-2.7,3,26.3,2.1,4,-2.5,1,30.2,2,4,31.2,3,1.6,2}},{{2,2},{23,0,22,-22,.99,3.2,.2},{2,1.2,3,5,1.2,2,9,-2.3,1.3,2,1.4,11.2,-2.6,3,1.4,8,-2.2,11,2,3,-4.3,-2.2,3,16.2,1.3,6,1.4,-2.2,1,-2.7,3,26.3,2.1,4,-2.5,1,30.2,2,4,31.2,3,1.6,2}},{{2,3},{45,0,-22,22,.53,3.2,.26,3.2,.2},{2,1.2,3,5,1.2,2,9,-2.3,1.3,2,1.4,11.2,-2.6,3,1.4,8,-2.2,11,2,3,-4.3,-2.2,3,16.2,1.3,6,1.4,-2.2,1,-2.7,3,26.3,2.1,4,-2.5,1,30.2,2,4,31.2,3,1.6,2}}}, - {{{1,1},{24,0,1,.11,-1,1,-1,.01,1,.3,-1,.5}},{{2,1},{23,0,22,0,-22,22,.8,3.2,-22,.01,22,.3,-22,.5}},{{2,2},{23,.52,22,-22,.9}},{{2,3},{45,0,-22,0,22,-22,.8,3.2,22,.9,-22,.4,22,.5}}}, - {{{1},{23,.8,5,-5,.81,12,5,-3,-15,1,.4,-4,.2,-10,14,0,206,-206,.9,18,-18,0,14}},{{2},{37,.3,3,-3,.3,-24,24,7,0,-35,35,.6,-27,27,5.2,-4,-34,40,-27,4,26,-5,-8,4,11,-32,-18,10,25,-24,28,-17,-12,26,-29,29,23.2,-28,35,0,-1,1,0,-34,-5,32,41.2}}}, - {{{1},{23,.5,22,-22,.8,17,-22,5,0,-1,1,.3,3.2,.01,-14,14,11,-11,.11,207,-194,-13,.01}},{{2},{39,-33,33,-33,.2,39,-39,59,-59,.5,40,-42,32,23,-8,-9,16,-18,-33,42,2,-12,-27,0,-5,47,.2,-8,0,-34,34,-32,64,-21,-18,.7,-33,.3,225,-185,-6,-1,.5,-33,40,13,0}}}, - {{{1},{23,.4,-4,-4,23,-15,.21,-7,7,0,25,-8,-17,.6,-4,4,.05},{1,2,4,1,-4.2,9,8,1,4,-2.9,3,1,5,4,-2.2,4,7,2,1,3,-2.3,1.2,-2.6,-6.2,11,1.51,5,4,2,1.2,2,10,-2.4,1.11,3,1.2,3}},{{2},{56,-44,86,-42,-35,25,-23,17,-1,.01,-27,-3,25,6,9,-16,17,-16,64,-42,-22,.2,2,10,-12,.5,3,25,170,-134,-42,42,2.1,4.1,8.7,-37,20,0,-16,16,0,-5,.3,35.2,42,.2,15.3,.2,3.2,-17,-20,0,15},{1,2,4,1,-4.2,9,8,1,4,-2.9,3,1,5,4,-2.2,4,7,2,1,3,-2.3,1.2,-2.6,-6.2,11,1.51,5,4,2,1.2,2,10,-2.4,1.11,3,1.2,3}}}, - {91,64,-64,0,10,-10,.2,10,132,-142,143,-143,144,-134,135,-135,-10,10,136,-138,2,137,-137,138,-148,0,10,139,-139,-10,0,150,-141,-9,.2,9,142,28.4,-144,-9,9,2.1,4.1,145,-145,146,-146,147,-148,-8,0,157,-157,64,-56,150,-150,151,-151,152,-152,-8,8,2.1,4.1,2.1,153,-153,154,-162,.6,163,-163,164,-164,165,-165,166,-166,.4,167,-167,65,-65,168,-168,0,169,-169,66,0,-66,170,1.3,-106,0,107,1.11,-185,.51,10,176,-176,177,-187,188,-178,179,-180,181,-181,182,-182,183,-183,184,-185,186,-186,187,-187,59.3,0,196,-196,197,-197,198,-198,199,-199,.11,10,190,-191,59,0,-68,.2,59.2,.01}, - {91,.3,69,1.5,-52,-7,-10,-3,73,-64,65,1,-54,1,177,-176,1,-14,1,3,1,10,1.2,-11,60,1.3,-76,-3,80,1.4,-56,57,1.9,-65,1,65,1.3,-95,-3,3,2.1,4.1,-3,20,-7,86,1,-83,1,13,1.5,65,1,-65,-18,-16,16.3,103,1.3,-103,-3,107,1.2,-71,1.4,-32,1,32,1,-23,1,-9,-4,.2,7,94,32.2,-28,.4,38,-40,.8,47,1,-43,-3,4.2,-45,-3,17,1,-15,-3,14,1,-12,4.3,-5,1,12,1.3,86,1,-84,1,17,1,-3,20.2,1.3,-17,8.3,3,1,-30,1,30,1.3,-41,-3,3,.2,95.7,114,1.2,-67,0,-46,-3,27,-11,101,7.2,-13,-18,0,-21,.4}, - {293,-82,83,-82,-68,151,1,-151,67,-64,0,149,-152,66,-67,154,-154,155,-155,156,-155,3,153,-88,0,89,1.2,-159,160}, - {91,.3,69,1.5,-52,-7,-10,-3,73,-64,65,1,-54,1,-24,25,1,-14,1,3,1,10,1.2,-11,60,1.3,-76,-3,80,1.4,-56,57,1.9,-65,1,65,1.3,-95,-3,3,2.1,4.1,-3,20,-7,86,1,-83,1,13,1.5,65,1,-65,-18,-16,16.3,103,1.3,-103,-3,107,1.2,-71,1.4,-32,1,32,1,-23,1,-9,-4,.2,7,94,32.2,-28,.4,38,-40,.8,47,1,-43,-3,4.2,-45,-3,17,1,-15,-3,14,1,-12,4.3,-5,1,12,1.3,86,1,-84,1,17,1,-3,20.2,1.3,-17,8.3,3,1,-30,1,30,1.3,-41,-3,3,.2,95.7,114,1.2,-67,0,-46,-3,27,-11,101,7.2,-13,-18,0,-21,.4}, - {{{1},{19,.04,-16,16,46,-46,.03,1,-1,.44},{7,1,5,1,3,1,12,6,1.3,3,1.3,15,1.9,3,1,9,15.3,17.4,11,1.3,2,1.31,5,1.51,33,1.11,3,1.4,9,1.4}},{{2},{23,.021},{7,1,5,1,3,1,12,6,1.3,3,1.3,15,1.9,3,1,9,15.3,17.4,11,1.3,2,1.31,5,1.51,33,1.11,3,1.4,9,1.4}}}, - {{{1},{87,.11,2,-2,.2,3.2,.21,3}},{{2},{87,.11,2,-2,.2,3.2,.21,3}}}, - {91,.4,55,-55,215,-215,216,-216,217,-217,218,-218,123,-123,219,-219,220,-220,0,221,-221,222,-222,223,-223,224,-224,58,-58,225,-225,124,-124,226,-226,227,-227,228,-228,125,-125,126,-126,229,-229,230,-230,231,-231,232,-232,233,-233,234,-234,235,-235,236,-236,237,-237,238,-238,127,-127,239,-239,240,-240,241,-241,242,-242,243,-243,244,-244,245,-245,246,-246,59,-59,60,-60,247,-247,248,-248,249,-249,250,-250,251,-251,128,-128,252,-252,253,-253,129,-129,254,-254,255,1,-256,123,134,-199,-58,258,-133,2,-127,0,60,0,68,131,1.8,-267,268,-268,269,-269,270,-270,271,-271,272,-272,273,-273,274,-274,275,-275,276,-276,277,-277,278,-278,279,-279,280,-280,281,-281,282,-282,283,-283,284,-284,285,-285,286,-286,287,-287,288,-288,289,-289,290,-290,291,-291,.21,292,-292,293,-293,0,294,-294,78.2,55,0,-55,59,0,-4,3,66,-124,126}, - {91,.4,56,-56,295,-295,296,-296,297,-297,298,-298,130,-130,299,-299,300,-300,0,301,-301,302,-302,303,-303,304,-304,61,-61,305,-305,131,-131,306,-306,307,-307,308,-308,132,-132,133,-133,309,-309,310,-310,311,-311,312,-312,313,-313,314,-314,315,-315,316,-316,317,-317,318,-318,134,-134,319,-319,320,-320,321,-321,322,-322,323,-323,324,-324,325,-325,326,-326,62,-62,63,-63,327,-327,328,-328,329,-329,330,-330,331,-331,135,-135,332,-332,333,-333,136,-136,334,-334,335,1,-336,96.2,83.2,0,132,2,-134,0,63,0,72,202,1.8,-345,.61,346,-346,347,-347,348,-348,349,-349,350,-350,351,-351,352,-352,353,-353,354,-354,355,-355,356,-356,357,-357,358,-358,359,-359,360,-360,361,-361,.21,362,-362,363,-363,0,364,-364,63.2,56,0,-56,62,0,-6,5,70,-131,133} + nil, + {{{1,1},{20,.31,1,-1,.3}},{{2,1},{19,.81}},{{2,2},{39,.7,-20,20,.2,-20,.2,20,.3}},{{2,3},{19,.7,20,-20,.2,20,.2,-20,.3}}}, + {{{1,1},{19,.3,1,0,-1,1,.3,-1,.2,1,6.2,.7,3.2,2.1,4.3,.3,3.2,.4,3.2,18.4,17.7,4.3,0,19.3,18.3,.2,14.6,.6,4.3,-2,4.2,2,-1,7.2,18.3,3.1,24.6,1.2,-2,.3,2,3.2,1,.4,63.4,2.1,0,65.31,67.4,95.9,3.1,51.7,19.6,43.3,111.4,19.3,104.3,86.3,96.4,.2}},{{2,1},{19,.73,20,-20,.66},{5,1,2,1.3,4,2,1.7,-2.3,5,6,4,-2.6,1,6,1.6,-2.3,1.9,-2.2,1,2,1.2,2.1,2.1,-2.3,1,-5.2,1.4,6,2,3,-2.7,1,-2.3,-5.2,13.2,-2.5,3,4,20.3,1,6,1,8,7.2}},{{2,2},{19,20,-20,.99,3.2,.2},{5,1,2,1.3,4,2,1.7,-2.3,5,6,4,-2.6,1,6,1.6,-2.3,1.9,-2.2,1,2,1.2,2.1,2.1,-2.3,1,-5.2,1.4,6,2,3,-2.7,1,-2.3,-5.2,13.2,-2.5,3,4,20.3,1,6,1,8,7.2}},{{2,3},{39,-20,20,.53,3.2,.26,3.2,.2},{5,1,2,1.3,4,2,1.7,-2.3,5,6,4,-2.6,1,6,1.6,-2.3,1.9,-2.2,1,2,1.2,2.1,2.1,-2.3,1,-5.2,1.4,6,2,3,-2.7,1,-2.3,-5.2,13.2,-2.5,3,4,20.3,1,6,1,8,7.2}}}, + {{{1,1},{20,1,.11,-1,1,-1,.01,1,.3,-1,.5}},{{2,1},{19,20,0,-20,20,.8,3.2,-20,.01,20,.3,-20,.5}},{{2,2},{19,.42,20,-20,.9}},{{2,3},{39,-20,0,20,-20,.8,3.2,20,.9,-20,.4,20,.5}}}, + {{{1},{19,.8,5,-5,.81,11,4,-2,-14,1,.4,-3,.2,-8,11,0,189,-189,.9,16,-16,0,13}},{{2},{32,.3,2,-2,.3,-20,20,6,0,-30,30,.6,-24,24,5.2,-4,-29,35,-24,3,23,-4,-7,3,10,-28,-15,9,21,-20,23,-15,-9,22,-25,25,23.2,-24,30,0,-1,1,0,-29,-5,28,41.2}}}, + {{{1},{19,.4,20,-20,.8,15,-19,4,0,-1,1,.3,3.2,.01,-11,11,10,-10,.11,190,-178,-12,.01}},{{2},{5,28,-28,.2,34,-34,52,-52,.5,35,-37,28,19,-6,-8,13,-15,-28,36,2,-11,-22,0,29,6,.2,-6,0,-29,29,-27,57,-22,-15,.7,-28,.3,205,-170,-6,-1,.5,-28,35,10,0}}}, + nil, + {211,1.9}, + {85,.3,54,1.5,-45,-9,-3,-2,60,-56,57,1,-47,1,120,-119,1,-12,1.3,10,1.2,-11,53,1.3,-64,-2,67,1.4,-49,50,1.9,-58,1,58,1.3,-83,-2,2,2.1,4.1,-2,14,-9,81,1,-76,1,13,1.5,58,1,-58,-18,-11,16.3,90,1.3,-91,-2,94,1.2,-64,1.4,-30,1,30,1,-23,1,-11,-1,.2,6,87,32.2,-22,.4,32,-34,.8,41,1,-38,-2,4.2,-40,-2,11,1,-10,-2,8,1,-7,4.3,90,1,-83,1.3,81,1,-79,1,17,1,-3,1,-15,1.3,-17,8.3,3,1,-28,1,28,1.3,-36,-2,2,.2,95.7,103,1.2,-62,0,-41,-2,21,-11,96,7.2,-13,-18,0,-15,.4}, + nil, + {85,.3,54,1.5,-45,-9,-3,-2,60,-56,57,1,-47,1,-18,19,1,-12,1.3,10,1.2,-11,53,1.3,-64,-2,67,1.4,-49,50,1.9,-58,1,58,1.3,-83,-2,2,2.1,4.1,-2,14,-9,81,1,-76,1,13,1.5,58,1,-58,-18,-11,16.3,90,1.3,-91,-2,94,1.2,-64,1.4,-30,1,30,1,-23,1,-11,-1,.2,6,87,32.2,-22,.4,32,-34,.8,41,1,-38,-2,4.2,-40,-2,11,1,-10,-2,8,1,-7,4.3,90,1,-83,1.3,81,1,-79,1,17,1,-3,1,-15,1.3,-17,8.3,3,1,-28,1,28,1.3,-36,-2,2,.2,95.7,103,1.2,-62,0,-41,-2,21,-11,96,7.2,-13,-18,0,-15,.4}, + {{{1},{16,.3,3,62,-1,-61,-3,.01,63,-63,0,63,-22,22,-63,.21,64,-64,63,0,-63,.31,3,38,-41,0,3,-3,.8,65,-2,-60,-2,-1,.53,41,12.3,.5},{7,1.2,-2.2,1.5,12,6,1.2,4,1.3,15,1.01,2,1,9,1,5,1,5,1,3,12,1.3,2,1.7,2,1.4,5,1.51,33,1.11,3,1.4,9,1.4}},{{2},{19,.811},{7,1.2,-2.2,1.5,12,6,1.2,4,1.3,15,1.01,2,1,9,1,5,1,5,1,3,12,1.3,2,1.7,2,1.4,5,1.51,33,1.11,3,1.4,9,1.4}}}, + {{{1},{79,1,-1,0,3.2,.5,3.2,.4,1,0,1,-2,7.2,.3,3.2,-45,45,.6,3,-3,.3}},{{2},{79,1,-1,0,3.2,.5,3.2,.4,1,0,1,-2,7.2,.3,3.2,-45,45,.6,3,-3,.3}}}, + {83,.4,47,-47,139,-139,140,-140,141,-141,142,-142,109,-109,143,-143,144,-144,0,145,-145,146,-146,147,-147,148,-148,49,-49,149,-149,110,-110,150,-150,151,-151,152,-152,111,-111,112,-112,153,-153,154,-154,155,-155,156,-156,157,-157,158,-158,159,-159,160,-160,161,-161,162,-162,113,-113,163,-163,164,-164,165,-165,166,-166,167,-167,168,-168,169,-169,170,-170,50,-50,51,-51,171,-171,172,-172,173,-173,174,-174,175,-175,114,-114,176,-176,177,-177,115,-115,178,-178,179,1,-180,109,72,-132,-49,182,-71,2,-113,0,51,0,63,69,1.8,-191,192,-192,193,-193,194,-194,195,-195,196,-196,197,-197,198,-198,199,-199,200,-200,201,-201,202,-202,203,-203,204,-204,205,-205,206,-206,207,-207,208,-208,209,-209,210,-210,211,-211,212,-212,213,-213,214,-214,215,-215,.21,216,-216,217,-217,0,218,-218,78.2,47,0,-47,50,0,-3,2,61,-110,112}, + {83,.4,48,-48,219,-219,220,-220,221,-221,222,-222,116,-116,223,-223,224,-224,0,225,-225,226,-226,227,-227,228,-228,52,-52,229,-229,117,-117,230,-230,231,-231,232,-232,118,-118,119,-119,233,-233,234,-234,235,-235,236,-236,237,-237,238,-238,239,-239,240,-240,241,-241,242,-242,120,-120,243,-243,244,-244,245,-245,246,-246,247,-247,248,-248,249,-249,250,-250,53,-53,54,-54,251,-251,252,-252,253,-253,254,-254,255,-255,121,-121,256,-256,257,-257,122,-122,258,-258,259,1,-260,96.2,83.2,0,118,2,-120,0,54,0,67,140,1.8,-269,.61,270,-270,271,-271,272,-272,273,-273,274,-274,275,-275,276,-276,277,-277,278,-278,279,-279,280,-280,281,-281,282,-282,283,-283,284,-284,285,-285,.21,286,-286,287,-287,0,288,-288,63.2,48,0,-48,53,0,-5,4,65,-117,119} }, __refPoss = { nil, @@ -116,31 +119,32 @@ __refPoss = { {13,3,5,15,24,2,26,24,1,-2.3,1,2,76}, nil, {1.4,6,3,1,7,15,1,8,15,1.3,3,1.3,19,1,5,1,15,8,6,1.8,66,1,9,1.4}, - {1,3,2,4,6,2,5,2,6,1.2,-2.2,12,6,2,3,9,-4.3,22,2,7,1.2,2,5,1.2,6,2,63,4,1,10.3}, + {1,3,-2.3,6,2,5,2,6,1.2,-2.2,12,6,2,3,9,-4.3,18,4,2,7,1.2,2,5,1.2,6,2,63,4,1,4,1,2,12.2}, nil, - {1.4,2,7,1,7,15,1,2,21,1.3,2,1.4,19,1,5,1,15,1.3,5,1.41,62,4,1,9,1.4}, + {1.4,2,7,1,7,15,1,2,21,1.3,2,1.4,19,1,5,1,15,1.3,5,19.2,1.8,62,4,1,9,1.4}, {1.4,17,103,1.8}, nil, nil, - {21,45,2,16,26,95}, + {21,45,2,16,26}, nil, {3,1,6,11,24,65}, - {1,36,1,4,1.3,14,2,8,26,4,18,2,1,76,1,2,12,1}, - {1,36,1,4,1.3,16,34,4,18,2,1,76,1,2,12,1}, + {1,36,1,4,1.3,14,2,8,26,22,2,1,76,1,2,12,1}, + {1,36,5,1.3,16,34,4,18,2,1,3,73,1,2,12,1}, + nil, nil, nil, {5,4,2,4,-2.2,3,2,1.2,-2.2,51,16,25,27,2,4,38}, nil, - {1,7,13,37,2,4,-2.8,1.2,5,6,41,-2.7,12,5,-2.3,11,4,2,1.2,2}, + {8,13,37,2,4,-2.8,1.2,5,6,41,-2.7,12,5,-2.3,11,4,2,1.2,2}, {5,4,2,4,1.2,2,3,2,1.2,8,7.2,-2.6,1.4,13,12,2,6,2,6,8,2,3,8,3,1.7,21,1.2,-2.2,25.2,2.1,1,2,27,18.2}, - {1,4,3,1,2,4,1.4,3,-2.4,1.2,11,-2.2,6,-8.3,-4.2,2,12,10,5,4,1.6,2,4,1,3,-2.7,1,-2.3,3,14.3,4,2,1.2,2,1,16,3.2}, + {5,3,1,2,4,1.4,3,-2.4,1.2,11,-2.2,6,-8.3,-4.2,2,12,10,5,4,1.6,2,4,1,3,-2.7,1,-2.3,3,14.3,4,2,1.2,2,1,16,3.2}, + nil, + {21,103,1.8}, nil, nil, nil, - {1.4,17,13,1.3,19,1,3,2,1.7,19,6,1,24,1,7,3,2,66,1}, nil, - nil, - {1.4,2,6,-2.4,1,-2.6,1.2,-2.2,20,51,10.2,8,1.8,-2.2,14,-2.3,34,4}, + {1.4,2,4,-2.5,1,-2.6,1.2,-2.2,18,2,12,22,16,1.5,2,7,1.9,-2.2,14,-2.3,34,4,9,1,2,1}, nil, nil }, diff --git a/luafight/Modules/Battle/Config/Data/HardStageCondition.lua b/luafight/Modules/Battle/Config/Data/HardStageCondition.lua index 46a1d7f45..e8a6894a3 100644 --- a/luafight/Modules/Battle/Config/Data/HardStageCondition.lua +++ b/luafight/Modules/Battle/Config/Data/HardStageCondition.lua @@ -2,7 +2,7 @@ local HardStageCondition = { __count = 510, __indexs = {100,101,1.8,92,1.4,206,1.4,6,2.1,4.3,56,1.5,95,1.3,97,2.1,1.83,61,101,1.3,12897,1.71,983,1.11,989,1.81,982,1.53,112965,1.91,981,2.1,1.91,4981,1.91,44862985,1.3,-2.6,10,20,30,20,-50.6,-100.232}, __values = {0,1.02,49980,-10000.3,-20000.6,100000,200000,300000,200000,9,1,2,1.2,2,1.6,3,4.2,2.1,1.61,2,1.3,499946,-500000.5,-1000000.232}, -__exVals = {510,'通过关卡','2回合内通过关卡','3回合内通过关卡','4回合内通过关卡','5回合内通过关卡','6回合内通过关卡','7回合内通过关卡','8回合内通过关卡','9回合内通过关卡','10回合内通过关卡','最多上阵1个神将通过关卡','最多上阵2个神将通过关卡','最多上阵3个神将通过关卡','最多上阵4个神将通过关卡','最多上阵5个神将通过关卡','至少上阵人系神将1个','至少上阵人系神将2个','至少上阵人系神将3个','至少上阵人系神将4个','至少上阵人系神将5个','至少上阵佛系神将1个','至少上阵佛系神将2个','至少上阵佛系神将3个','至少上阵佛系神将4个','至少上阵佛系神将5个','至少上阵妖系神将1个','至少上阵妖系神将2个','至少上阵妖系神将3个','至少上阵妖系神将4个','至少上阵妖系神将5个','至少上阵道系神将1个','至少上阵道系神将2个','至少上阵道系神将3个','至少上阵道系神将4个','至少上阵道系神将5个','至少存活1个人','至少存活2个人','至少存活3个人','至少存活4个人','至少存活5个人','至少存活6个人','不上阵输出神将通过关卡','不上阵辅助神将通过关卡','不上阵肉盾神将通过关卡','不上阵控制神将通过关卡','不上阵人系神将通过关卡','不上阵佛系神将通过关卡','不上阵妖系神将通过关卡','不上阵道系神将通过关卡','佩戴传说分伤魂印通过关卡','佩戴高级免控魂印通过关卡','佩戴破盾魂印通过关卡','佩戴沉默魂印通过关卡','佩戴反伤魂印通过关卡','佩戴击杀回怒魂印通过关卡','佩戴伤害转疗魂印通过关卡','佩戴治疗魂印通过关卡','佩戴中级加怒魂印通过关卡','佩戴中级攻击魂印通过关卡','佩戴护盾使者魂印通过关卡','佩戴中级生命魂印通过关卡','佩戴眩晕魂印通过关卡','佩戴麻痹魂印通过关卡','佩戴免伤治疗魂印通过关卡','佩戴灼烧魂印通过关卡','佩戴中级毒疗魂印通过关卡','佩戴中级免控魂印通过关卡','佩戴高效施毒魂印通过关卡','佩戴中级减怒魂印通过关卡','佩戴施毒伤害魂印通过关卡','佩戴禁疗魂印通过关卡','佩戴毒效延长魂印通过关卡','佩戴追击魂印通过关卡','佩戴高级减怒魂印通过关卡','佩戴必暴魂印通过关卡','佩戴高级分伤魂印通过关卡','佩戴高级灼烧魂印通过关卡','佩戴禁无敌盾魂印通过关卡','佩戴弱点打击魂印通过关卡','佩戴高级吸血魂印通过关卡','佩戴灼烧延长魂印通过关卡','佩戴暴怒增伤魂印通过关卡','佩戴高级治疗魂印通过关卡','佩戴抵抗分伤魂印通过关卡','佩戴传说吸怒魂印通过关卡','佩戴灭火解毒魂印通过关卡','佩戴传说增怒魂印通过关卡','佩戴生命守护魂印通过关卡','不使用灵兽通过关卡','全部上阵输出职业神将通过关卡','全部上阵辅助职业神将通过关卡','全部上阵肉盾职业神将通过关卡','全部上阵控制职业神将通过关卡','持续伤害击杀1个人','持续伤害击杀2个人','持续伤害击杀3个人','持续伤害击杀4个人','持续伤害击杀5个人','持续伤害击杀6个人','灼烧击杀1个人','灼烧击杀2个人','灼烧击杀3个人','灼烧击杀4个人','灼烧击杀5个人','灼烧击杀6个人','中毒击杀1个人','中毒击杀2个人','中毒击杀3个人','中毒击杀4个人','中毒击杀5个人','中毒击杀6个人','追击击杀1个敌人','追击击杀2个敌人','追击击杀3个敌人','追击击杀4个敌人','追击击杀5个敌人','追击击杀6个敌人','追击击杀1号位敌人','追击击杀2号位敌人','追击击杀3号位敌人','追击击杀4号位敌人','追击击杀5号位敌人','追击击杀6号位敌人','回复血量2次','回复血量3次','回复血量4次','回复血量5次','回复血量6次','回复血量7次','回复血量8次','回复血量9次','回复血量10次','回复血量11次','回复血量12次','回复血量13次','回复血量14次','回复血量15次','回复血量16次','回复血量17次','回复血量18次','回复血量19次','回复血量20次','第1个击杀敌方1号位','第1个击杀敌方2号位','第1个击杀敌方3号位','第1个击杀敌方4号位','第1个击杀敌方5号位','第1个击杀敌方6号位','第2个击杀敌方1号位','第2个击杀敌方2号位','第2个击杀敌方3号位','第2个击杀敌方4号位','第2个击杀敌方5号位','第2个击杀敌方6号位','第3个击杀敌方1号位','第3个击杀敌方2号位','第3个击杀敌方3号位','第3个击杀敌方4号位','第3个击杀敌方5号位','第3个击杀敌方6号位','第4个击杀敌方1号位','第4个击杀敌方2号位','第4个击杀敌方3号位','第4个击杀敌方4号位','第4个击杀敌方5号位','第4个击杀敌方6号位','第5个击杀敌方1号位','第5个击杀敌方2号位','第5个击杀敌方3号位','第5个击杀敌方4号位','第5个击杀敌方5号位','第5个击杀敌方6号位','最后击杀敌方1号位','最后击杀敌方2号位','最后击杀敌方3号位','最后击杀敌方4号位','最后击杀敌方5号位','最后击杀敌方6号位','控制目标1次','控制目标2次','控制目标3次','控制目标4次','控制目标5次','控制目标6次','控制目标7次','控制目标8次','控制目标9次','控制目标10次','控制目标11次','控制目标12次','控制目标13次','控制目标14次','控制目标15次','控制目标16次','控制目标17次','控制目标18次','控制目标19次','控制目标20次','眩晕目标1次','眩晕目标2次','眩晕目标3次','眩晕目标4次','眩晕目标5次','眩晕目标6次','眩晕目标7次','眩晕目标8次','眩晕目标9次','眩晕目标10次','眩晕目标11次','眩晕目标12次','眩晕目标13次','眩晕目标14次','眩晕目标15次','眩晕目标16次','眩晕目标17次','眩晕目标18次','眩晕目标19次','眩晕目标20次','沉默目标1次','沉默目标2次','沉默目标3次','沉默目标4次','沉默目标5次','沉默目标6次','沉默目标7次','沉默目标8次','沉默目标9次','沉默目标10次','沉默目标11次','沉默目标12次','沉默目标13次','沉默目标14次','沉默目标15次','沉默目标16次','沉默目标17次','沉默目标18次','沉默目标19次','沉默目标20次','麻痹目标1次','麻痹目标2次','麻痹目标3次','麻痹目标4次','麻痹目标5次','麻痹目标6次','麻痹目标7次','麻痹目标8次','麻痹目标9次','麻痹目标10次','麻痹目标11次','麻痹目标12次','麻痹目标13次','麻痹目标14次','麻痹目标15次','麻痹目标16次','麻痹目标17次','麻痹目标18次','麻痹目标19次','麻痹目标20次','5回合内造成5万伤害','5回合内造成6万伤害','5回合内造成7万伤害','5回合内造成8万伤害','5回合内造成10万伤害','5回合内造成12万伤害','5回合内造成14万伤害','5回合内造成16万伤害','5回合内造成18万伤害','5回合内造成20万伤害','5回合内造成30万伤害','5回合内造成50万伤害','5回合内造成80万伤害','5回合内造成100万伤害','5回合内造成150万伤害','5回合内造成200万伤害','5回合内造成250万伤害','5回合内造成300万伤害','5回合内造成350万伤害','5回合内造成400万伤害','5回合内造成500万伤害','5回合内造成600万伤害','5回合内造成700万伤害','5回合内造成800万伤害','5回合内造成900万伤害','5回合内造成1000万伤害','5回合内造成1100万伤害','5回合内造成1200万伤害','5回合内造成1300万伤害','5回合内造成1400万伤害','5回合内造成1500万伤害','5回合内造成1600万伤害','5回合内造成1700万伤害','5回合内造成1800万伤害','5回合内造成1900万伤害','5回合内造成2000万伤害','5回合内造成2100万伤害','5回合内造成2200万伤害','5回合内造成2300万伤害','5回合内造成2400万伤害','5回合内造成2500万伤害','5回合内造成2600万伤害','5回合内造成2700万伤害','5回合内造成2800万伤害','5回合内造成2900万伤害','5回合内造成3000万伤害','5回合内造成3100万伤害','5回合内造成3200万伤害','5回合内造成3300万伤害','5回合内造成3400万伤害','5回合内造成3500万伤害','5回合内造成3600万伤害','5回合内造成3700万伤害','5回合内造成3800万伤害','5回合内造成3900万伤害','5回合内造成4000万伤害','5回合内造成4100万伤害','5回合内造成4200万伤害','5回合内造成4300万伤害','5回合内造成4400万伤害','5回合内造成4500万伤害','5回合内造成4600万伤害','5回合内造成4700万伤害','5回合内造成4800万伤害','5回合内造成4900万伤害','5回合内造成5000万伤害','5回合内造成5100万伤害','5回合内造成5200万伤害','5回合内造成5300万伤害','5回合内造成5400万伤害','5回合内造成5500万伤害','5回合内造成5600万伤害','5回合内造成5700万伤害','5回合内造成5800万伤害','5回合内造成5900万伤害','5回合内造成6000万伤害','5回合内造成6100万伤害','5回合内造成6200万伤害','5回合内造成6300万伤害','5回合内造成6400万伤害','5回合内造成6500万伤害','5回合内造成6600万伤害','5回合内造成6700万伤害','5回合内造成6800万伤害','5回合内造成6900万伤害','5回合内造成7000万伤害','5回合内造成7100万伤害','5回合内造成7200万伤害','5回合内造成7300万伤害','5回合内造成7400万伤害','5回合内造成7500万伤害','5回合内造成7600万伤害','5回合内造成7700万伤害','5回合内造成7800万伤害','5回合内造成7900万伤害','5回合内造成8000万伤害','5回合内造成8100万伤害','5回合内造成8200万伤害','5回合内造成8300万伤害','5回合内造成8400万伤害','5回合内造成8500万伤害','5回合内造成8600万伤害','5回合内造成8700万伤害','5回合内造成8800万伤害','5回合内造成8900万伤害','5回合内造成9000万伤害','5回合内造成9100万伤害','5回合内造成9200万伤害','5回合内造成9300万伤害','5回合内造成9400万伤害','5回合内造成9500万伤害','5回合内造成9600万伤害','5回合内造成9700万伤害','5回合内造成9800万伤害','5回合内造成9900万伤害','5回合内造成10000万伤害','5回合内造成10100万伤害','5回合内造成10200万伤害','5回合内造成10300万伤害','5回合内造成10400万伤害','5回合内造成10500万伤害','5回合内造成10600万伤害','5回合内造成10700万伤害','5回合内造成10800万伤害','5回合内造成10900万伤害','5回合内造成11000万伤害','5回合内造成11100万伤害','5回合内造成11200万伤害','5回合内造成11300万伤害','5回合内造成11400万伤害','5回合内造成11500万伤害','5回合内造成11600万伤害','5回合内造成11700万伤害','5回合内造成11800万伤害','5回合内造成11900万伤害','5回合内造成12000万伤害','5回合内造成12100万伤害','5回合内造成12200万伤害','5回合内造成12300万伤害','5回合内造成12400万伤害','5回合内造成12500万伤害','5回合内造成12600万伤害','5回合内造成12700万伤害','5回合内造成12800万伤害','5回合内造成12900万伤害','5回合内造成13000万伤害','5回合内造成13100万伤害','5回合内造成13200万伤害','5回合内造成13300万伤害','5回合内造成13400万伤害','5回合内造成13500万伤害','5回合内造成13600万伤害','5回合内造成13700万伤害','5回合内造成13800万伤害','5回合内造成13900万伤害','5回合内造成14000万伤害','5回合内造成14100万伤害','5回合内造成14200万伤害','5回合内造成14300万伤害','5回合内造成14400万伤害','5回合内造成14500万伤害','5回合内造成14600万伤害','5回合内造成14700万伤害','5回合内造成14800万伤害','5回合内造成14900万伤害','5回合内造成15000万伤害','5回合内造成15100万伤害','5回合内造成15200万伤害','5回合内造成15300万伤害','5回合内造成15400万伤害','5回合内造成15500万伤害','5回合内造成15600万伤害','5回合内造成15700万伤害','5回合内造成15800万伤害','5回合内造成15900万伤害','5回合内造成16000万伤害','5回合内造成16100万伤害','5回合内造成16200万伤害','5回合内造成16300万伤害','5回合内造成16400万伤害','5回合内造成16500万伤害','5回合内造成16600万伤害','5回合内造成16700万伤害','5回合内造成16800万伤害','5回合内造成16900万伤害','5回合内造成17000万伤害','5回合内造成17100万伤害','5回合内造成17200万伤害','5回合内造成17300万伤害','5回合内造成17400万伤害','5回合内造成17500万伤害','5回合内造成17600万伤害','5回合内造成17700万伤害','5回合内造成17800万伤害','5回合内造成17900万伤害','5回合内造成18000万伤害','5回合内造成18100万伤害','5回合内造成18200万伤害','5回合内造成18300万伤害','5回合内造成18400万伤害','5回合内造成18500万伤害','5回合内造成18600万伤害','5回合内造成18700万伤害','5回合内造成18800万伤害','5回合内造成18900万伤害','5回合内造成19000万伤害','5回合内造成19100万伤害','5回合内造成19200万伤害','5回合内造成19300万伤害','5回合内造成19400万伤害','5回合内造成19500万伤害','5回合内造成19600万伤害','5回合内造成19700万伤害','5回合内造成19800万伤害','5回合内造成19900万伤害','5回合内造成20000万伤害','5回合内造成20100万伤害','5回合内造成20200万伤害','5回合内造成20300万伤害','5回合内造成20400万伤害','5回合内造成20500万伤害','5回合内造成20600万伤害','5回合内造成20700万伤害','5回合内造成20800万伤害','5回合内造成20900万伤害','5回合内造成21000万伤害','5回合内造成21100万伤害','5回合内造成21200万伤害','5回合内造成21300万伤害','5回合内造成21400万伤害','5回合内造成21500万伤害','5回合内造成21600万伤害','5回合内造成21700万伤害','5回合内造成21800万伤害','5回合内造成21900万伤害','5回合内造成22000万伤害','5回合内造成22100万伤害','5回合内造成22200万伤害','5回合内造成22300万伤害','5回合内造成22400万伤害','5回合内造成22500万伤害','5回合内造成22600万伤害','5回合内造成22700万伤害','5回合内造成22800万伤害','5回合内造成22900万伤害','5回合内造成23000万伤害','5回合内造成23100万伤害','5回合内造成23200万伤害','5回合内造成23300万伤害','5回合内造成23400万伤害','5回合内造成23500万伤害','5回合内造成23600万伤害'}, +__exVals = {510,'通过关卡','2回合内通过关卡','3回合内通过关卡','4回合内通过关卡','5回合内通过关卡','6回合内通过关卡','7回合内通过关卡','8回合内通过关卡','9回合内通过关卡','10回合内通过关卡','最多上阵1个英雄通过关卡','最多上阵2个英雄通过关卡','最多上阵3个英雄通过关卡','最多上阵4个英雄通过关卡','最多上阵5个英雄通过关卡','至少上阵海军英雄1个','至少上阵海军英雄2个','至少上阵海军英雄3个','至少上阵海军英雄4个','至少上阵海军英雄5个','至少上阵海贼英雄1个','至少上阵海贼英雄2个','至少上阵海贼英雄3个','至少上阵海贼英雄4个','至少上阵海贼英雄5个','至少上阵四皇英雄1个','至少上阵四皇英雄2个','至少上阵四皇英雄3个','至少上阵四皇英雄4个','至少上阵四皇英雄5个','至少上阵七武海英雄1个','至少上阵七武海英雄2个','至少上阵七武海英雄3个','至少上阵七武海英雄4个','至少上阵七武海英雄5个','至少存活1个英雄','至少存活2个英雄','至少存活3个英雄','至少存活4个英雄','至少存活5个英雄','至少存活6个英雄','不上阵输出英雄通过关卡','不上阵辅助英雄通过关卡','不上阵肉盾英雄通过关卡','不上阵控制英雄通过关卡','不上阵海军英雄通过关卡','不上阵海贼英雄通过关卡','不上阵四皇英雄通过关卡','不上阵七武海英雄通过关卡','佩戴传说分伤霸气通过关卡','佩戴高级免控霸气通过关卡','佩戴破盾霸气通过关卡','佩戴沉默霸气通过关卡','佩戴反伤霸气通过关卡','佩戴击杀回怒霸气通过关卡','佩戴伤害转疗霸气通过关卡','佩戴治疗霸气通过关卡','佩戴中级加怒霸气通过关卡','佩戴中级攻击霸气通过关卡','佩戴护盾使者霸气通过关卡','佩戴中级生命霸气通过关卡','佩戴眩晕霸气通过关卡','佩戴麻痹霸气通过关卡','佩戴免伤治疗霸气通过关卡','佩戴灼烧霸气通过关卡','佩戴中级毒疗霸气通过关卡','佩戴中级免控霸气通过关卡','佩戴高效施毒霸气通过关卡','佩戴中级减怒霸气通过关卡','佩戴施毒伤害霸气通过关卡','佩戴禁疗霸气通过关卡','佩戴毒效延长霸气通过关卡','佩戴追击霸气通过关卡','佩戴高级减怒霸气通过关卡','佩戴必暴霸气通过关卡','佩戴高级分伤霸气通过关卡','佩戴高级灼烧霸气通过关卡','佩戴禁无敌盾霸气通过关卡','佩戴弱点打击霸气通过关卡','佩戴高级吸血霸气通过关卡','佩戴灼烧延长霸气通过关卡','佩戴暴怒增伤霸气通过关卡','佩戴高级治疗霸气通过关卡','佩戴抵抗分伤霸气通过关卡','佩戴传说吸怒霸气通过关卡','佩戴灭火解毒霸气通过关卡','佩戴传说增怒霸气通过关卡','佩戴生命守护霸气通过关卡','不使用灵兽通过关卡','全部上阵输出职业英雄通过关卡','全部上阵辅助职业英雄通过关卡','全部上阵肉盾职业英雄通过关卡','全部上阵控制职业英雄通过关卡','持续伤害击杀1个人','持续伤害击杀2个人','持续伤害击杀3个人','持续伤害击杀4个人','持续伤害击杀5个人','持续伤害击杀6个人','灼烧击杀1个人','灼烧击杀2个人','灼烧击杀3个人','灼烧击杀4个人','灼烧击杀5个人','灼烧击杀6个人','中毒击杀1个人','中毒击杀2个人','中毒击杀3个人','中毒击杀4个人','中毒击杀5个人','中毒击杀6个人','追击击杀1个敌人','追击击杀2个敌人','追击击杀3个敌人','追击击杀4个敌人','追击击杀5个敌人','追击击杀6个敌人','追击击杀1号位敌人','追击击杀2号位敌人','追击击杀3号位敌人','追击击杀4号位敌人','追击击杀5号位敌人','追击击杀6号位敌人','回复血量2次','回复血量3次','回复血量4次','回复血量5次','回复血量6次','回复血量7次','回复血量8次','回复血量9次','回复血量10次','回复血量11次','回复血量12次','回复血量13次','回复血量14次','回复血量15次','回复血量16次','回复血量17次','回复血量18次','回复血量19次','回复血量20次','第1个击杀敌方1号位','第1个击杀敌方2号位','第1个击杀敌方3号位','第1个击杀敌方4号位','第1个击杀敌方5号位','第1个击杀敌方6号位','第2个击杀敌方1号位','第2个击杀敌方2号位','第2个击杀敌方3号位','第2个击杀敌方4号位','第2个击杀敌方5号位','第2个击杀敌方6号位','第3个击杀敌方1号位','第3个击杀敌方2号位','第3个击杀敌方3号位','第3个击杀敌方4号位','第3个击杀敌方5号位','第3个击杀敌方6号位','第4个击杀敌方1号位','第4个击杀敌方2号位','第4个击杀敌方3号位','第4个击杀敌方4号位','第4个击杀敌方5号位','第4个击杀敌方6号位','第5个击杀敌方1号位','第5个击杀敌方2号位','第5个击杀敌方3号位','第5个击杀敌方4号位','第5个击杀敌方5号位','第5个击杀敌方6号位','最后击杀敌方1号位','最后击杀敌方2号位','最后击杀敌方3号位','最后击杀敌方4号位','最后击杀敌方5号位','最后击杀敌方6号位','控制目标1次','控制目标2次','控制目标3次','控制目标4次','控制目标5次','控制目标6次','控制目标7次','控制目标8次','控制目标9次','控制目标10次','控制目标11次','控制目标12次','控制目标13次','控制目标14次','控制目标15次','控制目标16次','控制目标17次','控制目标18次','控制目标19次','控制目标20次','眩晕目标1次','眩晕目标2次','眩晕目标3次','眩晕目标4次','眩晕目标5次','眩晕目标6次','眩晕目标7次','眩晕目标8次','眩晕目标9次','眩晕目标10次','眩晕目标11次','眩晕目标12次','眩晕目标13次','眩晕目标14次','眩晕目标15次','眩晕目标16次','眩晕目标17次','眩晕目标18次','眩晕目标19次','眩晕目标20次','沉默目标1次','沉默目标2次','沉默目标3次','沉默目标4次','沉默目标5次','沉默目标6次','沉默目标7次','沉默目标8次','沉默目标9次','沉默目标10次','沉默目标11次','沉默目标12次','沉默目标13次','沉默目标14次','沉默目标15次','沉默目标16次','沉默目标17次','沉默目标18次','沉默目标19次','沉默目标20次','麻痹目标1次','麻痹目标2次','麻痹目标3次','麻痹目标4次','麻痹目标5次','麻痹目标6次','麻痹目标7次','麻痹目标8次','麻痹目标9次','麻痹目标10次','麻痹目标11次','麻痹目标12次','麻痹目标13次','麻痹目标14次','麻痹目标15次','麻痹目标16次','麻痹目标17次','麻痹目标18次','麻痹目标19次','麻痹目标20次','5回合内造成5万伤害','5回合内造成6万伤害','5回合内造成7万伤害','5回合内造成8万伤害','5回合内造成10万伤害','5回合内造成12万伤害','5回合内造成14万伤害','5回合内造成16万伤害','5回合内造成18万伤害','5回合内造成20万伤害','5回合内造成30万伤害','5回合内造成50万伤害','5回合内造成80万伤害','5回合内造成100万伤害','5回合内造成150万伤害','5回合内造成200万伤害','5回合内造成250万伤害','5回合内造成300万伤害','5回合内造成350万伤害','5回合内造成400万伤害','5回合内造成500万伤害','5回合内造成600万伤害','5回合内造成700万伤害','5回合内造成800万伤害','5回合内造成900万伤害','5回合内造成1000万伤害','5回合内造成1100万伤害','5回合内造成1200万伤害','5回合内造成1300万伤害','5回合内造成1400万伤害','5回合内造成1500万伤害','5回合内造成1600万伤害','5回合内造成1700万伤害','5回合内造成1800万伤害','5回合内造成1900万伤害','5回合内造成2000万伤害','5回合内造成2100万伤害','5回合内造成2200万伤害','5回合内造成2300万伤害','5回合内造成2400万伤害','5回合内造成2500万伤害','5回合内造成2600万伤害','5回合内造成2700万伤害','5回合内造成2800万伤害','5回合内造成2900万伤害','5回合内造成3000万伤害','5回合内造成3100万伤害','5回合内造成3200万伤害','5回合内造成3300万伤害','5回合内造成3400万伤害','5回合内造成3500万伤害','5回合内造成3600万伤害','5回合内造成3700万伤害','5回合内造成3800万伤害','5回合内造成3900万伤害','5回合内造成4000万伤害','5回合内造成4100万伤害','5回合内造成4200万伤害','5回合内造成4300万伤害','5回合内造成4400万伤害','5回合内造成4500万伤害','5回合内造成4600万伤害','5回合内造成4700万伤害','5回合内造成4800万伤害','5回合内造成4900万伤害','5回合内造成5000万伤害','5回合内造成5100万伤害','5回合内造成5200万伤害','5回合内造成5300万伤害','5回合内造成5400万伤害','5回合内造成5500万伤害','5回合内造成5600万伤害','5回合内造成5700万伤害','5回合内造成5800万伤害','5回合内造成5900万伤害','5回合内造成6000万伤害','5回合内造成6100万伤害','5回合内造成6200万伤害','5回合内造成6300万伤害','5回合内造成6400万伤害','5回合内造成6500万伤害','5回合内造成6600万伤害','5回合内造成6700万伤害','5回合内造成6800万伤害','5回合内造成6900万伤害','5回合内造成7000万伤害','5回合内造成7100万伤害','5回合内造成7200万伤害','5回合内造成7300万伤害','5回合内造成7400万伤害','5回合内造成7500万伤害','5回合内造成7600万伤害','5回合内造成7700万伤害','5回合内造成7800万伤害','5回合内造成7900万伤害','5回合内造成8000万伤害','5回合内造成8100万伤害','5回合内造成8200万伤害','5回合内造成8300万伤害','5回合内造成8400万伤害','5回合内造成8500万伤害','5回合内造成8600万伤害','5回合内造成8700万伤害','5回合内造成8800万伤害','5回合内造成8900万伤害','5回合内造成9000万伤害','5回合内造成9100万伤害','5回合内造成9200万伤害','5回合内造成9300万伤害','5回合内造成9400万伤害','5回合内造成9500万伤害','5回合内造成9600万伤害','5回合内造成9700万伤害','5回合内造成9800万伤害','5回合内造成9900万伤害','5回合内造成10000万伤害','5回合内造成10100万伤害','5回合内造成10200万伤害','5回合内造成10300万伤害','5回合内造成10400万伤害','5回合内造成10500万伤害','5回合内造成10600万伤害','5回合内造成10700万伤害','5回合内造成10800万伤害','5回合内造成10900万伤害','5回合内造成11000万伤害','5回合内造成11100万伤害','5回合内造成11200万伤害','5回合内造成11300万伤害','5回合内造成11400万伤害','5回合内造成11500万伤害','5回合内造成11600万伤害','5回合内造成11700万伤害','5回合内造成11800万伤害','5回合内造成11900万伤害','5回合内造成12000万伤害','5回合内造成12100万伤害','5回合内造成12200万伤害','5回合内造成12300万伤害','5回合内造成12400万伤害','5回合内造成12500万伤害','5回合内造成12600万伤害','5回合内造成12700万伤害','5回合内造成12800万伤害','5回合内造成12900万伤害','5回合内造成13000万伤害','5回合内造成13100万伤害','5回合内造成13200万伤害','5回合内造成13300万伤害','5回合内造成13400万伤害','5回合内造成13500万伤害','5回合内造成13600万伤害','5回合内造成13700万伤害','5回合内造成13800万伤害','5回合内造成13900万伤害','5回合内造成14000万伤害','5回合内造成14100万伤害','5回合内造成14200万伤害','5回合内造成14300万伤害','5回合内造成14400万伤害','5回合内造成14500万伤害','5回合内造成14600万伤害','5回合内造成14700万伤害','5回合内造成14800万伤害','5回合内造成14900万伤害','5回合内造成15000万伤害','5回合内造成15100万伤害','5回合内造成15200万伤害','5回合内造成15300万伤害','5回合内造成15400万伤害','5回合内造成15500万伤害','5回合内造成15600万伤害','5回合内造成15700万伤害','5回合内造成15800万伤害','5回合内造成15900万伤害','5回合内造成16000万伤害','5回合内造成16100万伤害','5回合内造成16200万伤害','5回合内造成16300万伤害','5回合内造成16400万伤害','5回合内造成16500万伤害','5回合内造成16600万伤害','5回合内造成16700万伤害','5回合内造成16800万伤害','5回合内造成16900万伤害','5回合内造成17000万伤害','5回合内造成17100万伤害','5回合内造成17200万伤害','5回合内造成17300万伤害','5回合内造成17400万伤害','5回合内造成17500万伤害','5回合内造成17600万伤害','5回合内造成17700万伤害','5回合内造成17800万伤害','5回合内造成17900万伤害','5回合内造成18000万伤害','5回合内造成18100万伤害','5回合内造成18200万伤害','5回合内造成18300万伤害','5回合内造成18400万伤害','5回合内造成18500万伤害','5回合内造成18600万伤害','5回合内造成18700万伤害','5回合内造成18800万伤害','5回合内造成18900万伤害','5回合内造成19000万伤害','5回合内造成19100万伤害','5回合内造成19200万伤害','5回合内造成19300万伤害','5回合内造成19400万伤害','5回合内造成19500万伤害','5回合内造成19600万伤害','5回合内造成19700万伤害','5回合内造成19800万伤害','5回合内造成19900万伤害','5回合内造成20000万伤害','5回合内造成20100万伤害','5回合内造成20200万伤害','5回合内造成20300万伤害','5回合内造成20400万伤害','5回合内造成20500万伤害','5回合内造成20600万伤害','5回合内造成20700万伤害','5回合内造成20800万伤害','5回合内造成20900万伤害','5回合内造成21000万伤害','5回合内造成21100万伤害','5回合内造成21200万伤害','5回合内造成21300万伤害','5回合内造成21400万伤害','5回合内造成21500万伤害','5回合内造成21600万伤害','5回合内造成21700万伤害','5回合内造成21800万伤害','5回合内造成21900万伤害','5回合内造成22000万伤害','5回合内造成22100万伤害','5回合内造成22200万伤害','5回合内造成22300万伤害','5回合内造成22400万伤害','5回合内造成22500万伤害','5回合内造成22600万伤害','5回合内造成22700万伤害','5回合内造成22800万伤害','5回合内造成22900万伤害','5回合内造成23000万伤害','5回合内造成23100万伤害','5回合内造成23200万伤害','5回合内造成23300万伤害','5回合内造成23400万伤害','5回合内造成23500万伤害','5回合内造成23600万伤害'}, __fields = { 'Id', 'ConditionType', diff --git a/luafight/Modules/Battle/Config/Data/PassiveSkillLogicConfig.lua b/luafight/Modules/Battle/Config/Data/PassiveSkillLogicConfig.lua index e3f8cbff7..73023f852 100644 --- a/luafight/Modules/Battle/Config/Data/PassiveSkillLogicConfig.lua +++ b/luafight/Modules/Battle/Config/Data/PassiveSkillLogicConfig.lua @@ -2,7 +2,7 @@ local PassiveSkillLogicConfig = { __count = 4632, __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,70205,1,19489,1100,1.01,90,1.41,886,4.1,8.1,4.3,885,1.11,16.11,1.9,91,4.1,8.1,44.41,1.11,89,60.71,4.3,1.51,885,52.81,20.2,56.61,60.61,104.82,164.91,52.91,1.31,887,24.7,186,112.3,85,8.3,86,1.31,6,1,5580,34700,9.3,5786,1.5,5,1.5,9985,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,83.2,1.11,1789,800,1.5,195,52.2,900,16.2,5500,200,83.2,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,1.4,76,1.7,3,110,1.4,396,57.2,1.4,296,6.3,8.4,2.1,4.1,196,2.1,61.2,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.4,13.5,5.1,-10.01,9900,20.6,7.1,1,18898,1.05,5,1,30945,12.7,9,1.3,7,10,1,9869,52.8,8.1,8.3,1,9,10,1,9,1.2,9898,60.8,28.9,8890,127.9,8.1,4.1,5,30.7,90,14.4,1.2,8,2.1,1.4,6,2.1,1.42,4.3,8.4,4.3,16,1.4,9475,34.7,49899,147.3,10,117.3,9870,179.4,96.2,185.6,-10.01,87.2,312.2,2.1,4.1,4.3,506,127.5,45.2,115.8,9,9890,132.41,147.4,53.2,49899,194.11,8861,358.2,1.5,904,169.51,24.4,9870,109.3,46.6,284.7,1.2,8,35.8,19.3,6.5,29890,43.4,4.1,1,19968,94.01,-10.4,1.6,44,2840,44.3,258.3,-10.9,820,-10.01,8.2,-10.7,2820,-10.6,77.2,84.5,1,9,-10.5,1,9,402820,195.4,34.2,881,57949,1.22,99979,1.55,199945,1.61,9984,1.2,9,1,2,9986,1.5,79995,131.3,2.1,4.1,8.1,6.1,98904,-10.99,9010,2.1,-10.99,479000,1.71,10993,107.2,338.4,9940,-10.4,20,9940,10.3,20,31,10,90,2.1,353.3,88,8.3,5.2,89.3,89,4.3,389,21.1,42.14,6298,89.4,97.4,3.1,103.7,49940,19.5,-10.6,21.01,-10.4,134.3,26.4,7.1,38.7,33.2,2.1,217.3,39.11,9.7,49940,75.01,47.6,67.5,19,32.11,1,19,478931,1.42,999976,1.871,822,1.961,2,1.7,4.2,5,3,1,4998602,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,968.5,907785,1.9,999992,1.91,9981,1.7,989992,1.03,534.2,99957,1.4,899996,1.7,27000117,200,-400.2,-200.2,300,-100.2,300,59908686,-10.5,11,1,8,10,4.2,9,1.3,9896,-10.8,174.4,199989900,201.6}, __values = {-1,1.33,2,1.32,3,2,1.3,2.1,2.1,3,12,1,7.3,1.51,-2.2,1.7,-2.2,1.01,2,1.7,2,1.71,2,1,2,1.31,2,1.02,2,1.9,32.2,2,1.8,4,1.83,8.5,1.81,-2.2,32.2,8.2,1.4,2,1.11,5,34.2,1.21,4,1.21,3,14.2,40.2,3,2,1,3,1.22,20,11,1.4,5,-10.2,60,50,70,80,100,60,40,1.52,6,1,9,1,9,4.1,4.3,18,31,13.11,9,1,8,1.2,9,1,49,12.11,10.7,41,13.11,6.1,28,21,1,78,25,175,-200.2,-300.2,-200.2,50,250,300,200,1.4,96,1,3,8,2,29,1,10,249,97,1,3,496,1.7,18,8,2,34.3,55,2,1,2,6,21.5,98,3,2,494,500,3100,400,1.8,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,9694,20000,-10000.2,40000,911,97.6,1.2,8,4.1,1.2,232,902,3000,993,14011,11996,8000,3000,1000,55893,321,199679,600027,17,40,8,11019,940,9050,10,9960,19999,30031,49969,1,40,19960,30000,10030,9970,10000,30,50009,39990,99971,40,9959,1,29,50.3,9999,9960,40,9960,10041,69999,11478891,1.7,33,1.2,99958,1.2,899998,1.4,85999995,911071,1,10038}, -__exVals = {359,.05,.1,.5,.2,.08,.12,.3,.15,.4,.06,.25,.04,.02,.16,.6,.03,.8,.35,.015,nil,.95,.01,.14,.24,.36,.7,.18,.10,.005,.32,1.04,.45,.72,.20,1.09,.09,.9,.07,.11,.30,.48,.55,.17,1.15,.64,.96,.75,1.2,2.62,1.9,3.85,1.6,.025,.13,.61,1.18,1.75,2.5,.33,.19,.78,4.02,.59,.65,.66,.85,1.98,1.12,.23,.26,3.2,3.6,.46,.34,.58,.54,.56,.059,.068,.077,.086,.095,.155,.164,.182,.186,.071,.0905,.1115,.1325,.1535,2.73,.42,.21,.29,.50,.40,1.5,2.8,4.8,2.1,2.4,2.7,4.5,2.9,4.3,5.4,1.1,3.5,.38,1.25,2.6,.505,.51,.515,.52,.525,.53,.535,.545,.555,.565,.57,.575,.585,.595,.605,.615,.62,.625,.63,.635,.645,.655,.665,.67,.675,.68,.685,.69,.695,.705,.71,.715,.725,.73,.735,.74,.745,.755,.76,.765,.77,.775,.785,.79,.795,.805,.81,.815,.82,.825,.83,.835,.84,.845,.855,.86,.865,.87,.875,.88,.885,.89,.895,.905,.91,.915,.92,.925,.93,.935,.94,.945,.955,.965,.97,.975,.98,.985,.99,.055,.064,.073,.082,.091,.105,.109,.114,.118,.123,.127,.132,.136,.141,.145,.159,.168,.173,.177,.191,.195,.205,.209,.214,.218,.223,.227,.232,.236,.241,.245,.255,.259,.264,.268,.273,.277,.282,.286,.291,.295,.305,.309,.314,.318,.323,.327,.332,.336,.341,.345,.355,.359,.364,.368,.373,.377,.382,.386,.391,.395,.405,.409,.414,.418,.423,.427,.432,.436,.441,.445,.455,.459,.464,.468,.473,.477,.482,.486,.491,.495,.0515,.053,.0545,.056,.0575,.0605,.062,.0635,.065,.0665,.0695,.0725,.074,.0755,.0785,.0815,.083,.0845,.0875,.089,.092,.0935,.0965,.098,.0995,.101,.1025,.104,.1055,.107,.1085,.113,.1145,.116,.1175,.119,.1205,.122,.1235,.125,.1265,.128,.1295,.131,.134,.1355,.137,.1385,.1415,.143,.1445,.146,.1475,.149,.1505,.152,.1565,.158,.1595,.161,.1625,.1655,.167,.1685,.172,.174,.176,.178,.184,.188,.192,.194,.196,1.22,3.82,2.15,2.09,1.37,1.32,2.12,.002,.28,.004,.008,.006,.075,1.85}, +__exVals = {359,.05,.1,.5,.2,.08,.12,.3,.15,.4,.06,.25,.04,.02,.16,.6,.03,.8,.35,.015,nil,.95,.01,.14,.24,.36,.7,.18,.10,.005,.32,1.04,.45,.09,.72,.07,.20,1.09,.9,.11,.30,.48,.55,.17,1.15,.64,.96,.75,1.2,2.62,1.9,3.85,1.6,.025,.13,.61,1.18,1.75,2.5,.33,.19,.78,4.02,.59,.65,.66,.85,1.98,1.12,.23,.26,3.2,3.6,.46,.34,.58,.54,.56,.059,.068,.077,.086,.095,.155,.164,.182,.186,.071,.0905,.1115,.1325,.1535,2.73,.42,.21,.29,.50,.40,1.5,2.8,4.8,2.1,2.4,2.7,4.5,2.9,4.3,5.4,1.1,3.5,.38,1.25,2.6,.505,.51,.515,.52,.525,.53,.535,.545,.555,.565,.57,.575,.585,.595,.605,.615,.62,.625,.63,.635,.645,.655,.665,.67,.675,.68,.685,.69,.695,.705,.71,.715,.725,.73,.735,.74,.745,.755,.76,.765,.77,.775,.785,.79,.795,.805,.81,.815,.82,.825,.83,.835,.84,.845,.855,.86,.865,.87,.875,.88,.885,.89,.895,.905,.91,.915,.92,.925,.93,.935,.94,.945,.955,.965,.97,.975,.98,.985,.99,.055,.064,.073,.082,.091,.105,.109,.114,.118,.123,.127,.132,.136,.141,.145,.159,.168,.173,.177,.191,.195,.205,.209,.214,.218,.223,.227,.232,.236,.241,.245,.255,.259,.264,.268,.273,.277,.282,.286,.291,.295,.305,.309,.314,.318,.323,.327,.332,.336,.341,.345,.355,.359,.364,.368,.373,.377,.382,.386,.391,.395,.405,.409,.414,.418,.423,.427,.432,.436,.441,.445,.455,.459,.464,.468,.473,.477,.482,.486,.491,.495,.0515,.053,.0545,.056,.0575,.0605,.062,.0635,.065,.0665,.0695,.0725,.074,.0755,.0785,.0815,.083,.0845,.0875,.089,.092,.0935,.0965,.098,.0995,.101,.1025,.104,.1055,.107,.1085,.113,.1145,.116,.1175,.119,.1205,.122,.1235,.125,.1265,.128,.1295,.131,.134,.1355,.137,.1385,.1415,.143,.1445,.146,.1475,.149,.1505,.152,.1565,.158,.1595,.161,.1625,.1655,.167,.1685,.172,.174,.176,.178,.184,.188,.192,.194,.196,1.22,3.82,2.15,2.09,1.37,1.32,2.12,.002,.28,.004,.008,.006,.075,1.85}, __fields = { 'Id', 'Type', @@ -22,7 +22,7 @@ __defaults = { }, __refs = { {46,.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,57,0,-2,2,.5,141,-138,-3,1,3,-4,.3,139,-139,.51,6,-3,-3,7,-1,-6,.3,3,-3,.51,1,2,-3,10,26,-36,.3,4,-4,.51,12,-9,-3,3,10,-13,20.4,14,-11,-3,15,-1,-14,.3,2,-2,.9,16,-16,.5,244,-241,-3,0,7.2,.3,17,-17,.51,15,-12,-3,9,-3,53.2,15,-15,10.4,18,-9,-9,.3,19,-19,.51,20,-17,-3,11,-11,.3,1,-1,.51,21,-18,-3,143,-143,.3,141,-141,.51,22,-19,-3,144,-144,.3,23,-23,.51,13,-10,70.2,-15,.3,105,-105,36.2,13,-33,141,-117,-24,.3,149,-149,.51,25,-22,19.2,-5,-10,.3,41.2,76.5,130,-139,.3,18,-18,.51,26,-23,-3,27,-25,1,-3,.3,26,-26,.51,28,-25,-3,0,29,-29,.02,3,0,-3,30,-27,17.2,137.3,10.3,105,-102,10.2,13,-13,104.4,1,144,-145,96.4,67,-64,-3,31,110,-141,.3,31,-31,.61,10,-7,-3,5,-5,77.4,196.3,22,-22,.3,70,-70,.51,27,-24,-3,82.2,.3,9,-9,.51,32,-29,9.4,170.3,67,-34,124.2,-107,-34,46.7,35,-31,-4,.3,302,-302,.51,210.3,39,-24,154.2,40,-40,.31,66,-66,41,-38,-3,42,-36,-6,.3,192,-192,.51,43,-40,-3,44,1,-42,-3,.3,43,-43,119.4,189.2,4.2,.3,69,-69,.51,46,-43,-3,47,21,-68,.3,46,-46,.51,52,-49,-3,141,-93,-48,.3,49,-49,188.4,50,-11,-39,.3,38,-38,.51,38,-35,74.2,9.2,73.2,.51,49,-46,236.4,147,-147,38.4,9.3,10,-10,130.4,9.3,32,-32,18.4,51,92,282.2,53,-53,56.4,32,-14,150.2,54,-54,.51,23,-20,-3,18,-8,264.2,148,-148,.51,2,1,96.2,9,-56,.3,57,-57,.51,58,-55,-3,0,58,-58,.3,59,-59,.51,18,-15,-3,13,5,190.5,69.3,3,57,-60,324.4,60.3,1,17,219.5,61,-58,-3,62,-44,10.2,126.3,371.3,229.3,69.3,54,-51,-3,.5,46.6,27,-27,339.4,45.3,61,-61,9.3,.41,281.3,63,1,-64,.3,65,-65,.61,3,-3,309,16,-325,83.4,331,-328,-3,333,-1,-332,.3,244,-244,.9,3.2,.5,336,-336,3,331,1,-335,.3,337,-337,.51,345,-342,0,338,1,4,-5,2,-3,-1,-339,.6,327,-324,0,15,298,-316,35.4,243,.11,-281,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,-40,.3,-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,31,71,.2,-71,.3,72,1,31,37,-67,1,-75,0,71,5,-5,1,0,5,-6,-71,78,1.2,-80,78,3,1,-82,83,1,101,-100,1.2,-9,10,1.2,-6,7,1.5,8,-7,-97,98,1,-99,100,1.3,-32,0,-71,0,186,8,-110,-15,-35,-21,-1,-6,-6,195,-177,0,26,8,-11,43,-49,-9,5,59,-61,-20,-9,16,-2,44,-2,107,-103,-51,44,86,-139,195,-208,.4,313,-141,-159,0,301,8,-309,0,347,-358,.4,-1,.4,8,254.2,.4,35,.4,-3,.4,-4,.4,5,.4,-34,.4,28,.4,9,.2,-65,0,44,.2,-44,0,68,.2,-68,0,63,.2,-63,0,66,.2,-66,0,71,930.2,5,-143,931.3,198,-202,.5,929.4,165,1.2,-174,.5,1,149,-147,-3,10,141,-115,123,-159,.5,927.4,172,-162,158,-171,.5,926.4,174,-175,176,-190,922.7,.5,15,57,-69,-3,9,145,-148,-6,9.2,137,-149,-3,18,138,-147,152,-89,202.14,83,8,-194,.5,20,2,11,803.2,86,-203,-40,16,.3,242,8,0,-250,.5,25,0,932.3,173,-178,141,-151,79.2,141,-153,-3,9,45,85,77,-216,.5,26,172,-195,0,-3,27,172,-197,198,-10,117.2,170,-167,-3,0,171,133.2,-3.2,-3,-3,30,-23,-4,30,-33,.5,3,.2,931.2,64,-166,165,142,.4,3,.41,-2,.9,-115,.4,116,.4,-241,.41,-71,84.3,-19,-3,1,94,50,4,-78,.4,-71,.4,317,.2,2,0,-19,18,.4,-122,.4,-110,212,5,-7,8,6,-9,.5,-105,.11,128,-20,.4,6,.4,-223,.4,11,.4,-21,.4,261,.4,-338,.5,67,84,-148,-3,31,124,-14,1,-142,.5,31,2,139.2,74,-181,943.2,242,57,-299,.5,10,17,973.2,945.2,-3,212,-213,232.2,-194,-47,945.3,152,-167,.3,943.7,181,-187,.51,310,.3,916.2,-242,.5,43,121,-161,0,-3,165,-120,121,-166,134.4,13,163,-173,215,-215,-3,.5,46,168,-211,-3,47,167,-146,-23,-45,.5,52,43,-92,946.2,100,-193,-48,.5,15,139,-151,-3,158,-119,123,-162,18.2,-37,793.2,51,93,-1,58,-201,97.2,2,85,.5,1,.5,-330,228.5,32,185,-199,142,-160,.5,23,130,-150,-3,18,139,-147,262,-272,28.2,52,-294,.5,919.4,144,-135,-56,.5,58,119,-174,918.3,119,-177,.5,916.4,163,-158,5.2,.5,32,-17,12,152.2,3,30,27,116,-176,61.2,148,-160,917.3,60.3,61,-46,88.2,916.2,-17,-1,0,320,0,1,0,1,4.3,-323,.5,1,4,-2,-3,63,140,-139,-64,.7,3,-3,326,-1,-325,.2,244,-2,-242,1,243,880.2,893.2,.2,-3,3,330,-1,-88,-244,.2,242,-242,331,-87,896.7,-332,0,241,16.4,244,0,16.2,345,1,-1,1,-343,0,338,0,1.2,-99,13.2,19.3,344,0,-100,20.2,910.4,297,1,-316,67.4,328,-84,0,-39,1.7,14,-211,210,-3,1.2,4,1,5,-4,1.3,-170,172,-91,52,.9,-185,56,170,-84,-147,234,.9,-225,43,-33,0,-10,136,-56,-80,3,102,44,-9,0,-103,6,0,178,.3,3,-1,.3,-17,-256,274,-212,-10,-17,.22,242,1,0,49,13,-305,.27,306,.99,1,2.1,.99,-305,.3,-3,.41,244,-140,-104,202,44,4,-6,100.2,244,10,-4,0,-6,6.2,-140,146,0,27,-33,-269,0,-8,0,-18,-11,11,-11,17,-14,0,34,.3,-6,-3,3,-3,9,-33,33,2.1,21.1,42.14,58,97.2,39,0,-15,-34,104.3,-3,4,-11,6.3,6,0,-16,110.3,185,-1,-44,116.4,-90,107,-23,123.5,18,-24,7.3,140,3,-3,143.3,14.2,16,-22,39.3,3,-59,46,6.3,7,1,-18,161.4,-82,4,-169,288.2,8.2,-251,0,247,26,-273,9.3,35.2,36,1,-43,7.3,-73,219,186.7,-219,213,7.3,-67,211,-248,1199.2,37.2,28,-9,-29,-160,160,8.3,-5,7,-12,6.3,9,-13,34.3,10,4,1,-15,33.3,110,50,-20,6.3,170,1,-31,18.3,31,-2,-39,51.4,228,-21,64.5,70.4,166,1,-21,43.4,-2,1,-197,188,7.3,-317,121,186,6.3,15,11,1,-37,7.4,-93,68,33.3,52,135,-47,6.2,1,-184,188,-5,12.3,-103,249,29,-35,-315,.42,177,1207.3,1,.14,1.2,.01,3,2,-116,117,2,1.4,.11,2,1.3,-152,.7,153,.53,1,.3,2.1,4.3,.51,3,1,.11,-2,-23,6,21,-15,10,4,-25,2,-8,41.13,-25,40.93,-13,-11,2,51,-123,-1,1,8,108,-119,0,159,-172,3,-15,0,42,-56,.101,142,-139,-3,55,128,-4,1.2,-181,.3,10,168,-178,1797.4,197,-42,-155,.3,195,-195,.9,-35,175,56,.5,-41,41,-196,.11,196,.3,48,.3,-244,.7,204,-204,.7,9.2,-109,109,14,-210,16,83,-49,-49,55,163,0,1.2,-68,20,-173,.2,21.2,3.1,.2,333,-129,-204,.4,215,-50,-178,2,-1,-30,27,8,-12,9,-4,5,9,.5,182,-40,83.6,3,-184,.5,80.3,3,194,-4,-38,-155,292.4,40,-46,248.3,180,-129,0,89}, - {{{1},{2,.2,3,805,1,-806,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,427,1,2,38,15,24,20,282,.2,-6,.2,12,3.2,5.3,-808,.6,808,0,-12,.2,15,-818,0,-1,2.1,-1,804,0,4,0,-3,.3,6,0,-4,0,5,28.2,0,33.4,5.2,-808,-11,78,-78,6,-6,11,-3,7,-14,813,-814,811,-810,-1,102.3,809,-813,5,6,-7,11,-15,5.1,7,4.2,0,4,798,1,-800,799,36,-849,26.3,807,-811,26.01,.2,51.3,800,-6,-803,-6,818,-818,153.4,0,25.01,14,-14,11,-4,8,-15,809,-804,803,-808,0,26.3,804,-808,26.01,11,-11,2.1,15,803,-9,-801,-8,828,-828,26.3,811,-815,26.9,792,-807,27.3,-5,9,452,342,-796,-2,810,-821,79.51,130.3,-5,9,-15,805,-791,-13,810,-811,26.51,182.3,105.3,805,-800,-5,.2,25.81,-3,7,25.2,-805,808,-808,103.41,180.5,-6,800,180.2,153.4,49.21,8,-8,100.5,-797,803,99.4,-2,-2,255.51,125.3,-14,50.61,99.6,2,-2,1,806,187.2,26.2,-3,-1,100.41,-15,840,-834,-5,-1,51.91,-4,8,357.2,-809,-5,813,-813,26.51,253.3,3,1,795,-1,-798,-11,815,-6,-809,27.3,810,-814,129.31,-6,10,129.3,-3,-11,79.4,9,-13,359.51,793,-3,254.2,230.5,359.21,181.5,26.2,181.2,26.5,281.02,815,-806,-9,26.51,182.4,791,3,-803,800,620.2,25.3,802,-806,25.01,0,52.8,807,233.4,309.71,800,-10,-797,-8,51.4,805,-809,408.91,258.61,459.8,334.71,126.5,-805,5,-6,1,639.4,126.11,-6,-9,334.7,-4,-2,51.4,410.21,151.5,482,317,-814,813,-812,52.4,817,-821,281.31,798,-794,640.2,-802,-7,811,561.61,462.6,809,-795,-14,0,809,360.4,693.71,793,1,-804,334.2,1,27.61,615.52,156.5,809,590.2,639.42,-1,822,716.61,26.8,821,25.4,803,-807,75.81,665.42,356.5,331.14,-15,810,-804,805,-811,50.12,639.2,-800,-14,175.4,826,-830,50.41,-13,838,-834,199.5,713.61,479.2,-794,-11,24.4,530.21,299.3,659.3,809,-798,2,-12,378.4,352.81,149.3,456.5,26.02,794,1044.5,350.02,810,-815,26.4,2,-6,301.51,-14,804,633.3,26.4,154.21,278.5,-6,796,278.81,77.5,806,-16,-800,0,-5,303.54,377.2,-5,177.41,-4,23.4,816,-21,-804,809,-7,834.4,253.21,25.4,-7,802,-801,-9,806,-806,148.51,174.5,-11,806,-810,822,-822,99.4,722,-726,26.9,712,-727,991.5,-12,2,826,-820,1244.5,53.21,630.5,1,794,-1,-793,.4,-16,732,-717,165.6,3,788,0,-805,17,-18,40.3,720,-724,40.01,.11,78,-78,817,-816,805,-637,-169,4,854,-46,1,-1,1,-5,.2,-808,1.2,811,45,-424,379,0,6,-11,-808,5,3,-2,809,0,-7,-799,804,6,-810,-6,5,-8,1,805,0,-800,7,-2,-6,803,-1,-807,6,-3,1,-4,815,.2,-2,-2,2,-810,808,-811,10,-2,725.2,2,0,-5,-808,4,-4,0,4,7,-11,-2.2,7,802,-802,0,795,-378,385,0,-809,-4,1.4,804,0,155.3,-13,0,-806,19,-10,810,-808,-10,818,-6,-813,1.2,9,810,-812,10,-20,.3,1.3,817,-8,-810,-2.2,808,17,-9,1,-813,10,-5,-11,284.2,-1,115.3,802,-803,1.2,3,800,-809,1,803,-809,532,291,-9,9,-822,1.2,809,-811,1.2,-2,2.1,1.2,817,.3,-6,-6,0,6,-2,-804,3.2,3,-14,137.3,813,-6,1636.3,-3,5,-2,.2,8,-8,19.2,-9,137.3,5,-8,807,12,-819,85.2,3,-8,149.5,-804,4,6,-8,6,-5,153.3,813,6,-6,6,-13,-803,803,30,-29,14,-10,-804,-1,5,59.2,161.3,833,-17,0,116.2,3,-4,0,7,56.3,797,-807,1,-3,.2,8,9.3,1288.2,5.3,.4,795,-372,385,-8,-802,-9,11,-10,13,-6,-4,1,-4,810,-1,-810,831,15,-832,1,-15,829,-818,-11,6,1703.2,7,391.3,5,-4,-1,1,7,-7,0,744,-745,0,810,-810,0,12,803,-815,6,828,-834,0,562.2,831,-832,16,792,6,-808,1307.3,830,-828,-1,1,0,-2,.2,173.2,1,-1,4,-4,.2,5.2,.2,2,826,-22,16,419.2,4,803,11,-818,1,49.2,5,-6,819,-811,164.2,.4,-807,9,-3,1,803,-810,6,1,-2,808,-6,12,32,-10,-841,.4,806,4,17,20,-39,.3,3,0,16,-9,13,-3,16,61,1.2,-31,32,-87,.3,442.2,.3,-2,810,.2,-12,6,-5,7,-4,0,2,-2,2,6,62.2,2,807,2,6,-12,.2,-807,.3,679.6,817,-9,-809,845,-844,827,-828,744.5,834,-40,-795,799,-813,-1,3,-2,833.5,-8,-1,-800,33.2,807,-816,-2,1814.6,806,-801,323.2,1,1799.4,1801.3,859,-68,-798,-8,0,878,-876,-2,1787.6,339,-793,-2,-11,0,679.6,1,841,-828,-13,0,844,-845,794.6,6,834,-835,-5,.3,1,818,9,-827,828,83,-898,1,-15,837,-826,-11,6,801,-805,7,-9,217.2,248.8,-744,-1,1869.2,0,12,817,-829,6,843,-848,-1,.2,829,-830,16,804,0,-814,1633.3,.4,1130.6,171.3,1,-1,807,-1,684.2,-10,1,9,748,-2,-757,749.5,0,1053.2,-5,0,-1,117.2,1679.6,-1,1960.2,-5,807,6,-813,521.4,1667.3,-4,.2,-795,-11,0,815,-814,0,-1,1655.5,819,8,-828,-3,0,-11,1306.6,3,31,-837,-5,811,-3,-807,25.4,1628.3,-2,36,-828,-14,1,807,202.2,.4,2.1,-1,.4,2,.4,-2,8.5,716,.4,-716,8.3,2.1,-2,124.7,840,-840,815,-8,-798,-5,7,.4,-11,.4,11,.2,-11,.2,808,7,-4,11,-9,-813,.5,812,-810,240.3,805,4,34,-16,353.2,-808,.21,11,28.3,841,2,15,-46,19,20,-21,19,30,-72,5,26,-23,29,-22,-11,2,-6,12,18,-837,1552.5,-795,795,-800,1679.3,815,-815,1565.8,7,-6,-1,200.4,0,1169.3,199.6,-4,-2,831,-24,746.2,1544.5,-497,1489.2,851,-850,-1,0,172.3,795,-791,357.2,-799,1531.3,1,.3,2.1,-2,.3,11,.3,-11,4.1,1151.6,0,806,0,-792,-14,.3,208.6,-2,0,-801,-5,0,326.2,576.2,358.6,0,842,223.2,3,-3,.4,89.4,303.2,433.2,469.6,22.2,86.2,822,-1,-821,65.2,11.3,1,817,-812,807,-7,-806,1796.3,130.3,502,298,103,-37,3,-15,-865,836,-29,12,11,-9,-821,436.6,328.3,1622.2,.6,1353.4,1,807,-804,-6,3,-3,335.3,41.3,-6,1587.3,-3,7,798,29,-831,495.3,156.4,1335.3,0,806,-795,2,-12,352.5,1674.7,1,805,-806,13.6,.2,842,-828,794,-805,-3,.2,144.6,811,367.2,808,-813,807.3,604.5,-1,330.2,1585.2,831,-816,0,61.2,11,0,796,-807,815,-2,-813,86.4,814,8,-19,-812,770.2,811,12.5,-7,1,799,-799,2,795,-795,-10,1,720,-711,-11,829,-108,-721,1163.6,804,2,-2,-808,807,0,-807,727,-716,137.3,-11,4,1169.2,1158.7,806,-800,796,1,2,-81,-718,21.4,730,-2,-728,1153.6,.3,792,2,-794,.3,716,1,-722,21.4,16,0,715,-731,1161.6,790,61.2,-1,18,-7,20.2,723,-714,-11,0,723,2,-725,0,1719.2,1,0,-1,307.2,0,308.2,5.2,805,-794,172.2,17.3,805,960.2,0,-2.9,789,608.2,3,818,-821,-2.9,-18,2,-2,0,2,9,796,434.2,-1,.5,1,-1,1.3,-2,1,-3.3,-11,-1,1.2,-1,506.4,5,.2,2,0,4,0,756.4,1,.5,-1,75.2,1159.4,.5,10.3,4.1,8.1,8.7,802,110,1.6,-43,44,-78,79,-44,45,1.2,-49,50,-62,63,-111,112,-72,73,1.4,-87,88,-69,70,2.1,1.6,-115,116,1.2,15.2,1.4,-102,103,1.4,-93,94,1.2,-140,141,1.8,-100,101,1.8,-138,139,1.8,-163,164,-139,140,1.5,-995,.411,1,.41,2.1,4.1,1,.52,800,.3,-790,-13,-2,377.3,4.1,8.5,446,360,-791,792,-805,732,17,-306,-434,445,-453,749,1,-298,-455,461,345,-52,0,-753,459,-455,.3,-2,1216.2,811,-812,806,0,171.2,8,1,796,-786,801,-801,-14,-5,5,1300.2,21.1,42.14,-796,452,-460,-1,0,2,458,-451,454,-462,8,-10,463,-453,456,-464,805,0,-342,-466,469,337,291.2,467,-468,471,335,-50,-756,1,469,-470,474,332,-49,1,-756,471,-473,476,330,-330,-475,474,0,-475,478,328,-46,-759,476,33.2,-477,6,797,-327,33.2,-479,-3,738,-257,-470,473,-481,758,-762,1,812,-329,-472,475,-483,802,1,-44,-761,811,-327,-485,489,317,-43,-763,16,472,-488,491,315,0,-41,-1,-274,-490,493,313,-40,0,40,-314,-492,495,311,-806,813,-798,479,-483,486,-494,808,-809,495,-497,496,-485,488,-496,0,-4,499,-487,491,-499,-1,765,-266,34.2,-501,865,-867,502,-503,506,300,1455.2,503,-505,508,298,1010.2,496,-496,499,-507,-1,0,507,-509,513,293,-806,822,-310,-512,516,290,-38,1,-254,-515,518,288,-804,1,772,-258,-506,509,-517,740,0,-742,518,-508,511,-519,804,-807,521,-510,513,-521,11,-14,14,509,-512,515,-523,2,-5,525,-525,528,278,-806,1,526,-527,530,-528,-1,1,527,-529,533,273,5,-30,-775,526,-532,0,501.3,.2,991.4,3172.4,-2,.7,3,4.2,824,.01,-19,12,-807,0,800,0,-4,6,3,17,.5,324,-324,.3,-822,795,6,1500.2,-2,-1,4,1,-3,8,10,-23,-1,2,1,11.2,4.1,8.1,16.1,2,1,-3,1.3,2.1,4.1,6.1,-1,821,.5,10,-10,.4,-11,-812,814,-8,-1,6,-5,-806,580.3,112.91,-17,350,-1147,112.5,1,12,.5,333,-333,.3,-815,801,3,-2,-806,112.85,815,.5,343,-343,.4,1869.2,6,-6,1.2,-808,110.22,-14,2,-802,110.5,-4,14,.5,338,-338,.3,-812,797,14,-15,-800,110.85,818,.5,6,-6,.4,-8,-812,2,-1,-1,.2,-1,823,-1,0,-13,21,-829,828,50,-877,1023.4,1512.3,1016.6,12.1,2543.6,1027.6,12.1,6.1,1272.5,11.1,5.1,39.6,11.1,1022.5,791,4,-810,0,7,-7,.3,2261.4,888.2,2213.51,2264.2,-810,5,2971.61,-16,1,-3.5,2,-17,6,-6,5,1.3,4,-4,69.2,4,.2,-12,-4.3,482,.3,-497,.7,812,-812,.7,4,-5.2,2,816,-823,-9,15,-15,841,-841,434,-433,-1,1,806,12,-816,-4,6,.2,770.2,.2,1027.2,.2,800,6,-811,.5,19,793,7,-819,811,-4,1,54,-861,820,-812,-9,91.5,796,7,0,-818,120.3,1662.6,814,-21,1063.2,-800,6,-11,0,718,88,-4,1,-796,710,-717,720,86,-803,-3,0,719},{2069,1,4,1,4,4.1,1,1683,1.42}},{{2},{2,1.2,805,2,-809,564,244,-1,-1,0,1,.4,-1,-740,748,-644,669,-6,12,-761,749,6,-6,6,-30,-725,336,-418,-1,434,53,27,20,2,1.3,-105,6.1,12.1,6.5,2,1,2,1,6,9,3,-563,.31,808,65,1,25,-65,-12,-9,-8,4,1,8,-10,0,-3,1,4,2,-4,7,-812,.5,-2,.11,1,.5,806,0,-760,214,547,-547,279,265,-805,5,802,-807,427,162,215,0,-805,805,.3,3.1,-805,262,20.3,271,-811,4,805,-382,19.3,-797,797,19.9,268,-808,0,-1,806,-806,428,21.2,.5,18.5,552,-552,18.4,10,795,18.4,39.21,269,-809,11,-1,795,-794,416,21.3,-804,804,60.11,8,2,795,5,-383,60.31,4,801,77.51,5,800,76.5,134.8,20.6,812,-810,420,75.61,134.2,-378,56.31,806,-803,802,17.3,56.21,132.2,93.2,19.4,2,-2,75.11,805,12,-817,229.4,-806,806,20.6,544,-544,249.3,805,-806,810,230.3,76.6,266.6,804,-810,2,426,18.11,227.3,817,-817,1,18.9,73.5,-1,5,801,5,-1,285.4,95.31,-1,14,792,-802,424,267.11,135.6,19,782,2,-797,417,230.41,812,135.4,97.21,208.2,-798,228.4,192.7,805,-543,39.71,363.6,3,802,1,-379,287.71,800,250.51,343.4,286.9,227.5,0,808,1,-3,56.4,-796,796,37.5,816,-554,22.5,-1,810,-810,364.21,252.5,88,-83,802,-808,385.51,-541,1,807,-797,795,28,-406,21.3,29,-29,215.11,2,-2,805,1,-805,277.3,0,-802,802,258.21,1,805,-798,-6,299.51,6,800,15,-393,104.41,432.3,-807,241.6,16,-16,489.31,4,-822,510.71,-1,6,812,-818,167.51,21.2,820,-821,512.4,381.41,515.6,605.31,16.9,548,-548,220.3,116.2,241.6,3,-3,241.11,739.6,93.8,280.6,0,529.31,375.3,6,811,-11,375.71,10,807,20.5,77.8,626.01,130.9,16.4,-806,3,425,168.61,5,800,-805,873.21,229.8,665.5,21.31,3,208.51,329.3,-807,429,226.42,790.7,847.8,-543,504.6,483.2,222.4,418.8,262.5,810,-811,810,-799,834,-417,753.31,-1,0,818,4,-394,40.3,-675,675,40.5,130,132,22.5,10,794,-794,795,129.41,-5.2,-11,7,-1,1,2.1,-6,732,-733,297.4,223.2,-1,5,6,-11,337.4,-691,691,56.5,.6,1,.5,18,29,-47,32,507,-539,37.3,2,-2,1.2,943.2,6,3,-813,804,1,-1,0,2.1,137.2,11,-2,-8,810,-792,27,-42,802,-637,-168,10,-7,5,797,-797,-7,809,-811,4,42,-37,797,-806,.5,65,-65,806,-797,-5,42,-46,.3,813,-394,-250,636,-796,16.2,811,-802,797,-803,803,0,-803,805,0,-245,-24,.4,-538,71.4,4.2,804,-806,0,812,-811,-1,.2,812,0,-4,0,-808,9,5,-13,1.3,807,-811,806,9,-2,-5,14,-10,1,2,0,-2,-773,-32,836,-12,6,-6,68,-68,69,-57,0,-844,838,0,-831,-7,0,1.2,810,.2,-803,806,.2,-9,.5,7,0,-5,548.2,-767,-46,814,-812,10,789,-789,2.1,-10,0,-9,.3,11,804,-815,1.2,-2,2,820,-813,10,0,789,-779,54,-74,799,85.2,3,803,.2,25.2,31.3,-17,139.2,9,21.3,-799,74,-64,789,-808,.3,3,37,-37,-3,5,-5,134.2,0,799,55.4,74,-83,1,.2,818,-288,-112,386,-801,15,32.2,-808,807,-806,-1,4,8.3,-805,1,5.3,.4,-805,808,-6,-797,48,-54,807,148.3,32,-836,224.3,808,-808,26,-26,150,695,-8,-27,361.2,40,-28,-12,9,0,-11,-808,861,-858,847,-850,812,-812,1.2,-1,821,-821,830,-20,-811,830,-828,6,70,184,544,23,-829,66.2,811,-808,803,1,590.2,9,799,-808,812,-800,795,-804,-3,808,-806,809,-807,-4,.4,4,812,-1,0,-804,795,0,-806,843,15,-46,-4,7,-4,11,-9,0,-6,4,.4,-810,.4,861,47,-34,35,1,-90,.2,-821,0,813,-6,12,.2,-816,.2,1,0,-4,.2,-1,6.2,.2,11,.2,797,3,-4,-375,374,-373,159,218,381.2,6,822,-827,0,431,11.3,255,-846,4,10.2,-1,433,10.3,214,360.2,-2,1,810,2,-812,805,-373,377,-376,13.4,10,799,-810,2,809,-379,25.3,235,-826,11,-1,799,-798,801,-381,36.5,8,2,799,-3,-375,33.5,811,-807,805,-810,0,432,44.6,5,804,-3,-807,199.2,1,205.3,813,-812,51,-52,317,533,-850,828,-811,811,-828,807,3,9,33,-39,-812,912,-910,-3,86.2,-811,205.2,829,-827,826,-10,-819,830,-22,29,-405,50.5,-1,811,-1,-2,-807,713,31,-33,0,96,210.2,432,378,-377,146.3,805,8,-814,827,-827,812,-380,158.5,862,-857,821,158.2,2,-1,160.4,43.2,10,-10,1,892.2,0,-1,813,-381,107.6,4,805,-3,24,-399,68.6,14,796,1419.2,-378,11.3,161.2,4,1,18,786,80.2,10,-11,806,2,3,2,-6,-1,5.1,5.4,1,4.3,12,-819,.41,11,.4,23,31,21,31,33,-139,12,11,12,10,-45,5.4,376,64.5,814,-809,1717.2,0,-2,208,211,12,3,54,319,6,397.3,13,9,-23,16.2,4,7,.4,-11,.6,1,810,0,-811,.11,806,21,37,-36,-17,-5,5.4,-808,.4,813,-2,-5,-3,4,344.2,432,295.6,773.3,-802,-4,0,428,183.5,3,802,21,-826,806,-93,201.4,-2,-374,17.5,783.3,-818,1,-1,42.4,12.2,88,733,-816,822,-828,291.4,-592,1286.3,799,24,-834,286,143,71,37,-251,4.3,-2,8,48,2,0,119,1,2,90,1,.2,-1,1,6,-4,-376,196.5,2,-3,1.2,808,-3,0,-807,338.6,-1,4,-3,602.3,-6,430,13.6,0,6,1621.2,821,-14,442.4,13.2,806,507.2,126.2,254,547,24.5,6,1391.2,.2,432,380,-379,61.3,290.2,118.2,0,714,135.4,-722,-70,.5,416,325.6,-858,822,-825,-2,348.6,780.3,348.2,806,-92,31.4,-806,430,196.6,6,801,23,-24,456.6,806,826.2,13,-10,-379,327.6,805,-811,5,428,10.7,-810,810,607.2,433,33.5,5,804,65.2,150.7,6,306.3,965.4,810,8,-819,0,822,-15,-375,93.5,.2,92.2,-394,385,-385,52.3,810,-1,-810,818,-809,836,-100,-33,978.2,787,-94,-713,50.2,152.3,122.3,11,-11,0,808,-802,801,-796,119,615,124.3,-94,-714,0,280.6,10,798,-798,820,-820,25.2,745,20.7,102.6,87.3,4,1059.3,0,1,-6,132,612,25.4,-708,1,-7,432,395,-394,159,226,-817,-1,5,6,-9,-2,44.3,-712,808,-94,98,-812,114,-114,-1,809,4,-812,1194.2,805,-800,-1,822,664.2,-11,.9,4,-3,0,806,12,11,-9,20,-841,.4,808,2,-2,869.2,-1,4,1,163.2,.3,821,-2,-6,-5,-730,734,-1,-4,5,3.2,1,14,8,-18,-1,1,-4,-2,803.2,0,811.2,-4,5,9.3,-802,1,-3,-3,476.2,-9,3,-4,-11,9,12,6.5,3,-1,478.4,7,6.5,6,-7,2275.3,20,-12,6.5,-2,36.53,-828,.99,13,.99,792,272,1.4,-199,200,1.4,-203,204,-196,0,197,1.2,-206,207,-282,283,1.2,-209,210,1,-204,0,205,1,-212,213,1.8,-264,50,0,215,1.21,-226,0,227,1.3,-297,298,1.7,-237,0,-8,246,1.4,-249,250,1.2,-293,294,1.3,-313,58,256,-255,256,41.3,-341,765.2,11,0,-10,711,93,.3,27,.3,-20,.3,-4,-731,-76,2,-2,707.2,.2,815,-814,809,-804,-5,-1,846.5,231.2,813,-1,-222,-44,-546,811,-811,812,-6,5,-3,3,1,-4,-1,-1,-1,1,250.2,-805,21.1,42.1,815,-815,810,6,1,-815,-2,815,-792,789,-4,-808,23,792,-806,803,-812,808,306.2,112.2,-807,1059.3,5.2,0,-1,2,9,-11,124.3,89,-90,13.3,18.2,0,37.3,-812,11,12,792,-733,730,-5,27,-834,153.3,-810,.2,9,-9,815,-734,729,-805,337.3,14,-14,1009.6,52.3,8,-7,0,-2,7.3,4,-4,8,-9,808,-725,-82,8,798,24.2,43.4,0,89,-89,63.4,-813,4,20,792,-815,1230.2,215.2,-724,719,5,15,-830,808,-717,-90,103.3,-808,1.2,0,127.2,134.2,78.2,808,-722,-85,8,804,-813,73.4,1,66.2,-721,-86,-1,0,2,151.4,59.2,805,-784,115.3,-801,-11,64.2,37.3,105.2,7.2,115.2,-810,-1,1,39.3,1049.2,-6,164.4,1,287.6,.2,805,0,7,937.2,.2,1,.4,2.1,-4,.13,12,795,.3,-1,1,.5,-806,814,-2,-2,0,-809,877.2,-11,1.2,2,1.5,5,10,794,-805,804,-12,.6,12,.53,-12,.3,-794,531.2,.3,-15,.3,3,.11,-8,84.2,2,4,-1,1,8,-6,1,5,362.2,-8,-1,0,-4,816,-11,1,0,2,885.2,68.8,801,.3,-6,6,.5,-812,840,-25,3,0,-817,812,-802,68.6,1530.2,803,-7,.6,7,.53,-7,.3,-798,.3,30.2,4,.3,-11,.3,11,4.3,10,-804,72.11,-9,0,-4,814,-8,6,0,3,0,-814,71.8,797,.3,4,-4,.5,1447.2,10,-14,90.2,818,-808,71.6,805,-816,801,-4,.6,4,.53,-4,.3,-799,.3,804,.3,-1,.3,-5,.3,10.2,4,.3,13,-811,71.11,793,6,-5,27,-26,26,-12,-822,.2,11,20,-19,0,795,-685,698,-698,409,285,-815,121,6.3,278,-808,6.4,12.1,12.6,274,-804,12.1,12.7,694,-694,12.1,12.4,6.3,36.9,12.11,261,1958.5,8,-9,1079.2,1924.4,5,-5,2261.11,0,-1,818,-819,5,2697.4,-801,241.2,22.4,78,-78,.5,4,226.2,-5,5,2,-2,4.2,1993.2,-540,1950.3,.3,89,.3,-89,943.3,1034.4,769,35,3,7,.2,-2,-6,14,-821,.3,3,-3,3,166,-169,1,960.3,807,3,0,-21,17,.2,-14,13,2,0,-808,796,10,2,547.3,1446.2,-796,823,-27,1,-808,852,-33,-387,1022.5,550.3,416.2,433,379,1055.4,0,457.2,-802,-6,1162,-1158,804,-712,-95,-1,2509.3,808,-707,-100,-1,-4.2,-8},{5,77,1.6,67,4,22,3,1,25,6,21,25,17,11,5,17,4,3.2,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,21,62.4,1,5,20,23,71.4,5,17,26,4,26,37.3,76.2,3,5,17,8,19,1,31,21,27,5,37,29,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,16,5,1.4,6,1.4,39,1,4,1,4,4.1,1,7,5,8,3,2,12,15,11,1,13,7,6,7,4,7,49.11,13,1,2,18,2,8,14,5,23,3,1,78,6,28,6,1.5,13,16,1.4,23,11,15,5,14,1,11,50,3,89.2,1,8,14,4,1,8,21.2,4,2,12,2,17,9,69.4,8,1.2,13,1,4,9,4,22,1.2,53,46,12,1.4,2,7,1,5,1,3,13,2,11,1,80.2,6,1,-5.2,2,1.2,457,2,21,2.1,4.3,22,1,68,132,1.42,63,20,1,88,3,1,66,6.2,87,6.1,12,110,33.2,5,39,54,1,4,1,-2.2,22,3,2,10,6,1.3}},{{3},{3,1,-1,0,1,0,4.3,-1,.9,3.2,806,6,-4,7,-4,11,-15,-1,7.6,10,3,-4,-2,-5,0,5.2,12.4,5,6.1,6.5,-804,0,35,-38,.6,1,-1,.3,-1,2,-1,61.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.11,19.3,58.5,19.7,.9,815,-815,13.1,66.01,.8,79.51,110.31,.41,806,-805,150.12,.7,4,-3,93.11,54.4,17.3,55.01,97.31,84.5,.2,140.21,208.51,87.01,100.3,26.3,42.01,156.3,102.41,805,-804,36.3,0,18.8,5.3,314.4,174.01,27.01,.31,815,-814,11.9,66.41,-797,-8,3,-3,127.01,61.3,3.1,70.3,143.8,2,-2,69.3,.3,73.01,.6,11.5,100.01,163.3,813,-812,18.4,97.01,.7,498.6,36.01,.51,252.41,0,-1,807,-807,82.11,213.3,22.3,829,-828,63.9,829,-829,115.41,53.7,292.31,119.3,207.12,93.6,807,-806,259.01,30.21,812,-811,476.41,13.3,.4,323.3,184.11,31.01,98.3,263.01,13.3,47.6,117.8,808,-807,54.9,819,-819,1,855,-856,192.11,145.01,248.01,165.51,-1,836,-836,286.01,299.6,.4,82.01,106.6,806,-807,1,36.01,.7,810,-809,0,805,-806,423.41,811,-811,356.21,.7,595.3,812,-812,2,804,672.2,.6,7.2,1,821,-822,172.11,7,804,.4,4,.2,-806,.2,-6,-2,-1,100.2,37.2,.2,811,0,-6,3,-808,.2,1,6,801,6,-814,111.7,814,.2,30,-39,7,-809,802,59.2,.2,806,5,-3,0,136.4,1,64,-64,0,75.2,1,806,.6,-800,800,-1,-801,806,-3,338.2,6,800,-788,19,-24,-14,805,-798,.4,-7,.3,19,-19,0,813,.2,-802,.2,808,-812,.8,-7,1,-1,133.2,68.3,71.6,807,0,6,0,-7,-805,818,-12,0,-798,802,-811,195.3,3.2,812,0,13,-825,112.3,211.7,16.3,.2,13,-17,-802,798,3,-3,21,-826,49.6,808,3,.2,-810,26.6,82,-83,4.2,393.2,-806,.91,2,-2,26.3,.2,6,-3,-3,0,830,-830,.6,3,6.2,1.2,-2,0,902,-902,5,-5,0,821,-821,.2,903,-28,1,28,-899,-6,1,.2,221.2,.2,11,.4,802,-6,12,32,-10,-839,.4,-2,.4,1,861,-860,.2,-3,.2,10,.2,798,.2,-807,762.6,110.5,518.4,7.2,446.4,3,-2,-2,1041.9,1025.5,6.5,.8,684.3,.7,915.2,.11,111.9,.21,942.4,838,-837,33.4,4,1,-4,32.3,-815,0,831,-831,390.4,.2,5,-5,622.7,10.3,793.5,0,810,11,-9,23,-29,4,5.1,5.4,-2,1,6,-4,7,-10,5.4,-810,.4,811,-7,1,8,20,-838,.22,57.3,3,588.3,-5,806,4,34,-16,-19,-804,.4,812,-4,-805,.5,7,.5,-14,.01,877.4,-806,2,-1,0,194.2,118.3,.4,8,887.3,87.3,84.3,867.3,1316.4,.4,1205.5,.42,847.3,-813,14.3,1028.5,205.3,.6,251.2,915.5,0,-1,9.2,209.4,893.6,6.2,288.2,.4,6,-2,.5,-4,.8,-1,1.2,726.3,17,636.2,239.5,500.3,927.4,7.3,.2,980.5,.2,1,3,-1,-3,.7,-1,1,.5,675.5,917.3,45.3,271.5,121.3,-1,1,.21,831,-830,.3,-1,815,-9,-806,.5,235.2,643.4,823.2,578.3,680.5,67.3,2,813,0,-815,80.3,815,6.2,.6,615.3,17,804,-822,.5,18,-18,30.2,3,54.2,3.2,803,1,6,-808,.9,-4,805,-803,2,1,817,-822,811,-5,-805,820,.3,161.2,4,-3,.5,243.3,.3,-2,.4,2,.2,119.4,.17,807,.99,-805,.99,9,.99,-10,94.2,0,1,.21,4.2,857,-36,-821,548.4,834,-27,97.2,-1,1,869,-870,.3,3,0,-3,1,27.2,.4,806,-806,2.1,0,12.1,24.22,661.2,0,11,-6,-5,289.4,3.1,1502.4,2,466.3,735.2,814,293.2,17.3,675.3,295.6,869,-868,31.4,808,-803,-4,229.3,716,-715,762.4,807,-808,1,875.6,6.3,836,-28,13.2,-1,0,808,-2,-806,6.2,812,349.3,30.4,-807,6.4,93.2,1,1246.4,5.2,2,55.3,1076.6,124.3,1285.8,809.2,865.3,111.5,869,-858,-11,912.3,-805,446.2,1176.7,0,805,120.3,80.2,-808,3,-3,7.3,811,-808,6.3,16,-16,612.3,1098.2,10.3,819,-808,-11,5,9,-10,2,800,.2,-1,.5,15,-15,.2,4,.2,8,-8,.6,3.1,6.5,.3,-1,-808,4,1.5,5,10,-23,1,-2,4,1,801,-805,14.2,505.3,.11,996.3,.3,4,4.3,8.4,5,.3,10,.3,792,.3,-816,.3,7,12.3,6,.3,47.2,5,-10,69.2,33.2,807,-803,79.2,0,804,.2,1,.5,5,-5,5.2,.2,6,-6,.6,3.1,6.5,.3,1,-811,79.9,807,-811,79.22,790,.3,-814,79.31,.01,1,810,-806,79.3,807,158.3,30,-30,.2,8,.2,-4,4,.6,3.1,6.5,.3,-11,-807,79.9,803,1009.2,79.12,785,.3,-809,79.31,.8,813,291.2,0,-3,0,2,0,-2,5,0,-5,737.3,3.1,.13,6.5,518.3,6.3,.61,304.4,7,-6,1376.11,809,805.2,1272.01,4,.5,809,-809,1847.5,.5,4,.3,-2,2.1,0,1,0,1,4.3,819,-821,.7,3,.3,-4,.2,434,-431,-3,.3,830,-829,.2,1286.2,.2,815,-8,1273.2,807,-797,802,-810,-3,2,-2,734.3,897,-887,-11,.5,1,.2,767.2,3,832,-28,1193.4,815,58,-67,-806},{1.8,12,1,11,1.65,15,1.81,34,3,1,22,3.1,3,1,5,17,4,25,6,-11.2,6.3,3.2,3,23,8,4.2,5,20,22,3,23.4,20,26.3,9,17,3,1,6,32.3,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,54.3,25,53.3,3,23,75.4,88.4,17.3,26,47.3,25,29.3,17,8,16,3,1,31,21,26,1,5,25,12,29,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,15,5,1.4,6,1.9,21,1.9,4,1.6,4,1,4.2,7,1,23.2,7,3,2,1,7,4,1.2,13,11,1,13,7,6,17.3,1,4,63.61,9,4,1.3,18,1.3,7,1,13,5,-2.2,7,4,8,3,1,17,1.4,57,17.2,27,1,3,1.7,13,1.02,23,11,1,-7.2,1,60.2,12,1,5,6,34.2,16,1,12,3,12,2,1,34.3,8,1,13,21.2,7,1.5,13,1,3,2,12,1.2,14,16.4,173.4,2,8,1.2,5,8,96.3,9,4,1,3,1.5,9,122.3,11,8,33,1,46,12,1.6,7,1.2,45.2,2,13,2,1.21,3,1.4,6,1,-5.2,2,1.2,422,2,13,18.2,2,9,46.3,5.1,10.8,16,1,5,1,4,6,-7.3,35,2,5,-7.2,11,22,6,12,-6.2,16,17,1,11,1,4,1.42,62,84.2,245.2,46,1.3,39,3,1,2,63,11.6,38,11.1,1,2,9,1,109,1.4,5,18,3,17,1,50,251.2,2.1,-2.2,19,5.3,2,10,6,1.3,7,4,1,4,7}},{{4},{15,-11,.6,1,.6,2,0,2,.2,2,-8,.71,38,770,-807,0,-2,1,6,-7,4,802,0,-804,2,-3,-1,817,-4,9,-10,-811,0,808,-1,-807,1,.2,-2,2,18,810,8,-826,-8,-3,3,-3,11,5.2,833,-7,-3,-6,40,-37,13,6.5,-818,-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,50,-42,-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,0,806,0,-807,813,0,-7,3,-804,3,.3,809,61,-64,.4,-811,.4,811,.4,-806,.2,-5,-2,2,809,143.3,26.2,-1,6,0,738,-744,6,-6,.31,1.4,-3,.9,805,2,3,2,-6,-806,805,6,-1,-812,0,817,-10,6,0,-4,7,-10,4,34,-16,20,-39,-3,6.5,-807,.4,2,-4,806,-804,804,-805,-1,829,-17,-810,10,-5,-6,.2,808,-808,.3,1,819,-819,.5,-2,2,-3,5,-3,0,1,7.2,-1,0,2,854,-17,-820,-15,852,-837,840,-848,855,0,-27,-836,.3,-2,0,860,54,-80,-824,-10,2,913,-916,848,-848,-1,1,0,805,-805,808,0,3,.3,2,8,-821,0,-3.2,0,-5,-2,0,1,.3,2.1,825,0,-824,-2,.001,805,191,-114,115,2.1,4.1,-114,-80,195,1.9,-198,75,124,-123,124,1.2,-125,1,125,1,-208,209,1.9,-211,212,1.9,-225,226,1.9,-224,225,1.9,-243,244,1.9,-230,231,1.9,-269,343,-269,-14,269.3,-6,-862,-2,0,2,3.1,6.5,1150,-1150,-1,8,831,313,-292,36,-57,32,-872,1,839,57,-897,4.2,14,-16,16,-41,-811,-1,837,17,-854,846,26,-872,860,37,-897,835,18,-853,-1,836,20,-20,20,-47,27,19,-49,-802,832,18,-850,802,30,19,-43,35,6,-851,804,-802,843,26,-60,-809,857,-5,-853,833,19,-855,3,833,17,-852,815,-20.2,-49,20,9,19,-852,-2,47.2,-42,-811,839,314,-1150,856,295,-1154,806,-803,856,13,-869,857,-47,-813,848,7,-853,-2,3,845,18,-866,1,847,307,-1153,846,308,-1156,807,41,13,-49,27,-839,.3,5,-1,10,-10,2,3,-1,-3,0,2,7,10,-20,0,1.5,5,5.2,4.1,8.7,-23,-1,.7,1,.2,3,44,.01,-47,.11,-1,.34,1,822,.11,-8,-1,-8,-804,-2,.4,50.24,816,.11,-11,6,-810,49.44,819,.11,-820,11,-9,-2,3,806,-810,807,13,2,-821,.3,-1,853,-47,.3,17,-9,23,-29,-35,41,-813,1,0,800,-800,790,-3.2,-793,487.2,811,85,-899,820,-14,34,324,-1160,-4,0,851},{14,75,1.31,20,1.32,3,138,128,8,25,18,25,134,49,3,6,46,72,1,3,5,21,6,17,52,10,44,9,21,25,126,49,113,46,174,9,11,7,26,3,2,1,11,4,5,11,1.11,4,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,-30.2,7,82.3,7,2,15,1.6,8,26,1.41,26,1.2,31,27,2,20,50,30,3,1,8,1,19,1,18,15,2,26,11,3,6,1.92,28,17,1.5,6,1.4,13,1.11,27,1.4,42.3,1,9,1,4,17,10,1,15,2,31,7,12,62.3,15,11,13,9,7,1.5,14,-7.2,18,24,15,2,13,-11.2,1,25,-4.2,-7.2,1,6,1,-7.2,6,1,7,1.3,3,44.3,8,7,4,1,4,3,1.2,8,-2.2,5,1,7,1.9,2,16,1,6,2,1,4,1.3,2,1.3,30,1.3,74,1.991,120,6,1,2,4,2,5,9,8,2,13,3.1,6.5,6,26.2,19.3,4,-2.2,1.2,2,51.2,2,5,-2.2,13.2,3,1,-2.7,3,1,-2.2,7,2,4,1,-2.3,1,20.3,-2.2,3,27.2,-2.3,1.2,-2.5,8.2,2.1,4.1,39.3,29.2,50.3,1,-2.5,1.3,12.5,2,1,2,83.3,1,26,1.84,2,1.01,7,2,1.11,13,1.53,5,1.3,5,1.92,2,1,3,2,1.94,16.01,1.82,16.1,3,4,1.2,8,116,21,5,13,1.7,2.1,-9.2,75.2,5,12,4,5,8,7,1.2,12,17,71.3,90.2}},{{5},{809,-801,0,2,.2,2,0,-4,6.5,-8,.5,3,8.4,-3,0,2,0,19.5,6.3,-6,-4,1,810,-809,0,-2,1,-1,.11,1,9,-8,8,-8,.2,8,0,797,-797,.3,-9,805,1,0,-806,806,0,-805,-1,19.3,.2,20,-21,800,-808,1,.2,807,-799,0,799,.3,-799,.3,-8,2,805,-808,805,3,0,-808,808,.4,-807,0,-1,2.1,4,-3,0,4,.2,5,0,-5,806,-809,-1,0,7,-6,.5,825,-9,-817,.2,1,0,2,-2,.11,5,.4,-3,5,799,2,-803,-5,8,-9,0,808,-801,-8,1.2,-1,-1,1,.2,1,830,-830,.3,804,-799,-6,.3,19,.9,788,.3,-808,0,1,.101,-1,.7,809,70.2,9.2,812,-807,-5,9,-5,-1,823,-19,-805,-2,815,-815,.3,1,814,-10,-804,-1,.5,817,-12,126.3,.44,812,-812,1,0,3,10,-6,16,-15,-5,1,-4,1,2,1,0,-5,816,-10,6,0,-812,.44,38.2,23.11,3,0,-5,814,-2,-4,142.2,.44,822,-822,22.11,-2,809,-1,-808,19,.01,788,-788,.4,822,-20,9,-821,-10,3,-2,8,1},{14,75,1.31,20,1.32,531,128,718,27,26,5,12,4,16,1.11,10,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,-30.2,7,4,14,21,8,31,1.4,64,27,72,30,3,65,40,9.2,48,1.2,6,1.4,13,1.11,27,51.2,10,5,43,2,38,12,11,4,26,22,26,32,59.2,13,48,15,-7.2,8,21,1.3,23,4,1,7,14,5,8,1.9,37,1.3,30,1.3,174,1.99,157,2,21,2.1,4.3,10,17,1,6,1,20,11,7,1,17,5,2,6,13,8,1,5,6,1,5,1,11,13,-7.2,11,2,-6.3,34,1.84,109,1.31,2,1,5,1.94,109,1.21,6.1,3,4,2,8,155,1.5,2,13,1.3,13,9,1.3,2,17,4,5,16,30,6,5,1.2}},{{6},{4,-1,.6,1,.6,-1,.5,1,.5,805,23,0,-830,3,.6,-2,1,-1,1,0,4.2,.3,6.2,804,-804,0,5.2,.5,1,31.2,5,804,-4,-807,1,813,.4,-813,19,-13,822,-828,19.3,806,-800,-5,816,-818,835,-3,-2,0,-19,0,-801,-7,17,.3,-20,1,.7,2,-2,77,730,-807,.2,-1,2,-1,.2,3,5,797,-798,17,-16,1,-9,1,14.2,.6,1,0,16.2,7,13.2,0,-8,13.7,0,13.11,1,772,18,-3.2,15,-814,12,794,1},{14,75,1.31,32,1.11,659,771,5,12,4,22,1.5,11,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,31,37,4,35,8,31,1.4,64,27,72,33,188,1.2,86,5,83,53,22,99,61,22,36,1.3,23,5,80,1.3,33,430,2,21,2.1,4.3,10,18,7,31,8,43,14,6,1,5,1,11,40,-6.2,40,1.3,154,1.31,2,1,6,6.2,1.21,6.1,9,199,31,4,5,16,30,-6.2,1}},{{7},{3,0,1,-1,.5,3.2,2.1,818,-819,0,1,805,-798,1,-9,20,-19,0,1,.2,1,-2,.7,2,811,-813,2,804,2,-808,6,-6,3,-3,.4,1,8,.11,804,-813,.3,6.3,-9,5.4,821,-9,-822,818,-811},{1575,5,16,22,1.5,74,29,151,130,107,320,1.2,86,88,75,99,83,36,1.3,28,116,430,2,21,2.1,4.3,10,18,7,31,8,57,6,1,6,51,6,46,1.3,154,1.31,9,4.2,1.21,4.1,208,40,46,-6.2}},{{8},{7,829,-7,-3,-6,40,-37,-811,-5,5,-8,-1,0,9,-10,5,-4,2,.7,-2,1,-1,2.1,7,-7,808,-800,763,28,-800,806},{1596,22,1.5,74,29,151,237,320,1,250,99,150,116,430,2,21,2.1,4.3,10,25,39,57,6,1,3.2,216,564,40,46,12}},{{9},{9,-7,.6,7,-6,9,-3,-5,806,-806,-1,830,11},{1596,22,1.5,1161,150,116,511,25,102,58,6,216,564,40}},{{10},{2,807,-799,-5,7,764,27},{2784,777,25,102,64,780,40}},{{11},{2,3,-2,830},{2784,777,191,780}},{{12},{2,809,-33},{2784,968,780}},{{13},{-2.2,804},{2784,968,780}},{{14},{785},{4532}},{{15},{815},{4532}},{{16},{786},{4532}},{{17},{814},{4532}},{{18},{787},{4532}},{{19},{825},{4532}},{{20},{788},{4532}},{{21},{900},{4532}},{{22},{789},{4532}},{{23},{849},{4532}},{{24},{790},{4532}},{{25},{871},{4532}},{{26},{791},{4532}},{{27},{873},{4532}},{{28},{792},{4532}}}, + {{{1},{2,.2,3,805,1,-806,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,427,1,2,38,15,24,20,282,.2,-6,.2,12,3.2,5.3,-808,.6,808,0,-12,.2,15,-818,0,-1,2.1,-1,804,0,4,0,-3,.3,6,0,-4,0,5,28.2,0,33.4,5.2,-808,-11,78,-78,6,-6,11,-3,7,-14,813,-814,811,-810,-1,102.3,809,-813,5,6,-7,11,-15,5.1,7,4.2,0,4,798,1,-800,799,36,-849,26.3,807,-811,26.01,.2,51.3,800,-6,-803,-6,818,-818,153.4,0,25.01,14,-14,11,-4,8,-15,809,-804,803,-808,0,26.3,804,-808,26.01,11,-11,2.1,15,803,-9,-801,-8,828,-828,26.3,811,-815,26.9,792,-807,27.3,-5,9,452,342,-796,-2,810,-821,79.51,130.3,-5,9,-15,805,-791,-13,810,-811,26.51,182.3,105.3,805,-800,-5,.2,25.81,-3,7,25.2,-805,808,-808,103.41,180.5,-6,800,180.2,153.4,49.21,8,-8,100.5,-797,803,99.4,-2,-2,255.51,125.3,-14,50.61,99.6,2,-2,1,806,187.2,26.2,-3,-1,100.41,-15,837,-831,-5,-1,51.91,-4,8,357.2,-809,-5,813,-813,26.51,253.3,3,1,795,-1,-798,-11,815,-6,-809,27.3,810,-814,129.31,-6,10,129.3,-3,-11,79.4,9,-13,359.51,793,-3,254.2,230.5,359.21,181.5,26.2,181.2,26.5,281.02,815,-806,-9,26.51,182.4,791,3,-803,800,620.2,25.3,802,-806,25.01,0,52.8,807,233.4,309.71,800,-10,-797,-8,51.4,805,-809,408.91,258.61,459.8,334.71,126.5,-805,5,-6,1,639.4,126.11,-6,-9,334.7,-4,-2,51.4,410.21,151.5,482,317,-814,813,-812,52.4,817,-821,281.31,798,-794,640.2,-802,-7,811,561.61,462.6,809,-795,-14,0,809,360.4,693.71,793,1,-804,334.2,1,27.61,615.52,156.5,809,590.2,639.42,-1,822,716.61,26.8,821,25.4,803,-807,75.81,665.42,356.5,331.14,-15,810,-804,805,-811,50.12,639.2,-800,-14,175.4,826,-830,50.41,-13,835,-831,199.5,713.61,479.2,-794,-11,24.4,530.21,299.3,659.3,809,-798,2,-12,378.4,352.81,149.3,456.5,26.02,794,1044.5,350.02,810,-815,26.4,2,-6,301.51,-14,804,633.3,26.4,154.21,278.5,-6,796,278.81,77.5,806,-16,-800,0,-5,303.54,377.2,-5,177.41,-4,23.4,816,-21,-804,809,-7,834.4,253.21,25.4,-7,802,-801,-9,806,-806,148.51,174.5,-11,806,-810,822,-822,99.4,722,-726,26.9,712,-727,991.5,-12,2,826,-820,1244.5,53.21,630.5,1,794,-1,-793,.4,-16,732,-717,165.6,3,788,0,-805,17,-18,40.3,720,-724,40.01,.11,78,-78,817,-816,805,-637,-169,4,854,-46,1,-1,1,-5,.2,-808,1.2,811,45,-424,379,0,6,-11,-808,5,3,-2,809,0,-7,-799,804,6,-810,-6,5,-8,1,805,0,-800,7,-2,-6,803,-1,-807,6,-3,1,-4,815,.2,-2,-2,2,-810,808,-811,10,-2,725.2,2,0,-5,-808,4,-4,0,4,7,-11,-2.2,7,802,-802,0,795,-378,385,0,-809,-4,1.4,804,0,155.3,-13,0,-806,19,-10,810,-808,-10,818,-6,-813,1.2,9,810,-812,10,-20,.3,1.3,817,-8,-810,-2.2,808,17,-9,1,-813,10,-5,-11,284.2,-1,115.3,802,-803,1.2,3,800,-809,1,803,-809,532,291,-9,9,-822,1.2,809,-811,1.2,-2,2.1,1.2,817,.3,-6,-6,0,6,-2,-804,3.2,3,-14,137.3,813,-6,1636.3,-3,5,-2,.2,8,-8,19.2,-9,137.3,5,-8,807,12,-819,85.2,3,-8,149.5,-804,4,6,-8,6,-5,153.3,813,6,-6,6,-13,-803,803,30,-29,14,-10,-804,-1,5,59.2,161.3,833,-17,0,116.2,3,-4,0,7,56.3,797,-807,1,-3,.2,8,9.3,1288.2,5.3,.4,795,-372,385,-8,-802,-9,11,-10,13,-6,-4,1,-4,810,-1,-810,831,15,-832,1,-15,829,-818,-11,6,1703.2,7,391.3,5,-4,-1,1,7,-7,0,744,-745,0,810,-810,0,12,803,-815,6,828,-834,0,562.2,831,-832,16,792,6,-808,1307.3,830,-828,-1,1,0,-2,.2,173.2,1,-1,4,-4,.2,5.2,.2,2,826,-22,16,419.2,4,803,11,-818,1,49.2,5,-6,819,-811,164.2,.4,-807,9,-3,1,803,-810,6,1,-2,808,-6,12,32,-9,-842,.4,806,4,17,20,-39,.3,3,0,16,-9,13,-3,16,61,1.2,-31,32,-87,.3,442.2,.3,-2,810,.2,-12,6,-5,7,-4,0,2,-2,2,6,62.2,2,807,2,6,-12,.2,-807,.3,679.6,817,-9,-809,845,-844,827,-828,744.5,834,-40,-795,799,-813,-1,3,-2,833.5,-8,-1,-800,33.2,807,-816,-2,1814.6,806,-801,323.2,1,1799.4,1801.3,859,-68,-798,-8,0,878,-876,-2,1787.6,339,-793,-2,-11,0,679.6,1,838,-825,-13,0,844,-845,794.6,6,203.2,-5,.3,1,818,9,-827,828,83,-898,1,-15,838,-827,-11,6,801,-805,7,-9,217.2,248.8,-744,-1,1869.2,0,12,817,-829,6,843,-848,-1,.2,829,-830,16,804,0,-814,1633.3,.4,1130.6,171.3,1,-1,807,-1,684.2,-10,1,9,748,-2,-757,749.5,0,1053.2,-5,0,-1,117.2,1679.6,-1,1960.2,-5,807,6,-813,521.4,1667.3,-4,.2,-795,-11,0,815,-814,0,-1,1655.5,819,5,-825,-3,0,-11,1306.6,3,28,-834,-5,811,-3,-807,25.4,1628.3,-2,33,-825,-14,1,807,202.2,.4,2.1,-1,.4,2,.4,-2,8.5,716,.4,-716,8.3,2.1,-2,124.7,837,-837,815,-8,-798,-5,7,.4,-11,.4,11,.2,-11,.2,808,7,-4,11,-9,-813,.5,812,-810,240.3,805,4,34,-16,353.2,-808,.21,11,28.3,842,1,15,-46,19,20,-21,19,30,-72,5,28,-25,29,-22,-11,2,-6,12,19,-838,1552.5,-795,795,-800,1679.3,815,-815,1565.8,7,-6,-1,200.4,0,1169.3,199.6,-4,-2,831,-24,746.2,1544.5,-497,1489.2,851,-850,-1,0,172.3,795,-791,357.2,-799,1531.3,1,.3,2.1,-2,.3,11,.3,-11,4.1,1151.6,0,806,0,-792,-14,.3,208.6,-2,0,-801,-5,0,326.2,576.2,358.6,0,839,223.2,3,-3,.4,89.4,303.2,433.2,469.6,22.2,86.2,822,-1,-821,65.2,11.3,1,817,-812,807,-7,-806,1796.3,130.3,502,298,103,-37,3,-15,-865,836,-29,12,11,-9,-821,436.6,328.3,1622.2,.6,1353.4,1,807,-804,-6,3,-3,335.3,41.3,-6,1587.3,-3,7,798,26,-828,495.3,156.4,1335.3,0,806,-795,2,-12,352.5,1674.7,1,805,-806,13.6,.2,839,-825,794,-805,-3,.2,144.6,811,367.2,808,-813,807.3,604.5,-1,330.2,1585.2,831,-816,0,61.2,11,0,796,-807,815,-2,-813,86.4,814,9,-20,-812,770.2,811,12.5,-7,1,799,-799,2,795,-795,-10,1,720,-711,-11,829,-108,-721,1163.6,804,2,-2,-808,807,0,-807,727,-716,137.3,-11,4,1169.2,1158.7,806,-800,796,1,2,-81,-718,21.4,730,-2,-728,1153.6,.3,792,2,-794,.3,716,1,-722,21.4,16,0,715,-731,1161.6,790,61.2,-1,18,-7,20.2,723,-714,-11,0,723,2,-725,0,1719.2,1,0,-1,307.2,0,308.2,5.2,805,-794,172.2,17.3,805,960.2,0,-2.9,789,608.2,3,818,-821,-2.9,-18,2,-2,0,2,9,796,434.2,-1,.5,1,-1,1.3,-2,1,-3.3,-11,-1,1.2,-1,506.4,5,.2,2,0,4,0,756.4,1,.5,-1,75.2,1159.4,.5,10.3,4.1,8.1,8.7,802,110,1.6,-43,44,-78,79,-44,45,1.2,-49,50,-62,63,-111,112,-72,73,1.4,-87,88,-69,70,2.1,1.6,-115,116,1.2,-110,111,1.4,-102,103,1.4,-93,94,1.2,-140,141,1.8,-100,101,1.8,-137,138,1.8,-163,164,-139,140,1.5,-995,.411,1,.41,2.1,4.1,1,.52,800,.3,-790,-13,-2,377.3,4.1,8.5,446,360,-791,792,-805,732,17,-306,-434,445,-453,749,1,-298,-455,461,345,-52,0,-753,459,-455,.3,-2,1216.2,811,-812,806,0,171.2,8,1,796,-786,801,-801,-14,-5,5,1300.2,21.1,42.14,-796,452,-460,-1,0,2,458,-451,454,-462,8,-10,463,-453,456,-464,805,0,-342,-466,469,337,291.2,467,-468,471,335,-50,-756,1,469,-470,474,332,-49,1,-756,471,-473,476,330,-330,-475,474,0,-475,478,328,-46,-759,476,33.2,-477,6,797,-327,33.2,-479,-3,738,-257,-470,473,-481,758,-762,1,812,-329,-472,475,-483,802,1,-44,-761,811,-327,-485,489,317,-43,-763,16,472,-488,491,315,0,-41,-1,-274,-490,493,313,-40,0,40,-314,-492,495,311,-806,813,-798,479,-483,486,-494,808,-809,495,-497,496,-485,488,-496,0,-4,499,-487,491,-499,-1,765,-266,34.2,-501,865,-867,502,-503,506,300,1455.2,503,-505,508,298,1010.2,496,-496,499,-507,-1,0,507,-509,513,293,-806,822,-310,-512,516,290,-38,1,-254,-515,518,288,-804,1,772,-258,-506,509,-517,740,0,-742,518,-508,511,-519,804,-807,521,-510,513,-521,11,-14,14,509,-512,515,-523,2,-5,525,-525,528,278,-806,1,526,-527,530,-528,-1,1,527,-529,533,273,5,-30,-775,526,-532,0,501.3,.2,991.4,3172.4,-2,.7,3,4.2,824,.01,-19,12,-807,0,800,0,-4,6,3,17,.5,324,-324,.3,-822,795,6,1500.2,-2,-1,4,1,-3,8,10,-23,-1,2,1,11.2,4.1,8.1,16.1,2,1,-3,1.3,2.1,4.1,6.1,-1,821,.5,10,-10,.4,-11,-812,814,-8,-1,6,-5,-806,580.3,112.91,-17,350,-1147,112.5,1,12,.5,333,-333,.3,-815,801,3,-2,-806,112.85,815,.5,343,-343,.4,1869.2,6,-6,1.2,-808,110.22,-14,2,-802,110.5,-4,14,.5,338,-338,.3,-812,797,14,-15,-800,110.85,818,.5,6,-6,.4,-8,-812,2,-1,-1,.2,-1,823,-1,0,-13,21,-829,828,50,-877,1023.4,1512.3,1016.6,12.1,2543.6,1027.6,12.1,6.1,1272.5,11.1,5.1,39.6,11.1,1022.5,791,4,-810,0,7,-7,.3,2261.4,888.2,2213.51,2264.2,-810,5,2971.61,-16,1,-3.5,2,-17,6,-6,5,1.3,4,-4,69.2,4,.2,-12,-4.3,482,.3,-497,.7,812,-812,.7,4,-5.2,2,816,-823,-9,15,-15,842,-842,434,-433,-1,1,806,12,-816,-4,6,.2,770.2,.2,1027.2,.2,800,6,-811,.5,19,793,7,-819,811,-4,1,54,-861,820,-812,-9,91.5,796,7,0,-818,120.3,1662.6,814,-21,1063.2,-800,6,-11,0,718,88,-4,1,-796,710,-717,720,86,-803,-3,0,719},{2069,1,4,1,4,4.1,1,1683,1.42}},{{2},{2,1.2,805,2,-809,564,244,-1,-1,0,1,.4,-1,-740,748,-644,671,-8,12,-761,749,8,-8,8,-32,-725,336,-418,-1,434,53,27,20,2,1.3,-105,6.1,12.1,6.5,2,1,2,1,6,9,3,-563,.31,808,65,1,25,-65,-12,-9,-8,4,1,8,-10,0,-3,1,4,2,-4,7,-812,.5,-2,.11,1,.5,806,0,-760,214,547,-547,279,265,-805,5,802,-807,427,162,215,0,-805,805,.3,3.1,-805,262,20.3,271,-811,4,805,-382,19.3,-797,797,19.9,268,-808,0,-1,806,-806,428,21.2,.5,18.5,552,-552,18.4,10,795,18.4,39.21,269,-809,11,-1,795,-794,416,21.3,-804,804,60.11,8,2,795,5,-383,60.31,4,801,77.51,5,800,76.5,134.8,20.6,812,-810,420,75.61,134.2,-378,56.31,806,-803,802,17.3,56.21,132.2,93.2,19.4,2,-2,75.11,805,12,-817,229.4,-806,806,20.6,544,-544,249.3,805,-806,810,230.3,76.6,266.6,804,-810,2,426,18.11,227.3,817,-817,1,18.9,73.5,-1,5,801,5,-1,285.4,95.31,-1,14,792,-802,424,267.11,135.6,19,782,2,-797,417,230.41,812,135.4,97.21,208.2,-798,228.4,192.7,805,-543,39.71,363.6,3,802,1,-379,287.71,800,250.51,343.4,286.9,227.5,0,808,1,-3,56.4,-796,796,37.5,816,-554,22.5,-1,810,-810,364.21,252.5,88,-83,802,-808,385.51,-541,1,807,-797,795,28,-406,21.3,29,-29,215.11,2,-2,805,1,-805,277.3,0,-802,802,258.21,1,805,-798,-6,299.51,6,800,15,-393,104.41,432.3,-807,241.6,16,-16,489.31,4,-822,510.71,-1,6,812,-818,167.51,21.2,820,-821,512.4,381.41,515.6,605.31,16.9,548,-548,220.3,116.2,241.6,3,-3,241.11,739.6,93.8,280.6,0,529.31,375.3,6,811,-11,375.71,10,807,20.5,77.8,626.01,130.9,16.4,-806,3,425,168.61,5,800,-805,873.21,229.8,665.5,21.31,3,208.51,329.3,-807,429,226.42,790.7,847.8,-543,504.6,483.2,222.4,418.8,262.5,810,-811,810,-799,834,-417,753.31,-1,0,818,4,-394,40.3,-675,675,40.5,130,132,22.5,10,794,-794,795,129.41,-5.2,-11,7,-1,1,2.1,-6,732,-733,297.4,223.2,-1,5,6,-11,337.4,-691,691,56.5,.6,1,.5,18,29,-47,32,507,-539,37.3,2,-2,1.2,943.2,6,3,-813,804,1,-1,0,2.1,137.2,11,-2,-8,810,-792,27,-42,802,-637,-168,10,-7,5,797,-797,-7,809,-811,4,42,-37,797,-806,.5,65,-65,806,-797,-5,42,-46,.3,813,-394,-250,636,-796,16.2,811,-802,797,-803,803,0,-803,805,0,-245,-24,.4,-538,71.4,4.2,804,-806,0,812,-811,-1,.2,812,0,-4,0,-808,9,5,-13,1.3,807,-811,806,9,-2,-5,14,-10,1,2,0,-2,-773,-32,836,-12,8,-8,68,-68,69,-57,0,-844,840,0,-833,-7,0,1.2,810,.2,-803,806,.2,-9,.5,7,0,-5,548.2,-767,-46,814,-812,10,789,-789,2.1,-10,0,-9,.3,11,804,-815,1.2,-2,2,820,-813,10,0,789,-779,54,-74,799,85.2,3,803,.2,25.2,31.3,-17,139.2,9,21.3,-799,74,-64,789,-808,.3,3,37,-37,-3,5,-5,134.2,0,799,55.4,74,-83,1,.2,818,-288,-112,386,-801,15,32.2,-808,807,-806,-1,4,8.3,-805,1,5.3,.4,-805,808,-6,-797,48,-54,807,148.3,33,-837,224.3,808,-808,26,-26,150,695,-7,-28,361.2,40,-28,-12,9,0,-11,-808,861,-858,847,-850,812,-812,1.2,-1,821,-821,830,-20,-811,830,-828,6,70,184,544,23,-829,66.2,811,-808,803,1,590.2,9,799,-808,812,-800,795,-804,-3,808,-806,809,-807,-4,.4,4,812,-1,0,-804,795,0,-806,843,15,-46,-4,7,-4,11,-9,0,-6,4,.4,-810,.4,861,47,-34,35,1,-90,.2,-821,0,813,-6,12,.2,-816,.2,1,0,-4,.2,-1,6.2,.2,11,.2,797,3,-4,-375,374,-373,159,218,381.2,6,822,-827,0,431,11.3,255,-846,4,10.2,-1,433,10.3,214,360.2,-2,1,810,2,-812,805,-373,377,-376,13.4,10,799,-810,2,809,-379,25.3,235,-826,11,-1,799,-798,801,-381,36.5,8,2,799,-3,-375,33.5,811,-807,805,-810,0,432,44.6,5,804,-3,-807,199.2,1,205.3,813,-812,51,-52,317,533,-850,828,-811,811,-828,807,3,9,33,-39,-812,912,-910,-3,86.2,-811,205.2,829,-827,826,-10,-819,830,-22,30,-406,50.5,-1,811,-1,-2,-807,713,31,-33,0,96,210.2,432,378,-377,146.3,805,8,-814,827,-827,812,-380,158.5,862,-857,821,158.2,2,-1,160.4,43.2,10,-10,1,892.2,0,-1,813,-381,107.6,4,805,-3,24,-399,68.6,14,796,1419.2,-378,11.3,161.2,4,1,18,786,80.2,10,-11,806,2,3,2,-6,-1,5.1,5.4,1,4.3,12,-819,.41,11,.4,23,31,21,31,33,-139,12,11,12,10,-45,5.4,376,64.5,814,-809,1717.2,0,-2,208,211,12,3,54,319,6,397.3,13,9,-23,16.2,4,7,.4,-11,.6,1,810,0,-811,.11,806,21,37,-36,-17,-5,5.4,-808,.4,813,-2,-5,-3,4,344.2,432,295.6,773.3,-802,-4,0,428,183.5,3,802,21,-826,806,-93,201.4,-2,-374,17.5,783.3,-818,1,-1,42.4,12.2,88,733,-816,822,-828,291.4,-592,1286.3,799,24,-834,286,143,71,37,-251,4.3,-2,8,48,2,0,119,1,2,90,1,.2,-1,1,6,-4,-376,196.5,2,-3,1.2,808,-3,0,-807,338.6,-1,4,-3,602.3,-6,430,13.6,0,6,1621.2,821,-14,442.4,13.2,806,507.2,126.2,254,547,24.5,6,1391.2,.2,432,380,-379,61.3,290.2,118.2,0,714,135.4,-722,-70,.5,416,325.6,-858,822,-825,-2,348.6,780.3,348.2,806,-92,31.4,-806,430,196.6,6,801,23,-24,456.6,806,826.2,13,-10,-379,327.6,805,-811,5,428,10.7,-810,810,607.2,433,33.5,5,804,65.2,150.7,6,306.3,965.4,810,8,-819,0,822,-15,-375,93.5,.2,92.2,-394,385,-385,52.3,810,-1,-810,818,-809,836,-100,-33,978.2,787,-94,-713,50.2,152.3,122.3,11,-11,0,808,-802,801,-796,119,615,124.3,-94,-714,0,280.6,10,798,-798,820,-820,25.2,745,20.7,102.6,87.3,4,1059.3,0,1,-6,132,612,25.4,-708,1,-7,432,395,-394,159,226,-817,-1,5,6,-9,-2,44.3,-712,808,-94,98,-812,114,-114,-1,809,4,-812,1194.2,805,-800,-1,822,664.2,-11,.9,4,-3,0,806,12,11,-9,21,-842,.4,808,2,-2,869.2,-1,4,1,163.2,.3,821,-2,-6,-5,-730,734,-1,-4,5,3.2,1,14,8,-18,-1,1,-4,-2,803.2,0,811.2,-4,5,9.3,-802,1,-3,-3,476.2,-9,3,-4,-11,9,12,6.5,25,-30,28,-31,0,4,29,6.5,6,-7,2275.3,20,-12,6.5,-2,36.11,3,-1,514.4,7,6.5,36.21,-828,.99,13,.99,792,272,1.4,-199,200,1.4,-203,204,-196,0,197,1.2,-206,207,-282,283,1.2,-209,210,1,-204,0,205,1,-212,213,1.8,-264,50,0,215,1.21,-226,0,227,1.3,-297,298,1.7,-237,0,-8,246,1.4,-249,250,1.2,-293,294,1.3,-313,58,256,-255,256,41.3,-341,765.2,11,0,-10,711,93,.3,27,.3,-20,.3,-4,-731,-76,2,-2,707.2,.2,815,-814,809,-804,-5,-1,846.5,231.2,813,-1,-222,-44,-546,811,-811,812,-6,5,-3,3,1,-4,-1,-1,-1,1,250.2,-805,21.1,42.1,815,-815,810,6,1,-815,-2,815,-792,789,-4,-808,23,792,-806,803,-812,808,306.2,112.2,-807,1059.3,5.2,0,-1,2,9,-11,124.3,89,-90,13.3,18.2,0,37.3,-812,11,12,792,-733,730,-5,27,-834,153.3,-810,.2,9,-9,815,-734,729,-805,337.3,14,-14,1009.6,52.3,8,-7,0,-2,7.3,4,-4,8,-9,808,-725,-82,8,798,24.2,43.4,0,89,-89,63.4,-813,4,20,792,-815,1230.2,215.2,-724,719,5,15,-830,808,-717,-90,103.3,-808,1.2,0,127.2,134.2,78.2,808,-722,-85,8,804,-813,73.4,1,66.2,-721,-86,-1,0,2,151.4,59.2,805,-784,115.3,-801,-11,64.2,37.3,105.2,7.2,115.2,-810,-1,1,39.3,1049.2,-6,164.4,1,287.6,.2,805,0,7,937.2,.2,1,.4,2.1,-4,.13,12,795,.3,-1,1,.5,-806,814,-2,-2,0,-809,877.2,-11,1.2,2,1.5,5,10,794,-805,804,-12,.6,12,.53,-12,.3,-794,531.2,.3,-15,.3,3,.11,-8,84.2,2,4,-1,1,8,-6,1,5,362.2,-8,-1,0,-4,816,-11,1,0,2,885.2,68.8,801,.3,-6,6,.5,-812,837,-22,3,0,-817,812,-802,68.6,1530.2,803,-7,.6,7,.53,-7,.3,-798,.3,30.2,4,.3,-11,.3,11,4.3,10,-804,72.11,-9,0,-4,814,-8,6,0,3,0,-814,71.8,797,.3,4,-4,.5,1447.2,10,-14,90.2,818,-808,71.6,805,-816,801,-4,.6,4,.53,-4,.3,-799,.3,804,.3,-1,.3,-5,.3,10.2,4,.3,13,-811,71.11,793,6,-5,27,-26,26,-12,-822,.2,11,20,-19,0,795,-685,698,-698,409,285,-815,121,6.3,278,-808,6.4,12.1,12.6,274,-804,12.1,12.7,694,-694,12.1,12.4,6.3,36.9,12.11,261,1958.5,8,-9,1079.2,1924.4,5,-5,2261.11,0,-1,818,-819,5,2697.4,-801,241.2,22.4,78,-78,.5,4,226.2,-5,5,2,-2,4.2,1993.2,-540,1950.3,.3,89,.3,-89,943.3,1034.4,769,35,3,7,.2,-2,-6,14,-821,.3,3,-3,3,166,-169,1,960.3,807,3,0,-21,17,.2,-14,13,2,0,-808,796,10,2,547.3,1446.2,-796,823,-27,1,-808,852,-33,-387,1022.5,550.3,416.2,433,379,1055.4,0,457.2,-802,-6,1162,-1158,804,-712,-95,-1,2509.3,808,-707,-100,-1,-4.2,-8},{5,77,1.6,67,4,22,3,1,25,6,21,25,17,11,5,17,4,3.2,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,21,62.4,1,5,20,23,71.4,5,17,26,4,26,37.3,76.2,3,5,17,8,19,1,31,21,27,5,37,29,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,16,5,1.4,6,1.4,39,1,4,1,4,4.1,1,7,5,8,3,2,12,15,11,1,13,7,6,7,4,7,49.11,13,1,2,18,2,8,14,5,23,3,1,78,6,28,6,1.5,13,16,1.4,23,11,15,5,14,1,11,50,3,89.2,1,8,14,4,1,8,21.2,4,2,12,2,17,9,69.4,8,1.2,13,1,4,9,4,22,1.2,53,46,12,1.4,2,7,1,5,1,3,13,2,11,1,80.2,6,1,-5.2,2,1.2,457,2,21,2.1,4.3,22,1,68,132,1.42,63,20,1,88,3,1,66,6.2,87,6.1,12,110,33.2,5,39,54,1,4,1,-2.2,22,3,2,10,6,1.3}},{{3},{3,1,-1,0,1,0,4.3,-1,.9,3.2,806,6,-4,7,-4,11,-15,-1,7.6,10,3,-4,-2,-5,0,5.2,12.4,5,6.1,6.5,-804,0,35,-38,.6,1,-1,.3,-1,2,-1,61.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.11,19.3,58.5,19.7,.9,815,-815,13.1,66.01,.8,79.51,110.31,.41,806,-805,150.12,.7,4,-3,93.11,54.4,17.3,55.01,97.31,84.5,.2,140.21,208.51,87.01,100.3,26.3,42.01,156.3,102.41,805,-804,36.3,0,18.8,5.3,314.4,174.01,27.01,.31,815,-814,11.9,66.41,-797,-8,3,-3,127.01,61.3,3.1,70.3,143.8,2,-2,69.3,.3,73.01,.6,11.5,100.01,163.3,813,-812,18.4,97.01,.7,498.6,36.01,.51,252.41,0,-1,807,-807,82.11,213.3,22.3,829,-828,63.9,829,-829,115.41,53.7,292.31,119.3,207.12,93.6,807,-806,259.01,30.21,812,-811,476.41,13.3,.4,323.3,184.11,31.01,98.3,263.01,13.3,47.6,117.8,808,-807,54.9,819,-819,1,855,-856,192.11,145.01,248.01,165.51,-1,836,-836,286.01,299.6,.4,82.01,106.6,806,-807,1,36.01,.7,810,-809,0,805,-806,423.41,811,-811,356.21,.7,595.3,812,-812,2,804,672.2,.6,7.2,1,821,-822,172.11,7,804,.4,4,.2,-806,.2,-6,-2,-1,100.2,37.2,.2,811,0,-6,3,-808,.2,1,6,801,6,-814,111.7,814,.2,30,-39,7,-809,802,59.2,.2,806,5,-3,0,136.4,1,64,-64,0,75.2,1,806,.6,-800,800,-1,-801,806,-3,338.2,6,800,-788,19,-24,-14,805,-798,.4,-7,.3,19,-19,0,813,.2,-802,.2,808,-812,.8,-7,1,-1,133.2,68.3,71.6,807,0,6,0,-7,-805,818,-12,0,-798,802,-811,195.3,3.2,812,0,13,-825,112.3,211.7,16.3,.2,13,-17,-802,798,3,-3,21,-826,49.6,808,3,.2,-810,26.6,82,-83,4.2,393.2,-806,.91,2,-2,26.3,.2,6,-3,-3,0,830,-830,.6,3,6.2,1.2,-2,0,902,-902,5,-5,0,821,-821,.2,903,-28,1,28,-899,-6,1,.2,221.2,.2,11,.4,802,-6,12,32,-9,-840,.4,-2,.4,1,861,-860,.2,-3,.2,10,.2,798,.2,-807,762.6,110.5,518.4,7.2,446.4,3,-2,-2,1041.9,1025.5,6.5,.8,684.3,.7,915.2,.11,111.9,.21,942.4,840,-839,33.4,4,1,-4,32.3,-815,0,831,-831,390.4,.2,5,-5,622.7,10.3,793.5,0,810,11,-9,23,-29,4,5.1,5.4,-2,1,6,-4,7,-10,5.4,-810,.4,811,-7,1,8,22,-840,.22,57.3,3,588.3,-5,806,4,34,-16,-19,-804,.4,812,-4,-805,.5,7,.5,-14,.01,877.4,-806,2,-1,0,194.2,118.3,.4,8,887.3,87.3,84.3,867.3,1316.4,.4,1205.5,.42,847.3,-813,14.3,1028.5,205.3,.6,251.2,915.5,0,-1,9.2,209.4,893.6,6.2,288.2,.4,6,-2,.5,-4,.8,-1,1.2,726.3,17,636.2,239.5,500.3,927.4,7.3,.2,980.5,.2,1,3,-1,-3,.7,-1,1,.5,675.5,917.3,45.3,271.5,121.3,-1,1,.21,831,-830,.3,-1,815,-9,-806,.5,235.2,643.4,823.2,578.3,680.5,67.3,2,813,0,-815,80.3,815,6.2,.6,615.3,17,804,-822,.5,18,-18,30.2,3,54.2,3.2,803,1,6,-808,.9,-4,805,-803,2,1,817,-822,811,-5,-805,820,.3,161.2,4,-3,.5,243.3,.3,-2,.4,2,.2,119.4,.17,807,.99,-805,.99,9,.99,-10,94.2,0,1,.21,4.2,857,-36,-821,548.4,834,-27,97.2,-1,1,869,-870,.3,3,0,-3,1,27.2,.4,806,-806,2.1,0,12.1,24.22,661.2,0,11,-6,-5,289.4,3.1,1502.4,2,466.3,735.2,814,293.2,17.3,675.3,295.6,869,-868,31.4,808,-803,-4,229.3,716,-715,762.4,807,-808,1,875.6,6.3,836,-28,13.2,-1,0,808,-2,-806,6.2,812,349.3,30.4,-807,6.4,93.2,1,1246.4,5.2,2,55.3,1076.6,124.3,1285.8,809.2,865.3,111.5,869,-858,-11,912.3,-805,446.2,1176.7,0,805,120.3,80.2,-808,3,-3,7.3,811,-808,6.3,16,-16,612.3,1098.2,10.3,819,-808,-11,5,9,-10,2,800,.2,-1,.5,15,-15,.2,4,.2,8,-8,.6,3.1,6.5,.3,-1,-808,4,1.5,5,10,-23,1,-2,4,1,801,-805,14.2,505.3,.11,996.3,.3,4,4.3,8.4,5,.3,10,.3,792,.3,-816,.3,7,12.3,6,.3,47.2,5,-10,69.2,33.2,807,-803,79.2,0,804,.2,1,.5,5,-5,5.2,.2,6,-6,.6,3.1,6.5,.3,1,-811,79.9,807,-811,79.22,790,.3,-814,79.31,.01,1,810,-806,79.3,807,158.3,27,-27,.2,8,.2,-4,4,.6,3.1,6.5,.3,-11,-807,79.9,803,1009.2,79.12,785,.3,-809,79.31,.8,813,291.2,0,-3,0,2,0,-2,5,0,-5,737.3,3.1,.13,6.5,518.3,6.3,.61,304.4,7,-6,1376.11,809,805.2,1272.01,4,.5,809,-809,1847.5,.5,4,.3,-2,2.1,0,1,0,1,4.3,819,-821,.7,3,.3,-4,.2,434,-431,-3,.3,830,-829,.2,1286.2,.2,815,-8,1273.2,807,-797,802,-810,-3,2,-2,734.3,897,-887,-11,.5,1,.2,767.2,3,832,-28,1193.4,815,58,-67,-806},{1.8,12,1,11,1.65,15,1.81,34,3,1,22,3.1,3,1,5,17,4,25,6,-11.2,6.3,3.2,3,23,8,4.2,5,20,22,3,23.4,20,26.3,9,17,3,1,6,32.3,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,54.3,25,53.3,3,23,75.4,88.4,17.3,26,47.3,25,29.3,17,8,16,3,1,31,21,26,1,5,25,12,29,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,15,5,1.4,6,1.9,21,1.9,4,1.6,4,1,4.2,7,1,23.2,7,3,2,1,7,4,1.2,13,11,1,13,7,6,17.3,1,4,63.61,9,4,1.3,18,1.3,7,1,13,5,-2.2,7,4,8,3,1,17,1.4,57,17.2,27,1,3,1.7,13,1.02,23,11,1,-7.2,1,60.2,12,1,5,6,34.2,16,1,12,3,12,2,1,34.3,8,1,13,21.2,7,1.5,13,1,3,2,12,1.2,14,16.4,173.4,2,8,1.2,5,8,96.3,9,4,1,3,1.5,9,122.3,11,8,33,1,46,12,1.6,7,1.2,45.2,2,13,2,1.21,3,1.4,6,1,-5.2,2,1.2,422,2,13,18.2,2,9,46.3,5.1,10.8,16,1,5,1,4,6,-7.3,35,2,5,-7.2,11,22,6,12,-6.2,16,17,1,11,1,4,1.42,62,84.2,245.2,46,1.3,39,3,1,2,63,11.6,38,11.1,1,2,9,1,109,1.4,5,18,3,17,1,50,251.2,2.1,-2.2,19,5.3,2,10,6,1.3,7,4,1,4,7}},{{4},{15,-11,.6,1,.6,2,0,2,.2,2,-8,.71,38,770,-807,0,-2,1,6,-7,4,802,0,-804,2,-3,-1,817,-4,9,-10,-811,0,808,-1,-807,1,.2,-2,2,18,810,9,-827,-8,-3,3,-3,11,5.2,833,-7,-3,-6,40,-37,13,6.5,-818,-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,50,-42,-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,0,806,0,-807,813,0,-7,3,-804,3,.3,809,61,-64,.4,-811,.4,811,.4,-806,.2,-5,-2,2,809,143.3,26.2,-1,6,0,738,-744,6,-6,.31,1.4,-3,.9,805,2,3,2,-6,-806,805,6,-1,-812,0,817,-10,6,0,-4,7,-10,4,34,-16,20,-39,-3,6.5,-807,.4,2,-4,806,-804,804,-805,-1,829,-17,-810,10,-5,-6,.2,808,-808,.3,1,819,-819,.5,-2,2,-3,5,-3,0,1,7.2,-1,0,2,854,-15,-822,-15,852,-837,840,-848,855,0,-25,-838,.3,-2,0,860,54,-80,-824,-10,2,913,-916,848,-848,-1,1,0,805,-805,808,0,3,.3,2,8,-821,0,-3.2,0,-5,-2,0,1,.3,2.1,825,0,-824,-2,.001,805,191,-114,115,2.1,4.1,-114,-80,195,1.9,-198,75,124,-123,124,1.2,-125,1,125,1,-208,209,1.9,-211,212,1.9,-225,226,1.9,-224,225,1.9,-243,244,1.9,-230,231,1.9,-269,343,-269,-14,269.3,-6,-862,-2,0,2,3.1,6.5,1150,-1150,-1,8,833,311,-292,36,-55,30,-872,1,841,55,-897,4.2,12,-15,15,-41,-811,-1,838,16,-854,846,26,-872,860,37,-897,835,18,-853,-1,836,20,-20,20,-47,27,19,-49,-802,832,18,-850,802,30,19,-43,35,6,-851,804,-802,843,26,-60,-809,857,-5,-853,833,19,-855,3,833,17,-852,815,-20.2,-49,20,9,19,-852,-2,47.2,-42,-811,841,312,-1150,856,295,-1154,806,-803,856,13,-869,857,-47,-813,848,7,-853,-2,3,845,18,-866,1,847,307,-1153,846,308,-1156,807,41,13,-49,29,-841,.3,5,-1,10,-10,2,3,-1,-3,0,2,7,10,-20,0,1.5,5,5.2,4.1,8.7,-23,-1,.7,1,.2,3,44,.01,-47,.11,-1,.34,1,822,.11,-8,-1,-8,-804,-2,.4,50.24,816,.11,-11,6,-810,49.44,819,.11,-820,11,-9,-2,3,806,-810,807,13,2,-821,.3,-1,853,-47,.3,17,-9,23,-29,-35,41,-813,1,0,800,-800,790,-3.2,-793,487.2,811,85,-899,820,-14,36,322,-1160,-4,0,851},{14,75,1.31,20,1.32,3,138,128,8,25,18,25,134,49,3,6,46,72,1,3,5,21,6,17,52,10,44,9,21,25,126,49,113,46,174,9,11,7,26,3,2,1,11,4,5,11,1.11,4,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,-30.2,7,82.3,7,2,15,1.6,8,26,1.41,26,1.2,31,27,2,20,50,30,3,1,8,1,19,1,18,15,2,26,11,3,6,1.92,28,17,1.5,6,1.4,13,1.11,27,1.4,42.3,1,9,1,4,17,10,1,15,2,31,7,12,62.3,15,11,13,9,7,1.5,14,-7.2,18,24,15,2,13,-11.2,1,25,-4.2,-7.2,1,6,1,-7.2,6,1,7,1.3,3,44.3,8,7,4,1,4,3,1.2,8,-2.2,5,1,7,1.9,2,16,1,6,2,1,4,1.3,2,1.3,30,1.3,74,1.991,120,6,1,2,4,2,5,9,8,2,13,3.1,6.5,6,26.2,19.3,4,-2.2,1.2,2,51.2,2,5,-2.2,13.2,3,1,-2.7,3,1,-2.2,7,2,4,1,-2.3,1,20.3,-2.2,3,27.2,-2.3,1.2,-2.5,8.2,2.1,4.1,39.3,29.2,50.3,1,-2.5,1.3,12.5,2,1,2,83.3,1,26,1.84,2,1.01,7,2,1.11,13,1.53,5,1.3,5,1.92,2,1,3,2,1.94,16.01,1.82,16.1,3,4,1.2,8,116,21,5,13,1.7,2.1,-9.2,75.2,5,12,4,5,8,7,1.2,12,17,71.3,90.2}},{{5},{809,-801,0,2,.2,2,0,-4,6.5,-8,.5,3,8.4,-3,0,2,0,19.5,6.3,-6,-4,1,810,-809,0,-2,1,-1,.11,1,9,-8,8,-8,.2,8,0,797,-797,.3,-9,805,1,0,-806,806,0,-805,-1,19.3,.2,20,-21,800,-808,1,.2,807,-799,0,799,.3,-799,.3,-8,2,805,-808,805,3,0,-808,808,.4,-807,0,-1,2.1,4,-3,0,4,.2,5,0,-5,806,-809,-1,0,7,-6,.5,825,-9,-817,.2,1,0,2,-2,.11,5,.4,-3,5,799,2,-803,-5,8,-9,0,808,-801,-8,1.2,-1,-1,1,.2,1,830,-830,.3,804,-799,-6,.3,19,.9,788,.3,-808,0,1,.101,-1,.7,809,70.2,9.2,812,-807,-5,9,-5,-1,823,-19,-805,-2,815,-815,.3,1,814,-10,-804,-1,.5,817,-12,126.3,.44,812,-812,1,0,3,10,-6,16,-15,-5,1,-4,1,2,1,0,-5,816,-10,6,0,-812,.44,38.2,23.11,3,0,-5,814,-2,-4,142.2,.44,822,-822,22.11,-2,809,-1,-808,19,.01,788,-788,.4,823,-21,9,-821,-10,3,-2,8,1},{14,75,1.31,20,1.32,531,128,718,27,26,5,12,4,16,1.11,10,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,-30.2,7,4,14,21,8,31,1.4,64,27,72,30,3,65,40,9.2,48,1.2,6,1.4,13,1.11,27,51.2,10,5,43,2,38,12,11,4,26,22,26,32,59.2,13,48,15,-7.2,8,21,1.3,23,4,1,7,14,5,8,1.9,37,1.3,30,1.3,174,1.99,157,2,21,2.1,4.3,10,17,1,6,1,20,11,7,1,17,5,2,6,13,8,1,5,6,1,5,1,11,13,-7.2,11,2,-6.3,34,1.84,109,1.31,2,1,5,1.94,109,1.21,6.1,3,4,2,8,155,1.5,2,13,1.3,13,9,1.3,2,17,4,5,16,30,6,5,1.2}},{{6},{4,-1,.6,1,.6,-1,.5,1,.5,805,23,0,-830,3,.6,-2,1,-1,1,0,4.2,.3,6.2,804,-804,0,5.2,.5,1,31.2,5,804,-4,-807,1,813,.4,-813,19,-13,822,-828,19.3,806,-800,-5,816,-818,835,-3,-2,0,-19,0,-801,-7,17,.3,-20,1,.7,2,-2,77,730,-807,.2,-1,2,-1,.2,3,5,797,-798,17,-16,1,-9,1,14.2,.6,1,0,16.2,7,13.2,0,-8,13.7,0,13.11,1,772,18,-3.2,15,-814,12,794,1},{14,75,1.31,32,1.11,659,771,5,12,4,22,1.5,11,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,31,37,4,35,8,31,1.4,64,27,72,33,188,1.2,86,5,83,53,22,99,61,22,36,1.3,23,5,80,1.3,33,430,2,21,2.1,4.3,10,18,7,31,8,43,14,6,1,5,1,11,40,-6.2,40,1.3,154,1.31,2,1,6,6.2,1.21,6.1,9,199,31,4,5,16,30,-6.2,1}},{{7},{3,0,1,-1,.5,3.2,2.1,818,-819,0,1,805,-798,1,-9,20,-19,0,1,.2,1,-2,.7,2,811,-813,2,804,2,-808,6,-6,3,-3,.4,1,8,.11,804,-813,.3,6.3,-9,5.4,821,-9,-822,818,-811},{1575,5,16,22,1.5,74,29,151,130,107,320,1.2,86,88,75,99,83,36,1.3,28,116,430,2,21,2.1,4.3,10,18,7,31,8,57,6,1,6,51,6,46,1.3,154,1.31,9,4.2,1.21,4.1,208,40,46,-6.2}},{{8},{7,829,-7,-3,-6,40,-37,-811,-5,5,-8,-1,0,9,-10,5,-4,2,.7,-2,1,-1,2.1,7,-7,808,-800,763,28,-800,806},{1596,22,1.5,74,29,151,237,320,1,250,99,150,116,430,2,21,2.1,4.3,10,25,39,57,6,1,3.2,216,564,40,46,12}},{{9},{9,-7,.6,7,-6,9,-3,-5,806,-806,-1,830,12},{1596,22,1.5,1161,150,116,511,25,102,58,6,216,564,40}},{{10},{2,807,-799,-5,7,764,27},{2784,777,25,102,64,780,40}},{{11},{2,3,-2,830},{2784,777,191,780}},{{12},{2,809,-33},{2784,968,780}},{{13},{-2.2,804},{2784,968,780}},{{14},{785},{4532}},{{15},{815},{4532}},{{16},{786},{4532}},{{17},{814},{4532}},{{18},{787},{4532}},{{19},{825},{4532}},{{20},{788},{4532}},{{21},{900},{4532}},{{22},{789},{4532}},{{23},{849},{4532}},{{24},{790},{4532}},{{25},{871},{4532}},{{26},{791},{4532}},{{27},{873},{4532}},{{28},{792},{4532}}}, {438,1.42,135,1.7,7,1.7,2,1.49,-533,.2,93,.3,276,1,.4,1,.5,1,0,2,1,-192,.6,193,0,1,-193,.6,1,2.1,.6,192,.2,-547,548,15.3,-191,.8,10,.3,7,.2,175,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,-160,.01,161,.3,7.2,-161,.01,1,2.1,.01,160,.2,-574,574,2.1,19.4,3.2,39.3,.8,159,1.3,5,.4,2,.4,4,.4,39.3,8.3,2.1,8.4,12.5,.2,2.1,4.1,2.1,-258,232,2,4,2,1.5,3}, {81,.531,657,1.2,2,1.3,-664,.082,677,-18,9,31,2,-32,31,.2,-700,672,26,4,-32,1,0,55}, {3,.235}, diff --git a/luafight/Modules/Battle/Config/Data/SkillLogicConfig.lua b/luafight/Modules/Battle/Config/Data/SkillLogicConfig.lua index cb9e1a8f6..af1ef5e2e 100644 --- a/luafight/Modules/Battle/Config/Data/SkillLogicConfig.lua +++ b/luafight/Modules/Battle/Config/Data/SkillLogicConfig.lua @@ -1,7 +1,7 @@ local SkillLogicConfig = { __count = 2668, __indexs = {1.31,998,1,9,1,9,4.1,1,9,1.2,8,2.1,14.01,16.4,10.1,24.21,22.21,50.62,12.4,1.3,7,20.8,1.2,8578,1,99,2.1,4.1,1,9499,1.482,9716,1.93,3,1.31,9945,1.99,901,2.1,4.3,6901,1.93,2,1.6,953,1.2,8998,1.5,5,2.1,4.1,8.1,6.5,39895,1,469,72.4,4.1,8.1,108.02,150.31,2,7,1.3,7,45.21,12.11,69,8.6,183.6,1.2,641,10,590,10,290,10,490,10,90,2.1,4.3,190,6.1,10.5,97443,26,2,298,2,122,176,2,198706,1,99009,127.61,2.1,1.22,16.1,32.71,1.4,6,2.1,4.1,6.1,1.42,14.21,16,1.91,81,2.1,4.1,4.3,198981,1.38,299917,1,109,20.3,86,4.1,8.1,16.1,32.1,64.1,80.97,4989,340.5,927,163,10,89287,10,1,9,3.2,769,6.3,1,179,-10.2,5.3,769,5.4,169,417.5,779,27.5,169,-10.4,1,9,1.7,27483,19060,848990,-10.5,50,2.1,4.3,550,1.5,95,1.5,3895,-10.6,453.8,900,-10.01,900,476.12,899,24.2,-10.01,990900,1.32,11087,12.5,79,4.3,89,81.6,16.1,32.13,6779,6.5,12.5,10,1,59,163.4,160.3,20.1,40.93,6869,7.2,89.6,99.4,789,13.1,26.52,6789,-10.4,60,144.9,806.4,759,16.1,32.13,6859,8.3,189,1,799,6.1,12.11,1045488,1.2,312.02,20.1,6.1,900779,-11.2,78,-11.2,878,4.1,8.5,4996318,2010650}, -__values = {0,1.62,2,1.5,2,5,2,1.3,3,-2.2,4,1.51,-2.2,1.4,12.2,3,1.2,2.1,2,2.1,16.2,1.6,2,1,8.2,3,1.32,4,-2.2,1.7,38,-100.8,11,1,9,1,9,4.1,8.7,6,3,17.51,14.1,28.1,4.1,8,1.2,26.42,478,600,400,200,600,200,400,600,-1000.4,999,1,3,1.2,6,1.3,3,4,2,1.81,8.2,11,1.51,-7.2,914,411,10,579,1000,121,879,-2000.2,-1000.2,1.11,989,1000,2000,-1000.2,7.2,-4000.2,1000,3000,2.1,-2000.2,4.2,4000,6000,4000,2000,-3000.2,2000,4000,1000,5000,8.2,1.4,2,8,97,100,1.4,106,1.2,148,83.51,29,141.13,81,108,9.7,19,1.2,537,111,389,6000,2000,3,3997,6000,8000,2000,6000,-4000.2,9.2,-8000.3,-4000.2,-8000.2,1.6,6,89,10,2,8,90,1.2,3.2,10,1.2,377,211,10,90,-100.2,189,311,12.2,1,8278,3,9997,1,2,98,700,9199,2,9998,-10000.2,4,9996,-10000.3,1,10,490,11499,-12000.7,4000,1,110,12,88,7789,12000,-14000.5,10000,4000,-14000.4,-16000.01,-18000.01,-20000.4,19999,1,2001,10050,7949,-20000.4,32051,19060,1851890,1000,6996350,2010650}, +__values = {0,1.62,2,1.5,2,5,2,1.3,3,-2.2,4,1.51,-2.2,1.4,12.2,3,1.2,2.1,2,2.1,16.2,1.6,2,1,8.2,3,1.32,4,-2.2,1.7,38,-100.8,11,1,9,1,9,4.1,8.7,6,3,17.51,14.1,28.1,4.1,8,1.2,26.42,478,600,400,200,600,200,400,600,-1000.4,999,1,3,1.2,6,1.3,3,4,2,1.81,8.2,11,1.51,-7.2,914,411,10,579,-1000.2,-2000.2,-1000.2,1.11,989,1000,2000,7.3,-4000.2,1000,3000,2.1,-2000.2,4.2,4000,6000,4000,2000,-3000.2,2000,4000,1000,5000,8.2,1.4,2,8,97,100,1.4,106,1.2,148,81.51,29,139.13,81,108,9.7,19,1.2,8,1.2,527,111,389,6000,2000,3,3997,6000,8000,2000,6000,-4000.2,9.2,-8000.3,-4000.2,-8000.2,1.6,6,89,10,2,8,90,27.2,90,10,1.2,377,211,10,90,-100.2,189,311,12.2,1,8278,3,9997,1,2,98,700,9199,2,9998,-10000.2,4,9996,-10000.3,1,10,490,11499,-12000.7,4000,1,110,12,88,7789,12000,-14000.5,10000,4000,-14000.4,-16000.01,-18000.01,-20000.4,19999,1,2001,10050,7949,-20000.4,32051,19060,1851890,1000,6996350,2010650}, __exVals = {285,.4,null,.2,.1,.3,.5,.6,.8,2.08,.15,.9,.25,.7,1.248,.72,.96,3.2864,1.2,2.4,2.16,.693,3.6,.416,1.095,2.5,.32,1.5,1.9,.18,.48,.45,3.5,.12,.24,6.5,1.8,.95,1.4,.05,2.88,1.44,1.6,3.2,.35,1.25,1.72,.55,1.1,3.15,1.16,2.2,.47,4.5,2.6,2.12,.16,.42,2.3,1.7,2.23,1.55,.03,.56,1.63,.65,1.04,4.3,2.1,2.9,3.29,5.4,1.3,2.35,.06,.01,.36,22.5,4.8,3.8,2.8,.08,.14,1.56,4.1,3.33,1.03,.49,.39,.66,2.7,5.2,1.14,.44,.92,5.5,.0001,.0002,.0003,.0004,.0005,.0006,.0007,.0008,.0009,.001,.0011,.0012,.0013,.0014,.0015,.0016,.0017,.0018,.0019,.002,.0021,.0022,.0023,.0024,.0025,.0026,.0027,.0028,.0029,.003,.0031,.0032,.0033,.0034,.0035,.0036,.0037,.0038,.0039,.004,.0041,.0042,.0043,.0044,.0045,.0046,.0047,.0048,.0049,.005,.0051,.0052,.0053,.0054,.0055,.0056,.0057,.0058,.0059,.006,.0061,.0062,.0063,.0064,.0065,.0066,.0067,.0068,.0069,.007,.0071,.0072,.0073,.0074,.0075,.0076,.0077,.0078,.0079,.008,.0081,.0082,.0083,.0084,.0085,.0086,.0087,.0088,.0089,.009,.0091,.0092,.0093,.0094,.0095,.0096,.0097,.0098,.0099,.78,.21,.85,.77,1.75,1.12,3.286,7.2,.88,.09,1.456,1.88,5.7,3.4,5.6,7.5,.20,4.2,.27,.624,1.643,.94,.73,1.45,.04,.07,1.78,1.11,.59,.11,.84,1.01,1.67,2.01,5.3,.54,.75,.89,8.6,9.05,9.5,10.45,11.45,13.75,.97,1.33,1.02,.22,2.25,.035,.045,1.46,1.22,.38,1.328,1.664,2.912,.50,.46,.52,.58,.64,1.19,1.34,1.42,.13,1.58,.43,27.5,.23,5.8,4.9,5.9,7.4,.63,4.6,.82,.41,.17,1.05,.86,17.5,18.4,19.3,20.25,21.30,23.45,.10,1.08,.02,1.15}, __fields = { 'Id', @@ -21,11 +21,11 @@ __defaults = { 1 }, __refs = { - {{{1,1},{518,0,-158,146,.2,12,.2,-12,-49,-97,158,-28,-33,33,0,7,-4,2,0,-127,2,147,-20,0,20,-27,0,27,-20,20,2.1,-27,5,-18,40,0,-20,-27,27,.2,-6,0,-123,-8,157,8.2,-20,-2,.2,22,.2,7.2,9.3,29.2,-2,0,22,-20,-6,0,-1,-33,-89,25.2,.3,17.2,-60,0,38,.2,-2,24,27.4,.2,-20,-31,31,0,-7,.2,24.4,.8,-60,60,-27,.2,53.5,23.2,-57,57,-46,0,46,0,88.2,7,0,-2,-4,26,-60,3,.2,58,.71,-61,.2,61,.5,4.3,.8,-61,.5,61,.2,12.7,.11,-58,24.2,.32,20.5,4.2,20.5,-54,.2,54,.5,-13,.2,13,12.4,20.4,.5,-49,172.2,10.3,18.5,.8,-97,.2,158,6.2,60.3,-52,.2,52,60.4,36.4,4.3,22.2,97,.2,48,50.6,18.6,94.6,38.3,-9,58.3,-25,25,0,-25,-36,61,4.1,-25,.3,4.2,249.3,.3,9.2,25,32.2,61,0,35.3,-61,-97,97,12,-12,0,11.3,4.2,-25,13,-49,8.3,.99,-97,.99,97,4.3,130,7,-37,5,0,32,0,20,-52,0,-5,0,30,-25,-5,5,32,-7,-7,14,-5,-2,.2,-25,32,-3,-34,37,0,-32,25,-14,-13,35,-40,1.2,-24,21,33,0,-33,12,-6,-4,0,-2,17,-17,48,.5,24,.5,-63,.5,-7,.5,70,.5,-60,.5,60,.5,-39,.5,39,.5,-36,.5,-19,.2,1,0,1,42,-58,57,317.2,.2,3,.2,4,.2,-40,25.2,10.4,0,4,362.3,288.2,-7,-30,57,.5,-20,.2,20,.5,-27,8.2,294.2,16.2,0,8.2,-2,59,.2,-59,3.2,34.2,1,.2,6,44.2,.3,44.4,10.6,9,1,0,30,4,0,16,-56,23,1.2,4,44.2,-30,1,-1,-11,-101,83,2,-2,14,-14,.01,8,-8,.01,-1,186.3,-52,52,189.3,33,.2,7,.2,-37,.2,5,.5,32,.5,20,245.3,-8,.91,3,.2,30,172.2,.2,-5,.2,5,.2,32,.2,-7,2.1,.2,-26,.91,33,263.2,12.3,-3,.2,-34,.2,37,84.2,14.2,.2,-14,.4,-13,.4,35,.4,-40,.4,2,1.2,-5,0,4,0,1,0,1,-27,.4,21,23.2,.9,-33,.4,12,0,1,49.2,.4,-4,.9,-2,.001,4,.81,32,311.5,36,2.1,8.2,303.2,81.2,25,-25,0,11.3,.2,298.2,7.2,16.2,20.3,18.2,15.2,25,25.2,11.3,36,.2,-36,1,-1,24.4,36,3.2,0,24.3,6.2,38.3,47.4,7.5,36.3,.4,3.1,57,.4,-82,.4,25,.9,6.2,-57,13.2,.4,36,.4,-36,.4,18.2,-58,.4,58,22.3,16.2,26.3,.9,26.2,-49,.4,106,34.4,.91,30.2,44.4,-57,.92,8.2,118,28.5,4.1,-118,12.7,-82,.2,82,0,-57,.2,57,4.1,.6,8.7,12.9,28.8,8.1,-118,.2,118,16.9,4.1,16.7,56.9,16.4,24.4,-117,.2,117,4.1,76.8,44.9,52.11,28.31,112.51,136.21,36.6,82,.8,467.2,3.1,.8,9.1,-117,1,-1,-1,3.2,0,1,14,46,-61,49,12,0,267.2,-60,-98,158,5.2,704.2,61,-151,-7,160,-3,-150,4.3,58,56.2,59.3,57,.5,-57,1,-1,-61,16,0,-15,103,-104,0,13,21,-123,.5,98,.5,25,.5,-2,.5,-30,1.3,-5,0,21,0,2,1.2,0,-42,-80,.5,1,-1,2,-2,3,-3,4,-4,.11,97,8.2,6.2,.71,41,.01,-19,.01,11,1,26,905.3,60,880.2,2,926.2,-129,943.3,7,0,-7,0,27,.3,1,101.3,3.2,406.3,440.3,-58,6,-9,12.3,15.1,30.82,434.3,456.2,810.2,0,15.3,0,-25,-33,-3,7.3,18.1,36.53,850.3,541.4,796.2,16.6,13.1,26.42,0,58,938.5,25,-58,33,-36,9,-9,3,-3,148.5,3,20.1,40.93,2,0,9,-11,36,25,-59,6.1,12.11,241.4,118,-57,4.1,728.3,3.2,899.2,130.3,61,0,3,54,-82,25,0,12.4,4.1,.2,57,-118,30.2,25.5,36,82,-110,843.3,37,847.5,-32,.2,-8,.2,60,0}},{{1,2},{574,.637,5,1,6,-5,-7,.9,7,.4,-7,.43,47,.4,-47,.711,5,.2,-577,.2,572,.2,6.2,-5,.344},{14,1.621,340,1.515,3,1.85,2,1.2,2,1.05,35,1.82,21,1.32,2.1,21,1.73,21,1.43,212,1.4,16,1.4,36,1.4,6,1.4,26,6.3,8.4,2.1,4.1,4,1,4,1,4,1.6,6.1,6.5,4.1,8.1,22.1,34.22,40.9,2,1.8,2.1,4.1,4.1,7,30,1,2,1,2,1.5,11,1.131,309,4,-8.2,-4.2,6,-2.2,6,1.32}},{{2,1},{360,145,0,-12,-12.2,3.2,0,-64,64,0,12,-12,12,9.2,12,-27,15,.2,14.2,24,-10,.2,-147,.5,157,.2,6.3,.2,6,.2,-6,.2,97,.2,48,.8,-48,4.2,.5,-132,.2,132,.5,-144,.2,50.2,-1,1,0,-82,81,-145,146,-146,97,-35,0,-61,7,5,-12,.3,113,-114,8,69,-67,-9,98,-1,-85,120,.5,-19,.2,1,0,1,29,.2,-83,83,-138,118,1.3,-123,111,-101,131,0,65,-65,-146,0,1,.2,12,85.2,.5,-1,.91,8.2,97,.4,1,2.1,4.3,13,.4,-114,.4,8,24.3,68,.4,-67,1.2,-12,.12,1,.4,98,1.4,-5,.4,-84,.4,-14,.99,8,-8,8,0,56,0,-64,1,63,4.2,95.2,64,4.1,82,-1,-48,.4,36,48.3,-49,.4,-89,.4,-8,.4,146,.9,-133,.9,133,.4,-82,.4,82,.4,-138,.4,138,8.2,.2,33,.2,49,.2,-138,.5,-8,.2,64,.2,-51,.2,1,158.2,.8,-30,.2,-116,.2,97,49,-49,1,48,0,-49,49,-48,-98,.51,99,2,-12,.7,56,0,-145,81,64,-48,.3,-97,145,8.2,3.1,6.4,.32,-138,138,0,3.1,6.4,139,-138,-8,100,46,.3,106.4,-145,.2},{17,-2.2,8,4,2,6,2,1,6,2,5,-2.3,6,-8.2,15,10.3,8,1,2,48,1.2,25,1.2,16,1.2,4,1.5,10,1.2,34,1.2,7,1.2,22,4.3,8.4,18.2,13,1.8,16,1.5,4,1.2,15,1,3,2,5,2,-3.2,1,4,1,5,1,7,1,407,1,11,5,6,3,1,2,47.2,3,1.2,58,1.11,32,13,2,19,37,3,2,1,4,1.4,2,1,17,77.4,54.2,1.5,45,1.22,60.3,1.91,4,1.9,6,1.41,6,1.91,6,1.4,11,1.47,21,1.34,45.2,17,1.9,7,3,2,41,1.4,19.3,1.9,21,1.4,66,1.4,16,1.92,11,1.4,41,95.2,1.2,67.2,2.1,28,6.1,4.3,53,10.5,23,1.2,18,1.2,73,1,2,1,3,-17.2,-7.2,43,1.4,-2.4,5,1.6,7,2,17,1.7,23,6,1.2,4,11,-16.3,11,-2.2,16,2.1,4.3,12,3,-2.2,6,3.1,6.5,15,-21.3,12,1,3,45.3,3.1,3.1,7,3,1,4,59.3,11,5,1.2,5,20,1.2}},{{2,2},{574,.444},{168,1.2,25,1.2,16,1.2,4,1.5,10,1.2,34,1.2,7,1.2,22,4.3,8.4,18.2,13,1.8,16,1.5,4,1.2,15,1,3,2,5,2,-3.2,1,4,1,5,1,7,1,582,53,1,17,6,2,1,79,1.91,25,1.91,39,1.91,36,1.95,21,1.34,2,1.2,17,1.9,7,3,2,41,1.4,6,1.41,6,1.9,21,1.4,66,1.4,16,1.92,11,1.4,41,60.2,1.2,3,2.1,1.2,28,6.1,4.3,53,10.5,23,1.2,18,1.2,73,1,2,1,3,-17.2,-7.2,145,-16.3,11,-2.2,16,2.1,4.3,12,3,-2.2,6,3.1,6.5,15,-21.3,12,1,3,32.3,3.1,3.1,7,3,1,4,46.3,11,5,1.2,5}},{{3,1},{506,.2,-146,13,133,2,-135,0,1,-6,.7,202,-64,0,-146,.6,64,82},{303,1.2,148,26,636,17,172,1.2,447,1.4,221,1.2,123,7,34,59,1.2,-2.4,390,28}},{{3,2},{574,.91},{303,1.2,148,26,636,17,621,1.4,221,1.2,123,7,34,459,28}},{{4,1},{360,.5},{2204,1,-2.4}}}, - {{{1,1},{2,0,4,8,.5,-4,-5,0,-3,125,-49,49,-124,124,.3,-102,0,102,-116,-9,125,0,10.2,0,-125,.4,78,-78,79,46,.3,-125,13.2,20.3,16.2,.2,-46,-79,125,.4,7.2,15.3,-125,0,125,.2,-44,-81,1,22,0,-23,.3,87,-87,87,-86,52.2,-125,.2,81,-81,88,37,-38,38,-43,0,43,.2,-42,-60,45.2,.3,43.2,79,45.2,.2,-124,.2,-1,1,-1,.6,48.3,.3,7.2,.62,1,13.2,.5,4.3,.8,1,.5,8,.2,-8,12.6,.5,12,.2,-12,.92,20.5,4.2,.2,8.4,5,.2,-5,.2,4,.2,-4,12.5,24.7,.8,4,14.3,-4,.8,22,.2,-23,8.2,.5,50.2,19,.2,-14,32.3,46.4,20,.2,-20,.2,3,.2,-3,4.3,48.4,54.4,22.3,.5,8.4,18,.2,-19,18.5,-5,.3,5,79.2,43,-43,1,24.3,-1,.4,3.2,42,-42,23,-22,.2,56,8,-65,0,5,-5,65,5.2,1,155.3,1,3,-3,64,-64,8,-9,0,1,23,-24,0,3,46,-49,0,98,.99,1,2.1,4.1,49.3,2,-2,0,3.2,2,1.2,-4,5,-4,11.3,2,0,-2,7,-7,7,-4,5,-6,-2,0,1.2,3.2,9,-9,.2,15,-1,-12,-2,2,-2,.4,9,-9,-7,.11,26,.5,-10,.11,11,.5,-11,.5,9,.5,-25,.5,26,.11,-121,0,239.4,4.1,8.7,.7,125,.6,312.6,.8,287.2,352.2,286.2,-78,120,15.2,.33,125,-33,0,33,-29,0,-96,21,104,32.2,125,.7,-97,-6,-22,14,-9,-5,5,-5,0,27,-22,6.2,22,0,-27,8.5,14.5,0,1,0,-1,.2,21,0,77,0,4,290.5,2,.2,-2,.5,4.2,-79,.91,80,274.4,.2,5,242.5,20.3,.2,-77,.91,77,.2,7,.2,-7,4.3,22.4,-6,18.5,79,6.2,.9,9,.4,-9,.41,15,.4,-92,12.2,.4,-2,.4,2,4.2,.91,-77,.911,-25,268.5,251.5,-1,0,19,0,-19,0,21,0,-21,1,8.2,-20,105.4,4.1,.3,113.4,107.3,302.3,40.3,5,241.3,322.3,21,-20,-1,20,35.2,7.1,58.8,338.3,573,.4,-510,.4,-63,.9,6.2,-573,.4,1,.4,18,.9,52,.9,-71,18.3,12.2,4.2,-523,16.3,5,.4,19,.4,-5,.4,503,.4,-556,.4,22,.4,33,16.3,-25,4.3,-2,.4,526,32.2,.92,8.2,572,38.5,4.1,-572,12.8,.2,573,0,4.1,4.3,.6,12.1,12.11,8.1,0,-572,.2,572,16.1,44.31,32.8,-529,.2,529,4.1,12.5,-568,.2,568,0,-514,.2,514,0,-553,.2,553,68.12,112.61,-515,.2,515,.6,-564,.2,564,32.41,573,.8,3.1,6.1,9.7,1,26,-26,4,15,-20,0,14,-14,1,3,-4,592.4,3,1,-4,727.3,-1,23,0,-23,795.4,1,100.3,55.4,.5,-573,39.2,335.3,636.2,355.3,23,.5,-23,.71,2,.5,91,.5,-16,.41,-74,.01,74,.12,17,.01,3,.01,-97,.4,834.2,1,-1,.3,52.4,386.5,823.2,.2,626.3,78.3,5,-5,82.3,4,515.3,391.3,16.1,32.03,.3,21,-21,.2,1,0,11,-7,23.2,10.2,-12,-8,15.1,30.1,0,27,-28,5,-4,16,-16,484.3,.3,1,11.1,22.02,764.3,5.2,778.3,180.3,8.2,69.2,127.3,8,78.2,20.1,40.1,20.4,22.4,6.1,12.9,0,4,0,-4,572,-510,-63,1,572,367.2,58,-59,0,45.2,573,-514,-4,-5,1,5,0,14,503,-556,22,-39,573,-525,1,-2,526,24.2,-1,415.2,-572,31.2,573,-512,-60,51,1,-53,573,-471,.2,2,.8,-2,708.3,13,.2,-116,0}},{{1,2},{4,.7,83,-83,83,0,3.2,.2,-8,0,-75,83,-1,0,-72,.2,-10,.2,10,.2,-9,.2,9,4.1,12.6,.5,-1,.5,1,.2,-3,.2,2,.2,6.2,18.7,.2,20,.2,-11,32.9,4.2,24.6,6.2,-1,4.2,.8,10.5,.5,62.3,10.5,30.3,.5,34.4,52.4,30.2,88.6,42.6,10,.3,-10,10,0,-10,1,9,-10,0,1,-1,10,11.2,53,-53,-12,65,-63,63,-10,-53,11.2,0,10,-9,9,30,-40,6.2,-11,2,.2,68,-69,83,0,-82,120,0,-121,1,9,56.2,71,.95,-72,.4,30,-30,0,67.2,12,-21,.3,12,-12,107.4,55.2,12.2,-12,12.3,50.2,24.4,75.2,.4,-3,.9,71,.9,-68,.4,-1,.7,69,.8,-34,.5,-35,101.3,34,.2,31,.2,-65,.5,42.3,.5,9,0,-9,-1,149.5,9,73,-83,95.2,0,9,14.3,4.3,10.1,20.91,9,.3,10.3,172.2,1,8.1,16.1,0,-1,246.3,87.4,6.1,12.9,214.6,-9,9,8.2,-9,0,78.2,12.1,24.22,56.4,10,4.1,8.7,.4,35,-35,58,11,-6,-19,-43,59,-28},{1.2,26,1,2,15,19,2,6,10,4,2,25,2,1.2,4,1,-2.3,1,17,6.2,2.1,1.8,4,1.71,10,6.3,13,8.2,1.5,12.3,10.2,1.5,7,4.2,1.02,7,1.71,4.2,10,14.4,1.11,4.1,18,1,3,1.11,-2.2,1.3,-2.2,1.8,3,1.4,2.1,520,42,6,4,9,48,1,12,2,4,10,8,1,33,1.91,182,1.91,41,1.91,45,3,1.6,3,1,3,1,13,1.5,2,1.6,13,1.2,2,1,3,4.1,1,98.2,3,1,36,1.4,11,1.9,91,1.9,21,1.4,16,1.4,26,1.2,8,1.2,28,18.2,2.1,4.3,18,1.2,38.2,4.2,23,6.3,12.2,6.2,38,6.3,77,2,5,-2.2,1,3,-2.3,3,10,57.3,127,9,3,1.3,40.5,6.1,12.01,1.5,5,4,2,1.3,2,1.4,6.1,12.11,1,-2.2,3,3.2,5.1,10.1,1,2,4,2,1,32.2,3,5.3,9.1,18.61,86.4,2.1,4.3,2,4,4.2,20,4,2,5,3}},{{2,1},{79,.2,-75,75,12,0,-3,0,-6,3.2,12,-12,9.2,-66,66,-87,78,-3,0,8,0,4,-85,.2,19,.2,-20,.2,-1,.2,1,.11,4.3,.41,20,.2,-16,.2,-4,.2,26,.2,-6,.3,20.3,6,-5,62,-57,15,-22,6,0,58,-42,-20,74,31,-18,0,21,1.2,2,-1,-24,28,9,-16,-109,.11,75,9,-9,-70,70,42,-8,0,13,0,-47,-76,125,-123,.5,87,.2,-87,.2,74,.2,31,.2,-73,.91,55,.2,-88,.91,109,.4,1,2.1,.4,2,.4,-1,.4,-111,.91,87,.4,28,.4,9,.4,-16,.4,-108,.95,62,.91,-62,.91,20,-19,0,19,-19,-1,1,-1,.21,-1,.9,62,.4,-62,.4,67,.4,-46,.4,-15,.4,-5,.41,63,.9,-43,.9,-20,.7,126.3,.2,66,.2,-46,.2,42,.2,-62,.41,5,.2,-5,12.3,-67,6,-6,10,-9,0,48.3,1,.8,88,.6,-14,0,18,.7,-18,9,-6,0,-3,-75,.3,21,44,-63,19,3.1,6.5,3,-4,31,-31,4,4.1,8.7,1,.3,-1,4,16,-20,3.1,6.5,41,5,-46,48,-63,46,-31,-20,62,1.2,-64,164.2},{17,-2.2,8,4,2,6,2,1,6,2,5,-2.3,6,-8.2,15,10.3,8,1,2,48,1.2,25,1.2,16,1.2,4,1.5,10,1.2,34,1.2,7,1.2,22,4.3,8.4,18.2,13,1.8,16,1.5,4,1.2,15,1,3,2,5,2,-3.2,1,4,1,5,1,7,1,407,1,11,5,6,3,1,2,47.2,3,1.2,58,1.11,32,13,2,19,37,3,2,1,4,1.4,2,1,17,77.4,54.2,1.5,45,1.22,60.3,1.91,4,1.9,6,1.41,6,1.91,6,1.4,11,1.47,21,1.34,45.2,17,1.9,7,3,2,41,1.4,19.3,1.9,21,1.4,66,1.4,16,1.92,11,1.4,41,95.2,1.2,67.2,2.1,28,6.1,4.3,53,10.5,23,1.2,18,1.2,73,1,2,1,3,-17.2,-7.2,43,1.4,-2.4,5,1.6,7,2,17,1.7,23,6,1.2,4,11,-16.3,11,-2.2,16,2.1,4.3,12,3,-2.2,6,3.1,6.5,15,-21.3,12,1,3,45.3,3.1,3.1,7,3,1,4,59.3,11,5,1.2,5,20,1.2}},{{1,3},{14,.5,-9,.31,9,-9,62,0,-53,-10,1,0,108,0,-87,.9,-21,.91,21,4.2,.5,9,-9,.3,12,-12,2.1,4.1,.31},{294,1.2,4,1.2,64,1.2,10,1.5,46,8,1,5,6,3,9,5,6,1,2,1,581,48,1,80,1.9,242,1.91,177,1.9,261,1.2,133,1.2,88,174,-16.3,19,7,13,2.1,4.3,71,2,19,2.1,4.3,1,-6.3,19}},{{3,1},{5,.2,62,-57,-5,0,74,.2,-54,.4,-20,.21,62,-36},{303,1.2,148,26,636,17,172,1.2,447,1.4,221,1.2,123,7,34,59,1.2,-2.4,390,28}},{{1,4},{5,.4},{381,1.2,46,47}},{{2,2},{5,.2,2.1,-5,.22,26,.91,-26,.91,30,.91,-30,.62,62,.4,-62,.71,62,.2,-62,.2,61,.2,-61,.7,4,.3,58,-62},{414,1.5,37,9,649,116,1.9,93,1.9,56,1.93,21,1.93,6,40,56,1.4,11,1.4,96,1.4,21,1.4,31,1.4,61,1.2,33,1.2,8,1.2,98,1.2,381,-20.3,73,-21.3,16,-6.3,10,20}},{{2,3},{5,.21,26,.91,1,.91,4,.5},{417,1.2,811,1.9,218,1.93,217,1.4,909}},{{3,2},{67},{453}},{{4,1},{5,.5},{2204,1,-2.4}}}, - {{{1,1},{577,0,-575,0,1.2,-2,1.2,9,-11,1,574,48,187,-187,12,1,-1,-27,48,-656,0,608,23,0,-23,27,0,-27,23,-23,2.1,27,-27,203,-203,48,-78,48,-48,48,0,38,-32,-632,0,582,50,-50,44,-44,38,0,-38,38,-38,9.2,11.4,13.3,-38,44,25.2,32,1,-665,27.2,23.3,19.2,83,0,-83,28.6,2.1,26.3,-18,18,0,32,-41,41,113,-771,.2,603,-603,620,0,-620,603,0,-603,812,-812,617,.2,-617,644,-644,10.3,617,-617,609,-1,1,0,-1,48,-33,12,1,-5,101.2,-53,-582,594,-2,3,-10,-5,8,-3,3.1,6.1,6.5,6,21.8,9.1,12.6,-1,15.5,30.12,15.1,81.42,12.9,18.9,197,-148,149,-784,.2,583,8.2,-588,.2,585,40.02,12.5,192,-178,24.11,41.2,1,.2,593,140.5,3.1,-595,54.7,154.6,42.3,-187,6.2,-586,.2,592,99.11,6.3,37.2,230.3,42.8,-594,61.4,24.6,64.5,257.8,100.4,28.2,584,-5,8,2,-588,607,12,-28,0,194,-166,-31,35,-4,-10,-21,31,-30,.2,20,-22,20,-16,-582,776,-196,-13,34,-612,611,-21,-588,596,-598,590,-588,587,0,24,160,-161,-601,610,-621,591,26.2,0,32,-620,588,23,-612,590,0,3,74,1.89,-119,21,3.1,6.5,-644,.33,570,-570,.2,570,-561,-9,.7,-2,2,3,.5,-5,.14,9,.5,-9,.11,609,2,-611,603,-5,25,-6,-35,41,3.2,-4,66,-28,-42,-574,578,-4,3.2,-578,18.7,-39,66,-36,493.2,23,-8,12,513.2,0,-74,444.3,498.2,476.3,2.1,38,44,-55,-27,50,-632,430.2,603,55,-49,-607,-2,603,0,-23,-580,64.31,574,-574,0,16.51,608,184,0,-213,238,-216,7,210,-818,644,0,14,-49,-1,-5,0,-21,-576,1,573,213,-213,0,-579,579,2.1,5.2,0,819,-819,0,1,820,-242,8.2,14.2,595,-16,6.3,61,-25,-36,36,-36,5.3,66,0,-644,.62,246,4,0,4,.2,54,0,3,.2,2,.2,14,.3,2,0,-329,.32,249,55,0,7,0,15,0,4,0,3,.3,2,2.1,.2,-337,.32,251,56,34.3,3,0,14,4.3,3,.2,1,0,1,0,-336,.21,822,1.3,-248,-577,.41,575,0,1,6,-584,256,60,0,18,.2,4,0,5,4.2,.2,2,.3,4,0,-351,.43,254,75,.2,7,.3,7,15.3,6,.3,3,0,-24,9,7.3,7,.2,82,.2,5,28.3,-113,13.21,-131,22,.2,9,.3,6,.2,5,.2,83,13.3,-129,13.21,-98,11,.2,87,.3,7,.3,37,.3,9,.2,5,108,-21,3,56,-38,-21,21,-21,-3,2,0,18,-18,1,0,21,-2,168,-178,8,-25,25,735.2,-17,21,-12,8,-17,17,-8,4.2,3,-3,21,-22,22,-21,17,12.2,-20,2,-2,12,0,20.3,26.4,-8,-598,588,-588,4,-3,607,168,-195,42.2,-10,10,189,-169,8.4,62.2,189,-189,10,-9,17,68.3,3,32,-13,10,-26,-3,45,4,-69,.4,49,7.4,137,-129,-12,198,-63,-151,17.6,56,-4,25,-1,131,-177,-600,621,-619,776,-192,20,-608,589,-588,637,-49,71,-68,31,-624,.9,622,46.11,7.2,36,21,-40,50,-47,58,-37,-21,56,-644,-4,.4,2,.4,637,139,58,1.2,-266,56.4,-26,156,3,-134,-7,131,-765,614,37.3,162,-197,66.4,-152,20.4,-158,3,15,10,-1,-645,.4,569,.4,16,80.4,594,55,-37,169,17,-800,589,41,-629,624,5,-31,23,18,-47,16,74.4,36,32,-11,191,-63,-159,24,-36,15,39,-88,98.8,17,61,-648,646,-644,568,.4,46,21.31,70,-45,27,-52,0,-571,601,59,-89,0,40,-14,15,-41,.6,5.4,15.1,0,66,-49,65,-82,15.5,10.1,0,25,32,-5,55.2,20.01,36,21,10,-67,0,57,-31,41,5.2,70.51,6,3,31,-40,0,17,61,4,35.2,-571,.2,571,0,-568,.2,568,53.6,13.4,122.5,72.5,10.5,26,23,-8,24.2,127.41,57.6,82.01,15.1,-572,595,187,-210,50.11,57,-57,.8,66,-66,3.1,.8,9.1,68,0,-638,638,-640,640,202,-202,0,-25,-14,-602,616,1252.3,-44,-572,0,584,32,-616,616,-38,267,-261,-12,44,-616,11.2,-12,15.3,-12,1,0,5,-5,0,-573,573,.5,5,794.2,0,1265.3,-578,40.2,187,43,-846,.5,847,1.5,-48,1.5,-5,1.5,-809,.62,5,.01,-3,.12,9,.01,-11,.01,658,-41,-617,617,-35,83,-57,23,-631,631,-23,4.2,0,575,42,-42,-570,570,102.2,28,-28,45,-29,-589,584,-6,6,15,27,-626,587,23,-21,-4,-585,599,-4,4,-10,16.1,32.13,-4,3,54,-7,-61,1,-1,2.1,1,-586,1,599,-8,4,3,21,-34,4,-4,10,20.1,40.93,-1,5,87.2,767,-183,15,-8,19,-26,77,-77,48,-48,13.1,26.1,5,6,8,-12,-2,43,-43,61.2,1,10,4,20,-34,41,157.5,-1,21.1,42.14,40,-30,14,1,-26,25,16,6.1,12.11,-10,-599,0,600,-29,46,-619,602,-29,16,-17,-572,598,256,-236,-618,573,93,135,-193,28,-635,2,-1,571,16,-587,0,4.2,185,-770,569,25,17,188,53,-237,-46,3,-3,14,-14,201,-202,-570,574,2,-5,-571,.71,9,.2,759,-148}},{{1,2},{2,1,-1,575,.6,2,-1,-576,1,0,-1,.3,1,0,656,113,-770,.2,572,-571,0,-1,.5,1,.5,-1,.2,15.3,-75,-582,0,1,.4,14.3,0,-1,0,33.7,18.2,24.3,-1,.4,1,.2,-1,1,.01,-1,0,657,15.2,11.4,0,1,.3,19.3,.9,8.3,-1,.81,15.3,.02,4.3,.8,66.3,.11,575,.2,-574,10.4,4.2,.41,4.3,.62,2,.2,-2,.2,581,.2,-581,.2,30.5,24.6,.8,16.2,-578,22.2,.8,40.2,-575,.8,12.2,32.3,.5,20.3,32.3,580,.2,-580,.2,644,.2,-645,.5,3,50.3,126.3,50.4,.11,26.4,-1,2,-2,132.3,34.3,110.3,6.2,576,-575,.3,-2,2,19.3,33.3,632,-633,8.2,164.4,575,-575,0,574,115.2,242,5,3,2,3,53,3,1.2,2,14,-3.2,1.2,-2.4,2.1,1,79,1,12.2,-2.3,1.3,2,1.2,32,2,5,5.2,2,1.3,4,1.7,6,1.6,2,1.82,2,3,1.4,-322,40.1,80.97,-563,2,599,-596,4,-6,0,2,0,4,-9,0,3,6,-7,3,6,-6,0,4,3,1,-6,-2.3,0,-4,-2.3,-6,566,70,-646,656,131,-141,-37,-599,566,-566,6,771,1,0,-790,2,18,562,46,-27,-26,239,-230,-2,6.3,0,9,-578,1.4,2,-9,.5,19,.5,12,3,-2.2,1,4,-25,.5,66.4,1,2,556,29,23,-53,9,-7,-562,1.5,-5,1.5,-19,1,440.7,308.4,.3,312.4,310.3,8.2,442.4,0,2,317.3,.6,9.3,429.5,480.6,8.4,44.4,.21,1,.7,-1,26.4,0,1,-2,470.4,48.6,56.3,.2,557,-302,-252,-2.2,-1,3,5,-10,2,3,1,3,4,-4,2,4,-12,-2.2,-4,-2.2,-2,-3.2,-6,3,5,-14,1.4,2,4,2,4,-14,1.2,-3.2,4,-1,3,7.2,-2.2,-5,1,2,6,-2.2,-10,-3.2,29.2,0,5,4,-9,-2.2,-3,-4.2,-13,54.2,4,5,-13,1,2,603,176,-134,-76,182,-107,-31,-27,222,-189,-633,.4,792,35,1.2,2,-66,30,-188,189,-26,-112,16.2,-24,57,-633,0,1.2,10,2,-2,-2.2,601,33.4,-754,1.3,-2.2,629,-624,810,-806,738,29.4,-117,144,-199,200,-168,23,5.4,-631,.45,1,139.3,2,-1,.51,551.3,-1,.91,1,.91,-1,.9,648.3,.4,1,.41,2,.4,-2,8.2,16.2,.9,3,.4,-4,.9,22.5,.9,14.3,.8,208.5,4.1,630.3,576,1,41,-42,1,4,678.2,590.7,.62,22.5,246.3,3,15.2,-1,1,573,-574,.3,1,582,-581,-2,.7,1,583,-12,742.2,4.3,298.4,-1,602,-602,1,.2,647,.5,-648,.71,33,-3,.3,1,-31,.31,1,603,336.2,31,.7,-605,.9,128.4,4.1,4.1,575,78,-53,.8,-600,.01,276.3,.7,575,7,-581,776.5,-1,.2,2,-2,297.4,6.2,305.3,662.3,14.1,28.72,389.6,574,-571,-3,380.3,80.2,74.4,14.1,28.22,.4,59.4,889.4,.3,69.5,10.1,20.41,919.5,940.6,115.7,16.3,19.1,38.73,540.4,4.1,8.6,142.3,892.5,0,1,.7,2,-2,1052.4,3,-4,0,25.3,221.4,13,2,4,-16,1.2,8,510.2,4,5,510.2,-1,-3.2,584,0,-35,901.2},{918,258,1.91,25,2.1,1.91,34,5,1.91,36,1.911,92,1.4,16,1.4,36,1.4,6,1.4,26,6.3,8.4,2.1,4.1,4,1,4,1,4,1.6,6.1,6.5,4.1,8.1,22.1,34.22,40.9,2,1.8,2.1,4.1,4.1,37,1,2,1,2,1.5,43,1.5,403,4,-8.2,-4.2,6,-2.2,6}},{{2,1},{2,.4,572,.2,-572,.2,4,0,598,-28,-574,.4,602,-23,-579,636,-625,565,-576,578,0,24,-26,-576,0,576,2,.2,-578,2,0,570,6,-6,6,-578,.2,576,.2,-575,.2,-1,.2,2,.2,-2,.2,3,8.3,574,14.3,12.4,10.2,576,.5,10.2,578,.2,-579,.5,1,12.3,1,.5,16.3,40.4,.5,2,.2,1,30.3,575,.2,-568,.2,-8,.5,577,.2,-576,.5,575,8,0,-582,15.2,2,0,72.2,34.2,3,26.3,30.4,46.4,68.3,.8,615,.2,-613,6.2,.5,636,.2,-635,.2,601,.2,-602,.11,18.3,.5,598,.2,-598,.2,147.2,-570,4.3,-571,.2,-3,.9,572,-570,0,570,-571,0,90.3,-568,-6,11,-13,.4,613,-602,-11,.2,589,-13,-574,-2,0,1,-1,13,-13,593,-17,-4,5,-577,1,773,-774,0,8,-8,0,4,-4,1,571,0,4,-576,11,-7,7,561,-561,564,-575,583,-7,39,44,-31,-26,-19,6.5,-602,0,576,-572,-4,578,-6,-571,-2,1,11,649,0,-60,47,-647,.2,609,-609,2,6,569,-576,-1,1.2,-2,3,.3,574,7,-584,4,.2,-4,.22,1,.2,252,0,56,0,4,0,3,0,14,160.3,3,.3,1,0,241,1,-579,574,0,2,0,-4,.2,5,0,1,.2,6,0,-5,.2,3,194.2,615,-43,5,41,18,-636,.4,11,.4,-7,.4,7,.4,-8,.91,574,1,6,-5,-579,13.2,642,-53,167,68,-252,-583,.42,5,.91,3,.91,-8,.93,4,.91,-4,.3,576,-576,1,575,-2,-2,4,-577,575,3.2,-1,2,-3,1,0,2,-1,6,0,1,0,-1,-7,.2,1.2,574,-569,7,-6,-8,0,32.2,13,559,-571,.4,1,.4,574,-4,-571,575,2,-576,574,3,.4,-1,.4,-6,0,5,.2,1,.4,-578,87.3,582,20,-608,589,-588,627,-4,-623,1.2,-4,.44,1,.4,578,.4,-7,0,6,-573,.2,-5,.2,579,393.2,314.3,577,0,-577,579,0,-579,6.3,.9,1,360.3,-576,360.3,577,.4,255.2,.5,4,.5,6,.2,-11,.8,8.2,578,-568,565,-575,7,-6,-1,0,801,-802,1,0,4,-3,3,-2,-3,0,2,0,-1,1,576,-574,.8,7,.6,-9,0,2,.7,-4,1,3,580,-10,-574,577,-575,-2,22.3,571,-571,1,-1,576,10.1,20.91,.4,-1,261.3,7.2,573,-572,8.2,10.1,20.81,1,-2,96.2,104.3,.2,8.1,16.1,575,582.3,-577,258.3,0,53.3,1,13.1,26.1,2.1,-2,2,577,-578,5.1,10.9,-579,32.2,0,2,-578,577,1,-1,432.2,11,570,-570,-11,578,24,-591,0,485.2,2,576,40,-40,423.2},{1.2,15,-2.2,7,1,-2.3,6,2,1,2,4,2,5,-2.6,-4.2,6,-2.3,11,12.3,5,2,1.2,-2.2,21.2,1,17,1.2,4,2.1,1.92,7,1.5,4,1.11,4,1.32,4,1.8,12.3,4.2,1.92,4,1.71,4,1.02,7,16.2,1.83,4,22.2,1.2,3,1,3,1.03,2,1.21,2,1,407,1,11,5,6,3,1,53.2,4,3,1.2,58,1.21,31,11,-2.3,4,9,4,37,3,2,1.3,2,1.4,2,1,3,2,4,8,91.3,1.3,6,1.2,16,50.2,1.91,22,1.22,7,8.2,1.91,4,1.9,6,1.41,6,1.91,6,1.4,11,1.841,66.3,1,3,1.32,13,1.2,40.3,4.1,67.3,3,1.6,28.3,1.9,11,1.41,66,1.4,16,1.43,34.2,2.1,26,18.2,2.1,1.2,8,6.1,6.5,4.1,6.1,56.2,18.6,23,10.3,20.8,18.2,12.2,18,10.5,63,1,82.3,7,2,5,2,1.3,3,-2.3,-3.2,7,94.4,43,1.4,-2.4,5,1.6,7,2,17,1.7,23,4,172.3,1,3,25.2,41.4,6.1,12.01,1.5,-2.2,4.2,188.4,7.1,14.31,1.3,7.2,-2.2,4.1,8.1,310.4,1.7,3,317.5,7.1,14.01,255.4,2.1,2.1,8.2,3,1,2,1.6,2,1,11,4,69.2,-3.2,14,1.2}},{{2,2},{3,-1,.3,1,0,-1,0,575,-1,-574,.7,576,-576,.6,6,-5,.2,-1,1,.4,574,.2,-575,.2,575,.8,6,.2,-6,.5,-574,.2,574,.5,-1,.2,2,.2,-576,.2,1,.2,573,.2,14.3,.2,-572,8.5,4.2,1,41.2,8.3,575,6.3,2,4.3,2.1,1,52.3,576,8.5,44.2,38.2,7,.2,-581,14.3,10.4,48.2,4.2,-2,72.3,572,40.3,7,.2,-7,.5,6.2,28,.2,-603,20.3,6,.2,-579,46.3,580,.2,-580,4.3,-6,10.3,-571,34.3,1,.2,5,56.3,84.2,74.2,32.2,50.2,64.4,602,.2,-28,0,1,-1,-573,573,0,3.1,-572,0,573,-574,574,-1,10.2,574,-575,574,-573,0,574,-576,4,-4,1,0,575,9.2,572,3,-2,0,-575,36.3,12.2,-574,578,0,54,-634,1,610,-610,.3,1,-2,611,-34,76,-652,652,-633,-18,.5,-1,.5,2,-2,0,18.2,75.2,-576,1,573,-556,0,-16,0,-2,1,-1,574,0,-574,576,-2,2,-4,4,.4,93.2,610,.2,26.2,2,.91,-2,.52,1,.4,-2,.4,792,-16,20,36,-250,34,44,174,-210,-46,198,-200,220,-191,-23,-5,0,39,0,-43,.2,30,0,-25,.2,41,.3,-40,.2,58,-636,.4,575,29,49,-26,-27,-581,.4,-19,.91,576,0,39,.3,26.3,.2,-25,.3,41,.2,-40,-3,0,-1,.3,2,.2,-4,.2,5,.3,1,.2,6,-582,.91,-3,.91,577,0,-4,.3,5,.2,1,.3,6,.3,-5,224.2,340.2,-573,111.3,4.2,1,185.3,0,574,.4,7,2,-2,-5,-2,.2,145.3,7,0,2,-576,569,-2,9.2,-572,4.2,202.2,571,18.3,.3,2,382.2,0,575,198.2,39.2,2,.9,3,.4,-3,143.3,256.2,2,-4,-571,.9,597,9,-11,-594,648,-40,0,-35,273.2,.9,582,37,-21,9,22,-10,-30,20,-2,22,-47,10.4,-26,-600,621,-619,776,-207,41.2,0,6,0,1,-579,.7,314.2,358.2,2,320.2,0,82.2,7.2,.5,11,.5,576,20,-19,-590,322.2,0,2,373.3,0,2,-2,.2,9,340.3,80.2,5,0,-5,-2,0,-2,3,0,207,-208,0,2,12.3,28.5,259.2,575,0,448.3,273.2,-578,583,-9,7,263,-270,350.2,0,2,-1,-3,3,-3,2,-572,572,166.3,-573,644,-41,.2,-23,19,167,-162,179,-139,-41,.5,-604,0,853,-272,-7,453.2,1,44,-45,.2,3,177.2,1,369.2,574,1,-1,-571,9.1,18.71,1,0,6,98.3,572,9,-9,533.3,15.2,13.1,26.52,407.2,644.3,8,-8,652.3,9.1,18.71,-575,575,95.3,9,-8,-1,1,9.3,21.2,13.1,26.52,146.4,563.2,5.1,10.9,2,0,-3,9,-7,-2,7,-7,.3,577,-565,562,216,-791,0,628,-52,.2,426.2,617,-618,.2},{1.2,15,-2.2,7,1,-2.2,10,1,2,4,2,5,-4.2,2,6,4,6,4,2,11,6,2,1,5,2,1.2,4,1,-2.3,1,17,6.2,2.1,1.92,7,1.5,4,1.11,4,1.32,4,1.8,12.3,4.2,1.92,4,1.71,4,1.02,7,16.2,1.83,4,22.2,1.2,3,1,3,1.03,2,1.21,2,1,407,1,11,5,6,3,1,53.3,3,2,58,1.21,31,11,-2.3,4,9,4,37,3,2,1,4,1.4,2,1,3,2,4,8,94.3,1.3,6,1.2,16,50.2,1.91,22,1.2,27,8.2,1.91,4,1.9,6,1.41,6,1.91,6,1.4,11,1.4,6,1.831,68.3,1,3,1.32,13,1.2,42.3,4.1,69.3,3,1.6,30.3,1.9,11,1.41,66,1.4,16,1.43,36.2,2.1,26,18.2,2.1,1.2,8,6.1,6.5,4.1,6.1,56.2,18.6,23,10.3,20.8,18.2,12.2,18,10.5,63,1,82.3,7,2,5,2,1.3,3,-2.3,-3.2,7,94.4,43,1.4,-2.4,5,1.6,7,2,17,1.7,23,4,227.4,3,25.2,41.4,6.1,12.01,1.5,-2.2,4.2,52.2,2,1.4,7.1,14.31,1.3,7.2,-2.2,4.1,8.1,315.4,1.7,3,2,7.1,14.1,53.3,2.1,4.3,8.2,3,1,2,1.6,2,1,11,4,69.2,-3.2,14,1.2}},{{2,3},{6,-3,-1,.2,6,0,-6,.2,574,-574,574,0,-574,.5,579,-578,.2,1,.2,17.2,2,.2,-3,.2,3,.5,4.2,8.2,12.3,.5,-1,.5,1,.5,21,.2,-20,12.2,.5,-2,.2,5,.2,-4,32.7,624,.2,-623,44.3,604,.2,-605,.2,4,46.4,24.2,.5,8.2,591,.2,-591,46.2,22.3,-5,34.3,6.2,4,.2,87.2,4,.8,24.2,18.2,5,12.3,-7,56.3,595,.2,70,.2,-665,12.3,598,.2,-603,.2,5,96.3,18.4,-591,.2,86.2,603,.5,-605,.4,-1,0,2,3,-4,3,0,5,-6,2,-5,9,-2,-6,1,-1,6,-4,-2,5.2,576,-576,-1,4,0,-3,3,-4,572,-571,3,-2,0,-1,2,0,-4,4,0,-2,-1,0,1,-1,.3,577,-577,.11,178.2,6,568,0,-565,-9,.2,5,3,-1,4,-11,8,96.2,.3,78.2,4,1,2,127,0,82,0,27,.2,1,0,129.3,.3,2,.3,-248,99.3,5,.91,-4,93.2,.31,1,2,.4,4,.9,4.2,-9,.4,602,-30,43,-39,7,-333,0,1,.3,1,163.3,36.3,.2,50,-301,.4,2,26.3,37.2,6.4,234,0,2,.3,3,190.4,31.4,-248,.42,19.4,-6,1,-3,4,0,-1,592,-593,0,6,-7,2,-3,.2,8,-5,1,-1,2.1,4.1,8.1,.2,3,-6,6,-2,0,-4,.2,8,-8,.3,3.2,1,2,5,-7,2,-4,3,6,.41,598,32,-637,591,31,-613,.4,-2,.4,-10,.4,605,49,-79,31,-29,0,39,-38,1,224,-798,.41,1,.4,-3,.4,168.3,.2,570,.2,-566,294.3,572,-4,6,-4,.5,2,.2,-4,0,6,-575,376.5,4,122.3,73.2,569,.2,-567,.2,-2,328.5,314.4,16.2,574,3,61,-639,13.3,303.3,1,-2,1,2,262.3,-2,3,.3,-4,4,-5,0,5,-5,2,-1,.8,2.1,6,-6,0,-2.2,-4,9,118.3,4,-4,9.1,18.71,-3,.3,8,-5,0,1,-4,-1,1.2,7,166.3,10.1,20.71,-6,-1,2,5,-5,5,-2,-7,0,3,9.1,18.71,2,-1,0,595,-592,395.3,-3,1,-2,9,0,-7,13.1,26.52,-8,-1,-2.2,0,-3,4.1,8.7,5,0,-8,6,589,-20,-573,-1,613,-43,-553,-20,3,1,2,-2,6,-4,0,-1,234.2},{1.2,26,1,2,12,1,2,19,2,6,10,4,2,11,14,2,1.2,7,2,20,1.2,4,2.1,1.92,10,4.2,1.5,8.3,1.32,4.3,16.4,1.8,18.2,4,1.71,4,1.02,7,1.11,4,1.83,24.2,9,1,3,1.91,2,1.9,3,1.7,46.2,2,408,12,5,6,3,1,3,1,4,5,58,1.21,42,2,-4.2,9,4,42,1,10,1,3,2,4,8,2,4,2,1.3,6,1.2,16,80.2,1.91,22,1.2,27,8.2,1.91,4,1.9,11,1.9,6,1.91,6,1.4,21,1.421,2,1,60.3,51.3,3,1.32,13,64.2,1,3,4.1,1,74.2,3,1.6,28.2,2.1,6,1.9,21,1.4,66,1.4,46.2,11,12.4,1.4,26,22.2,2.1,1.2,8,6.1,6.5,8.1,58.2,8.6,23,10.3,24.6,26.4,12.2,18,10.5,63,1,84.3,7,2,5,2,1.3,3,-2.3,-3.2,7,96.4,43,1.4,-2.4,37,1.7,27,2,7,3,18.2,34.4,6.1,12.01,234.3,3,45.2,2,1.4,7.1,14.31,1.3,-2.2,1.2,-2.2,4.1,8.1,1,2,4,2,1.7,3,2,7.1,14.1,53.3,2.1,4.3,8.2,4,2,1.6,14,4,91.2,2,-3.2,14,1.2}},{{1,3},{5,-3,.5,9,.2,-9,-1,3,574,0,-576,.8,576,0,-2,.2,-573,.2,593,-2,3,-592,.5,591,5.2,-594,10.4,-594,.5,5,.2,588,7.2,190,-148,149,-787,.2,595,8.2,-6,-13,-2,-573,588,-587,2,-2,579,-578,-4,634,-632,.991,-2,0,579,-2,-574,5.2,-1,575,0,3,-575,.2,570,0,3,-3,-572,5,572,-5,-571,18,.11,-18,.5,774,-200,29,49,0,-26,6,182,-25,26,-206,181,-189,-25,1,6,-5,-579,652,-77,29,23,-27,-26,-574,.5,575,42.2,592,-16,-576,0,3,0,-3,-1,0,577,61,0,139,-139,0,184,-229,184,5.2,8.2,-636,0,632,12,-70,-1,2,-4,6,.2,-576,.2,-2,.5,633,12.2,1,-4,5,-575,147.2,1,-579,577,1,0,-1,1,0,-578,.5,578,0,6,0,-5,23,-25,0,41,-40,-578,0,-1,0,1,0,612,-30,8,-589,.2,1,.2,-1,0,-1,.41,574,.4,2,.4,-577,.9,620,24,-44,30,11,3,-45,32,-1,11,-640,.4,598,.4,-23,.4,-571,.4,571,.4,-575,.4,575,.4,27,199,39,-254,23,-608,.5,-1,589,41,-630,.5,576,0,1,.2,1,264,-179,-662,575,-570,-2,574,-576,74,.5,-75,.01,-1,576,11,10,8,-18,3.1,6.5,-604,0,599,-599,573,-573,5.1,10.9,-574,586,-586,0,3.1,6.5,575,35,-609,596,-23,1,5.1,10.9,3,.3,24,0,-590,-11,.2,578,-2,0,26,-25,-577,598,-23,-575,610,-32,-569,569,-3,1,-4,0,4,-4,5,249.3,2,-7,2,208.2},{3,1.9,3,10,12,2,15,17,9,2,9,-2.3,1,4,7,2,78,1.2,19,1.2,61,1.2,4,1.2,40,1.5,28,1.5,10,8.3,2.1,7,1.2,13,6.5,5,4,14,7,3,2,8,-2.2,4,3,1,203,1.991,4,2,3,2,1.2,2,1,-2.2,2.1,1.3,3,1,3,5,1,2,6,2,1.11,7,1.53,50,17,2,4,1,2,36,1,2,1,2,12,5.4,3,1,37.2,4.3,3,1,8,1,12,68.5,21,1.5,4,2.1,1.2,27,12.2,1.11,24,1.2,11,1.4,20,21,1.4,6,1.4,155,1,65.3,1,32,87.4,3.1,7,1,13,1.4,26,1.91,21,1.42,6,1.43,206,58.2,1.2,8,4.3,2.1,53,8.3,80,2,1,-3.2,6,1,31,35,1.5,22,1.01,50,16,4,6,-5.2,2.1,4.3,5,8,6,1,6,1,-6.2,4.1,8.7,3,-2.2,9,2.1,4.1,4,9,2,-3.2,4.1,8.1,-6.4,1,3,6,-3.2,1.6,2,1,78.2,12,2,1,6,1.8,134.2}},{{1,4},{11,.5,-10,4,-2,580,-580,-1,0,578,-6,4,1,0,1,-566,0,593,-605,0,4,.2,-4,.2,1,.2,573,.2,-574,.2,583,.2,-582,.2,-1,.2,574,.2,-573,6.2,1,2.1,-1,1.2,0,-2,610,-610,0,1,19.3,2,0,-2,2,-3,634,-631,6.2,.6,1,.5,-2,.71,1,.21,574,1,30,56.2,605,0,-604,0,585,233,-243,-575,0,43.3,.2,3.2,.3,583,0,-583,72.3,2.1,-2,.2,575,6,-7,-574,.5,56.3,.8,2,.8,-3,.4,3,.9,574,2,-2,1,-1,0,-576,.2,577,-1,2,-1,3.2,-2,2,31,4,16,32,118,-778,.91,-2,.4,10,.4,-9,.71,578,0,-578,8,.2,-7,0,659,-660,574,-574,.01,576,-576,90.2,-575,1,576,-2,4.1,8.7,-4,-572,572,2.1,4.3,27.2,2.1,4.1,158.2,2,-574,2,-4,.2,579,-579,2,.3,-1,.5,-1,.2,646,-13,0},{4,1.8,3,22,2,15,17,9,2,9,-2.3,1,4,7,2,99,1.2,61,1.2,49,1.2,28,1.5,10,1.2,19,1.2,13,1.2,4,1.2,7,1.2,5,4,24,21,407,2,3,2,1.2,2,1,-2.2,2.1,1.3,3,1,3,5,1,2,6,2,1.11,7,2.1,1.71,50,17,2,4,1,2,36,1,2,1,2,12,1,3,2,3,1,38.2,4.3,3,1,8,1,12,60.5,21,1.5,4,2.1,1.2,27,12.2,1.11,24,1.2,11,1.4,41,1.4,6,1.4,155,1,65.3,1,32,-2.2,4,3,1,3.1,7,1,13,1.4,26,1.91,21,1.91,26.2,221,1.2,8,1.2,53,1.2,90,2,1,13,31,62,1.01,50,16,4,6,-5.2,2.1,4.3,5,8,6,1,6,7,4.1,8.7,4,2,11,2.1,4.3,24,2,19,2.1,4.3,30,1,3,9,5,1.3,9,12,2,1,6,1.8,108.2}},{{3,1},{576,2,-1,-573,.2,-1,.2,4,.2,-2,.8,6.2,1,.2,-3,.2,8,.2,-8,8.2,0,1,9,-6,-3,5,-7,0,1,-1,11,2,578,-14,1,-577,571,-563,-9,2,-2,.2,9,-7,.01,-1,.9,38.2,7,.9,-7,.91,577,.2,1,.3,6,.2,-5,.2,3,.3,-582,.2,6,.91,-5,.91,255,0,60,.3,18,70.3,5,.3,4.2,2,-344,.91,-3,-2,5,-4,4,.4,23.2,8,.4,-8,.41,2,.7,58.2,2,.5,3,.2,571,0,1,-575,.2,-2,9,-7,-1,2,3,.6,-4,-2,2,2.1,4.3,5,571,-576,3.1,6.1,.8,5,54.3,3.1,6.5,3,0,-3,3.1,6.1,.3,13,-5,-8},{29,88,1,176,1.2,4,1.5,7,1.2,34,1.2,16,1.2,10,1.5,10,1.2,19,4.2,8,1,2,1,2,6,3,1,-3.2,25.2,1,6,12.3,3,578,48,1,8,1,17,54,1.9,35,1.9,65,1.2,26,1.9,36,1.911,6,2,36,2,56,1.4,11,1.9,2.1,71,1.4,16,6.2,4.2,1.4,61,1.2,33,1.2,8,1.2,18,1.2,73,1.2,3,1.2,53,1.2,63,7,18,16,7,52,1.2,-2.4,89,1,15,2.1,4.1,3,7,10,3.1,6.5,5,4,9,4,9,4.3,15,8,2,11,3.1,6.5,1.2,4,2.1,4.1,7,3,1,3,16,5}},{{3,2},{3,.2,603,.2,-29,.2,77,.2,-76,.2,-1,.2,8,.2,-7,.2,7,4.3,-562,.2,560,.5,1,8,-8,1,-2,-574,575,-575,575,2,-576,-1,0,575,-574,632,-55,-2,-560,0,560,-2,2,37.2,-1,.3,2,0,1,-1,0,-4,.3,5,.2,1,-578,.2,576,.2,9.3,.5,1,.3,6,.2,-5,.2,3,.3,-582,.22,577,.2,12.9,.2,583,.2,-11,.3,46,.2,-34,.2,184,.3,-768,.2,5,.4,2,.9,2,.4,567,46.4,.3,1,.2,6,.3,-5,0,-5,1,6,-7,-2,.3,6,-578,.3,1,650,-37,-21,56,-644,570,.4,8,.4,27,.4,-35,.9,7,37,-21,9,22,-57,0,6,0,1,-5,0,-2,-572,.2,574,0,2,-2,3.1,0,2,11.2,570,8.4,7,-7,2,28,0,-23,19,167,-162,179,-209,-573,573,2.1,4.3,574,-569,567,2,3.1,6.5,1,-1,2.1,4.1,2,-1,3.1,6.1,-1,0,1,21,-22,3.1,6.5,-595,0,571,9,274,-855},{29,88,1,176,1.2,4,1.5,7,1.2,34,1.2,16,1.2,10,1.5,10,1.2,19,4.2,8,1,2,1,2,6,3,1,-3.2,25.2,1,6,12.3,3,578,48,1,8,1,17,54,1.9,35,1.9,65,1.2,26,1.9,36,1.911,6,2,36,2,56,1.4,11,1.9,2.1,71,1.4,16,6.2,4.2,1.4,61,1.2,33,1.2,8,1.2,18,1.2,73,1.2,3,1.2,53,1.2,63,7,18,16,7,52,1.2,-2.4,89,1,15,2.1,4.1,3,7,10,3.1,6.5,5,4,9,4,9,4.3,15,8,2,11,3.1,6.5,1.2,4,2.1,4.1,7,3,1,3,16,5}},{{3,3},{2,.5,1,.2,4,.2,619,.2,-622,.2,3,.5,601,.8,-599,2,-4,0,4,-2,-6,2,-1,2,-2,.2,-1,0,1,-3,6,4,-4,.2,3,0,-1,.4,2,.4,-4,.4,4,.4,-2,8.5,2,.9,6.1,12.1,6.2,-10,.91,6,14.6,-2,4,2,18.2,42.2,6,.9,-10,.4,10,.9,10.2,-1,72.2,.2,1,.2,3,.2,-2,.5,-3,0,-2,5,0,-4,.6,8,.7,-5,5,0,3.1,6.1,5,-7,7,2.1,4.3,-3,20.11,-5,.7,-1,0,2,-6,6},{29,88,1,176,1.2,4,1.5,7,1.2,34,1.2,16,1.2,10,1.5,31,1.5,10,8,1,3,2,6,3,1,-3.2,1.2,5,6,1,2,1,3,578,48,1,8,1,17,54,1.9,35,1.9,93,1.9,36,1.911,6,2,36,2,56,1.4,11,1.4,16,1.9,71,4.3,31,1.4,61,1.2,33,1.2,8,1.2,18,1.2,73,1.2,58,1.2,63,7,18,16,7,52,1.2,-2.4,89,1,15,2.1,4.1,3,7,10,3.1,6.5,5,4,9,4,9,4.3,15,8,2,11,3.1,6.5,97.2,1,5,1,5,1,11,3,4,16,5}},{{2,4},{2,.8,4,.5,-1,.2,1,.2,4.3,8.2,.8,-2,.5,2,12.3,-3,.2,3,16.3,4,.2,-4,12.7,4.2,2,.71,16.2,2.1,2,32.2,4.2,.5,32.8,28.9,22.3,3,60.2,1,-1,-3,4,-4,4,10,-15,6,4,-9,9,0,-6,0,24.2,15,-15,-1,2,38.2,3,-4,0,4,-3,3,6,-9,3,59.3,21.3,5,.4,2,.9,2,.4,-9,.4,15,.4,-15,.4,1,.91,-2,.4,6,16.6,.93,24.7,.91,1,82.3,.7,-1,0,3,.3,-3,2,-2,3,0,-1,2,.8,1,.4,-3,2.1,.4,2,.41,574,.9,-572,.4,47.2,166.4,8,.2,-9,.5,4,126.3,-4,.2,2,.2,-2,14.3,5,.2,-11,.5,-3,196.3,4,.2,6,.2,-6,.5,599,-600,-2,4,0,-1,-2,2,0,3.2,5.3,1,0,-1,0,-3,.81,174.3,1,.6,3.1,6.5,68.2,1,28.3,18.2,7,-6,0,10.1,20.91,40.3,3.1,6.1,.5,6,-7,1,.6,4.1,8.7,35.3,3.1,6.1,0,2,-1,572,-575,8.2,1,575,-569,-3,-2,574},{43,1,29,14,2,27,1.2,9,20,1.2,10,1.8,4,1.5,4,1.8,19,1.2,4,1.2,7,4.2,12.2,8.3,4.1,6.5,24.2,2.1,24.4,34.4,1.41,32.4,2.1,12.3,36.5,10.2,12,1,3,1,2,1,2,1,3,2,1.2,-2.2,3,6,-3.2,1,6,8.2,410,26,1,3,10,70,44,-4.2,9,46,1,10,1,5,4,8,2,4,2,1.3,24,43.2,1.91,92,1.9,11,1.4,11,1.91,31,1.48,21,1.91,7,10,1,3,4,1.81,4,14,1.2,-3.2,1.2,3,11,32,1.9,21,1.4,66,1.4,16,1.91,29.2,6,1.4,41,16.2,1.2,13,4.3,8,4.3,2.1,12.4,18,12.7,23,24.5,22.6,12.2,22.2,8.4,64,-3.2,7,2,5,9.3,-2.3,3,10,2,1,3,44,1.4,-2.4,37,1.7,27,2,10,1.3,3,2,3,1,4,6.1,12.01,1.5,4,1,4,2,43.2,1.4,7.1,14.31,1,4,3,1,-2.2,5.1,10.1,3,4,210.3,2,57.3,8.1,16.51,54.2,244.4,3.1,1,3,11,1,2,1.3,14,6,11.3,3}},{{2,5},{3,.6,-1,.2,9,-8,0,-1,0,2,.4,1,.9,1,.4,-4,.11,1,.2,6.2,10.4,-2,6.5,-3,.4,8,.21,-5,.2,5,.5,-7,.5,1,.2,-3,.2,4,4.2,573,.3,-573,1,3,0,-6},{73,14,2,27,1.2,9,785,1,13,70,48,4,55,1,72,1.91,92,1.9,76,1.42,41,1.91,157,1.4,116,1.9,81,1.2,18,1.2,8,1.2,3,2.1,4.3,53,1.2,23,1.2,78,1.2,254,80,-20.3,182,1,3,1,22}},{{1,5},{8,-6,0,574,0,-570,-4,.2,574,-573,-1,0,1,0,576,-577,1,7.3,-1,1,.6,-2,.11,7,-2,573,7,-585,0,3,-1,-1,3,1,-4,.5,576,-4,5,-576,.8,577,6,-5,-579,.2,1,.2,-1,.7,1,.4,4.3,-1,1,3,.4,5,.41,565,.4,7,0,201,0,-199,-9,.2,9,-7,-576,.5,60.3,-2.2,572,7,-7,0,43.2},{80,2,13,2,1,4,783,3,2,1,6,2,1,-2.2,1.3,4,3,6,2,6,20,1.11,7,1.5,79,6,39,1,2,1,23,4,1,3,6,28,1.2,7,1.2,21,1.2,16,1.2,27,1.2,4,1.11,24,1.2,11,1.4,41,1.4,6,1.4,163,1,43,1,7,1,21,1.4,36,1.9,21,1.91,276,1.2,53,1.2,90,3,166,328,14,1.3,23,7,1.8}},{{1,6},{2,.2,577,2,-579,2,-2,1,-1,8.2,-1,-575,-1,.9,1.2,0,1,0,1,-4,7,0,-4,0,571,.4,-574,.2,2,.2,23.2,25.3,4.3,-575,4.2,0,1,3.1,-1,.3,6.4,.2,2.1,2,-2,2,.01,-4,.9,2,.2,-3,.2,575,-572,-2,.5,1,-1,.5},{80,2,13,2,1,787,3,2,1,6,2,1,-2.2,1,2,4,9,2,26,1.5,13,1.5,79,45,1,2,1,23,4,1,3,6,28,1.2,7,1.2,21,1.2,16,1.2,27,1.2,4,1.5,4,1.2,24,1.2,56,1.4,6,1.4,163,1,43,1,7,1,61,1.9,31,1.9,276,1.2,53,1.2,90,3,166,344,1,23,7,1.8}},{{1,7},{1,0,93,-92,6,-6,131,-39,39,-39,506,172,-769,813,-218,-594,-2,0,11,0,81,.2,-86,.2,-6,.2,131,.2,-39,.2,39,.4,-39,.4,-90,.11,575,-485,.2},{97,1,790,2,1,14,2,4,9,2,26,1.5,142,1,2,1,74,1.2,21,1.2,54,1.2,4,1.2,24,1.2,56,1.4,6,1.4,317,1.9,936,1,23,7,1.2}},{{1,8},{1,0,1.2,-2,.3,1,.2,2.1,-1,.11},{97,1,793,14,190,1,2,1,97,1.2,54,1.2,419,1.9,936,1}},{{1,9},{1,.3},{97,1,997,1}},{{3,4},{2,0,3,.2,1,.2,-4,4.2,.5,2,.5,-2,.2,-1,2.1,.2,4,.2,-2,2,-1,7,-6,-4,3,17,-19,-1,4,-4,0,2,-1,0,1,.93,-1,.91,3,.91,-3,.91,1,30.2,.9,1,.02,2,.2,-3,.2,3,36.2,-1,4,-3,0,-1,.6,3,.3,6.2,3,3.1,6.1,-2,.7,-1,3,0,-3,3.1,6.4,71.3,2.1,4.3,1,-2},{117,1,176,1.2,4,1.5,7,1.2,34,1.2,16,1.2,10,1.5,31,1.5,10,8,1,3,2,6,3,-4.2,1,12,-3.2,578,48,1,8,1,17,98,1.9,93,1.9,36,1.91,21,1.93,21,1.91,6,38,2,56,1.4,111,1.4,16,1.9,31,1.4,61,1.2,43,1.2,18,1.2,73,1.2,58,1.2,63,7,18,16,7,52,1.2,-2.4,89,-16.4,3,7,10,3.1,6.5,5,4,9,4,9,4.3,15,8,2,11,3.1,6.5,1.2,5,1,5,1,5,1,46.2}},{{3,5},{3,0},{117,1}},{{4,1},{3,.2,-1,.2,2,-2,2,5,-2,-3,.9,575,.2,1,.3,6,.2,-5,.2,3,.3,-582,.2,1,.9,2,.9,-1,582,.4,-576,.01,590,.3,-14},{381,1.2,34,1.2,10,24,3,9,11,754,1.9,218,1.93,46,171,1.4,21,1.4,462,1,-2.4,365,-6.3,30}},{{4,2},{585,.5,-9,-574,575,1,-1,1,0,-4,.3,5,.2,1,-579,.91,1,.91,574,9,.3,-2,.5,23,-23,19,167,-162,179,-784,.3,575},{381,1.2,34,1.2,10,24,3,9,11,754,1.9,218,1.93,46,171,1.4,21,1.4,462,1,-2.4,365,-6.3,30}},{{4,3},{608,.5,-599,-3,-2,5,-4,2,.4,4,.4,-4,.4,2,.9,8.2,6.5,.51,-8,.5,1,.3,7},{381,1.2,34,1.2,10,24,3,9,11,754,1.9,218,1.93,46,171,1.4,21,1.4,462,1,-2.4,365,-6.3,30}},{{4,4},{3,.5,2,0,-1,-2,1,.9,1,.91,-1,-1,.01},{381,1.2,34,1.2,10,27,9,11,754,1.9,238,1.91,46,196,1.4,462,1,-2.4}},{{2,6},{578,-572,611,-43,30,-25,1,-574,.81,-3,.3,1,0,-2},{913,83,296,1.4,437,1.9,81,1.2,28,1.2,3,1.2,504,-20.3,186,1,22}},{{2,7},{2,.5,2,.3,4},{913,379,1.4,1068,-20.3,209}},{{1,10},{1,0},{1095,1}},{{2,8},{576,.3,1},{2364,-20.3,209}},{{2,9},{3,.3,-1},{2364,-20.3,209}}}, - {343,.62,2,-266,.91,51,.91,1,2.1,4.1,8.1,.91,205,.14,10,-10,.95,14,.35,-12,.531,-2,.21}, - {{{1,1},{1,.7662}},{{1,2},{139,1.11,0,1.2,2.1,2,6.2,1.01,0,1.22,0,1.4,0,1.41,0,2,1.9,17.3,1.4,.2,11.2,1.6,0,-82,1,-24,3,1,11,-1,-9,58,1,-124,.99,51,.99,1,2.1,.99,261,-2.51,-187,4,-79,26,2,-30,52,-28,30,2,23,4,-57,-28,6,46,-57,80,-29,-26,-27,47,27,-84,94,-53,14,10,-38,50,-26,-36,-3,70,-92,.11,-51,.5,52,.5,1,.5,-53,6.3,-52,.5,51,.5,-51,.11,297,1,100.4,4.1,8.7,-15,1,-1,1,15,1.7,0,1.42,0,-231,0,184,51,0,-51,2,0,-153,0,151,.5,-184,12.7,-2,-151,13.2,.4,49,51.4,1.4,0,-123,1,123,1.2,-235,113,0,-234,0,314,.2,2,2.1,4.1,8.1,.2,6,10.9,-187,.2,4,.2,-79,.2,-2,.2,52,.2,-28,.2,30,16.3,23,16.3,-57,.2,24,4.2,.4,80,.4,-29,.4,-26,.4,-27,.4,47,.4,27,.4,10,.4,-53,.4,14,6.3,-38,.4,50,20.3,-189,.4,2,.4,1,.4,-1,.882,558,6,1,-250,172.3,2.1,2.1,6,4.3,-6,.41,1,.01,1,.12,4.3,.01,-108,1,19,1,-38,1,-50,1,83,1,-82,1,66,1,9,1,-68,1,5,1,56,1,-3,1,183,97.3,-226,4.3,-32,129.3,-23,.2,432,1},{1.31,128,1.833,517,1,60,4,52,1.33,30,1.91,25,2.1,1.91,39,1.91,36,1.502,6,1.4,16,1.4,36,1.4,6.2,26,6.3,8.4,2.1,4.1,4,1,4,1,4,1.6,6.1,6.5,4.1,8.1,22.1,34.22,40.9,2,1.8,2.1,4.1,4.3,1.41,2,1.05,133,1.253}},{{2,1},{1},{29}},{{2,2},{152},{29}}}, + {{{1,1},{520,0,-161,149,.2,12,.2,-12,-49,-100,161,-28,-33,33,0,7,-4,2,0,-130,2,150,-20,0,20,-27,0,27,-20,20,2.1,-27,5,-18,40,0,-20,-27,27,.2,-6,0,-126,-8,160,8.2,-20,-2,.2,22,.2,7.2,9.3,29.2,-2,0,22,-20,-6,0,-1,-33,-92,25.2,.3,17.2,-60,0,38,.2,-2,24,27.4,.2,-20,-31,31,0,-7,.2,24.4,.8,-60,60,-27,.2,53.5,23.2,-57,57,-46,0,46,0,88.2,7,0,-2,-4,26,-60,3,.2,58,.71,-61,.2,61,.5,4.3,.8,-61,.5,61,.2,12.7,.11,-58,24.2,.32,20.5,4.2,20.5,-54,.2,54,.5,-13,.2,13,12.4,20.4,.5,-49,172.2,10.3,18.5,.8,-100,.2,161,6.2,60.3,-52,.2,52,60.4,36.4,4.3,22.2,100,.2,48,50.6,18.6,94.6,38.3,-9,58.3,-25,25,0,-25,-36,61,4.1,-25,.3,4.2,249.3,.3,9.2,25,32.2,61,0,35.3,-61,-100,100,12,-12,0,11.3,4.2,-25,13,-49,8.3,.99,-100,.99,100,4.3,133,7,-37,5,0,32,0,20,-52,0,-5,0,30,-25,-5,5,32,-7,-7,14,-5,-2,.2,-25,32,-3,-34,37,0,-32,25,-14,-13,35,-40,1.2,-24,21,33,0,-33,12,-6,-4,0,-2,17,-17,48,.5,24,.5,-63,.5,-7,.5,70,.5,-60,.5,60,.5,-39,.5,39,.5,-36,.5,-19,.2,1,0,1,42,-58,57,317.2,.2,3,.2,4,.2,-40,25.2,10.4,0,4,362.3,288.2,-7,-30,57,.5,-20,.2,20,.5,-27,8.2,294.2,16.2,0,8.2,-2,59,.2,-59,3.2,34.2,1,.2,6,44.2,.3,44.4,10.6,9,1,0,30,4,0,16,-56,23,1.2,4,44.2,-30,1,-1,-11,-104,86,2,-2,14,-14,.01,8,-8,.01,-1,186.3,-52,52,189.3,33,.2,7,.2,-37,.2,5,.5,32,.5,20,245.3,-8,.91,3,.2,30,172.2,.2,-5,.2,5,.2,32,.2,-7,2.1,.2,-26,.91,33,263.2,12.3,-3,.2,-34,.2,37,84.2,14.2,.2,-14,.4,-13,.4,35,.4,-40,.4,2,1.2,-5,0,4,0,1,0,1,-27,.4,21,23.2,.9,-33,.4,12,0,1,49.2,.4,-4,.9,-2,.001,4,.81,32,311.5,36,2.1,8.2,303.2,81.2,25,-25,0,11.3,.2,298.2,7.2,16.2,20.3,18.2,15.2,25,25.2,11.3,36,.2,-36,1,-1,24.4,36,3.2,0,24.3,6.2,38.3,47.4,7.5,36.3,.4,3.1,57,.4,-82,.4,25,.9,6.2,-57,13.2,.4,36,.4,-36,.4,18.2,-58,.4,58,22.3,16.2,26.3,.9,26.2,-49,.4,106,34.4,.91,30.2,44.4,-57,.92,8.2,118,28.5,4.1,-118,12.7,-82,.2,82,0,-57,.2,57,4.1,.6,8.7,12.9,28.8,8.1,-118,.2,118,16.9,4.1,16.7,56.9,16.4,24.4,-117,.2,117,4.1,76.8,44.9,52.11,28.31,112.51,136.21,36.6,82,.8,467.2,3.1,.8,9.1,-117,1,-1,-1,3.2,0,1,14,46,-61,49,12,0,267.2,-60,-101,161,5.2,704.2,61,-154,-7,163,-3,-153,4.3,58,56.2,59.3,57,.5,-57,1,-1,-61,16,0,-15,103,-104,0,13,21,-126,.5,101,.5,25,.5,-2,.5,-30,1.3,-5,0,21,0,2,1.2,0,-42,-83,.5,1,-1,2,-2,3,-3,4,-4,.11,100,8.2,6.2,.71,41,.01,-19,.01,11,1,26,905.3,60,880.2,2,926.2,-132,943.3,7,0,-7,0,27,.3,1,101.3,3.2,406.3,440.3,-58,6,-9,12.3,15.1,30.82,434.3,456.2,810.2,0,15.3,0,-25,-33,-3,7.3,18.1,36.53,850.3,541.4,796.2,16.6,13.1,26.42,0,58,938.5,25,-58,33,-36,9,-9,3,-3,148.5,3,20.1,40.93,2,0,9,-11,36,25,-59,6.1,12.11,241.4,118,-57,4.1,728.3,3.2,899.2,130.3,61,0,3,54,-82,25,0,12.4,4.1,.2,57,-118,30.2,25.5,36,82,-110,843.3,37,847.5,-32,.2,-8,.2,60,0}},{{1,2},{576,.637,5,1,6,-5,-7,.9,7,.4,-7,.43,47,.4,-47,.711,5,.2,-579,.2,574,.2,6.2,-5,.344},{14,1.621,340,1.515,3,1.85,2,1.2,2,1.05,35,1.82,21,1.32,2.1,21,1.73,21,1.43,212,1.4,16,1.4,36,1.4,6,1.4,26,6.3,8.4,2.1,4.1,4,1,4,1,4,1.6,6.1,6.5,4.1,8.1,22.1,34.22,40.9,2,1.8,2.1,4.1,4.1,7,30,1,2,1,2,1.5,11,1.131,309,4,-8.2,-4.2,6,-2.2,6,1.32}},{{2,1},{359,148,0,-12,-12.2,3.2,0,-64,64,0,12,-12,12,9.2,12,-27,15,.2,14.2,24,-10,.2,-150,.5,160,.2,6.3,.2,6,.2,-6,.2,100,.2,48,.8,-48,4.2,.5,-135,.2,135,.5,-147,.2,50.2,-1,1,0,-85,84,-148,149,-149,100,-38,0,-61,7,5,-12,.3,116,-117,8,72,-70,-9,101,-1,-88,123,.5,-19,.2,1,0,1,29,.2,-86,86,-141,121,1.3,-126,114,-104,134,0,65,-65,-149,0,1,.2,12,85.2,.5,-1,.91,8.2,100,.4,1,2.1,4.3,13,.4,-117,.4,8,24.3,71,.4,-70,1.2,-12,.12,1,.4,101,1.4,-5,.4,-87,.4,-14,.99,8,-8,8,0,56,0,-64,1,63,4.2,95.2,64,4.1,85,-1,-48,.4,36,48.3,-49,.4,-92,.4,-8,.4,149,.9,-136,.9,136,.4,-85,.4,85,.4,-141,.4,141,8.2,.2,36,.2,49,.2,-141,.5,-8,.2,64,.2,-51,.2,1,158.2,.8,-30,.2,-119,100.2,49,-49,1,48,0,-49,49,-48,-101,.51,102,2,-12,.7,56,0,-148,84,64,-48,.3,-100,148,8.2,3.1,6.4,.32,-141,141,0,3.1,6.4,142,-141,-8,103,46,.3,106.4,-148,.2},{17,-2.2,8,4,2,6,2,1,6,2,5,-2.3,6,-8.2,15,10.3,8,1,2,48,1.2,25,1.2,16,1.2,4,1.5,10,1.2,34,1.2,7,1.2,22,4.3,8.4,18.2,13,1.8,16,1.5,4,1.2,15,1,3,2,5,2,-3.2,1,4,1,5,1,7,1,407,1,11,5,6,3,1,2,47.2,3,1.2,58,1.11,32,13,2,19,37,3,2,1,4,1.4,2,1,17,77.4,54.2,1.5,45,1.22,60.3,1.91,4,1.9,6,1.41,6,1.91,6,1.4,11,1.47,21,1.34,45.2,17,1.9,7,3,2,41,1.4,19.3,1.9,21,1.4,66,1.4,16,1.92,11,1.4,41,95.2,1.2,67.2,2.1,28,6.1,4.3,53,10.5,23,1.2,18,1.2,73,1,2,1,3,-17.2,-7.2,43,1.4,-2.4,5,1.6,7,2,17,1.7,23,6,1.2,4,11,-16.3,11,-2.2,16,2.1,4.3,12,3,-2.2,6,3.1,6.5,15,-21.3,12,1,3,45.3,3.1,3.1,7,3,1,4,59.3,11,5,1.2,5,20,1.2}},{{2,2},{576,.444},{168,1.2,25,1.2,16,1.2,4,1.5,10,1.2,34,1.2,7,1.2,22,4.3,8.4,18.2,13,1.8,16,1.5,4,1.2,15,1,3,2,5,2,-3.2,1,4,1,5,1,7,1,582,53,1,17,6,2,1,79,1.91,25,1.91,39,1.91,36,1.95,21,1.34,2,1.2,17,1.9,7,3,2,41,1.4,6,1.41,6,1.9,21,1.4,66,1.4,16,1.92,11,1.4,41,60.2,1.2,3,2.1,1.2,28,6.1,4.3,53,10.5,23,1.2,18,1.2,73,1,2,1,3,-17.2,-7.2,145,-16.3,11,-2.2,16,2.1,4.3,12,3,-2.2,6,3.1,6.5,15,-21.3,12,1,3,32.3,3.1,3.1,7,3,1,4,46.3,11,5,1.2,5}},{{3,1},{508,.2,-149,13,136,2,-138,0,1,-6,.7,205,-64,0,-149,.6,64,85},{303,1.2,148,26,636,17,172,1.2,447,1.4,221,1.2,123,7,34,59,1.2,-2.4,390,28}},{{3,2},{576,.91},{303,1.2,148,26,636,17,621,1.4,221,1.2,123,7,34,459,28}},{{4,1},{359,.5},{2204,1,-2.4}}}, + {{{1,1},{2,0,4,8,.5,-4,-5,0,-3,0,76,-76,1,-1,.3,23,0,-23,9,-9,0,1,0,-1,1,-1,.4,78,-78,79,-79,19.3,1,22,20.2,7.2,2.1,13.2,.3,7.4,.6,3.2,81,-81,20.4,.3,87,-87,87,-86,15.2,13.2,88,-88,10.2,82,0,-82,.2,83,-60,21.3,38.2,40.4,.2,41.3,.21,3.2,.62,9.3,.5,4.3,.8,1,.5,8,.2,-8,12.6,.5,12,.2,-12,.92,20.5,4.2,.2,8.4,5,.2,-5,.2,4,.2,-4,12.5,24.7,.8,4,14.3,-4,.8,22,.2,-23,8.2,.5,50.2,19,.2,-14,32.3,46.4,20,.2,-20,.2,3,.2,-3,4.3,48.4,54.4,22.3,.5,8.4,18,.2,-19,18.5,-5,.3,5,79.2,43,-43,1,24.3,-1,.4,3.2,42,-42,23,-22,.2,56,8,-65,0,5,-5,65,5.2,192.4,1,3,-3,64,-64,8,228.3,23,-24,0,3,46,-49,0,98,.99,1,2.1,4.1,49.3,2,-2,0,3.2,2,1.2,-4,5,-4,11.3,2,0,-2,7,-7,7,-4,5,-6,-2,0,1.2,3.2,9,-9,.2,15,-1,-12,-2,2,-2,.4,9,-9,-7,.11,26,.5,-10,.11,11,.5,-11,.5,9,.5,-25,.5,26,.11,-121,.63,244.2,.5,1,-1,.8,263.2,324.2,.2,83,-78,-5,14.2,.43,92,0,-92,96,0,-96,21,-21,.8,125,0,-97,-6,-22,14,-9,-5,5,-5,0,27,-22,6.2,22,0,-27,8.5,14.5,360.4,.2,21,0,77,0,4,269.5,2,.2,-2,.5,4.2,-79,.91,80,253.4,.2,5,221.5,20.3,.2,-77,.91,77,.2,7,.2,-7,4.3,22.4,-6,18.5,79,6.2,.9,9,.4,-9,.41,15,.4,-92,12.2,.4,-2,.4,2,4.2,.91,-77,.911,-25,247.5,230.5,-1,0,19,0,-19,0,21,0,-21,1,8.2,-20,105.4,4.1,.3,113.4,107.3,281.3,40.3,5,220.3,301.3,21,-20,-1,20,35.2,7.1,58.8,317.3,575,.4,-512,.4,-63,.9,6.2,-575,.4,1,.4,18,.9,52,.9,-71,18.3,12.2,4.2,-525,16.3,5,.4,19,.4,-5,.4,505,.4,-558,.4,22,.4,33,16.3,-25,4.3,-2,.4,528,32.2,.92,8.2,574,38.5,4.1,-574,12.8,.2,575,0,4.1,4.3,.6,12.1,12.11,8.1,0,-574,.2,574,16.1,44.31,32.8,-531,.2,531,4.1,12.5,-570,.2,570,0,-516,.2,516,0,-555,.2,555,68.12,112.61,-517,.2,517,.6,-566,.2,566,32.41,575,.8,3.1,6.1,9.7,1,26,-26,4,15,-20,0,14,-14,1,3,-4,571.4,3,1,-4,706.3,-1,803.3,787.5,100.3,55.4,.5,-575,39.2,335.3,615.2,355.3,23,.5,-23,.71,2,.5,91,.5,-16,.41,-74,.01,74,.12,17,.01,3,.01,-97,.4,533.2,855.6,344.3,382.3,539.2,.2,605.3,78.3,5,-5,82.3,4,515.3,391.3,16.1,32.03,.3,598.2,.2,1,0,11,-7,23.2,10.2,-12,-8,15.1,30.1,0,27,-28,5,-4,16,-16,484.3,.3,1,11.1,22.02,743.3,5.2,757.3,1035.5,69.2,127.3,8,78.2,20.1,40.1,20.4,22.4,6.1,12.9,0,4,0,-4,574,-512,-63,1,574,367.2,58,-59,0,45.2,575,-516,-4,-5,1,5,0,14,505,-558,22,-39,575,-527,1,-2,528,24.2,-1,415.2,-574,31.2,575,-514,-60,51,1,-53,575,-473,.2,2,.8,-2,708.3,13,.2,-116,0}},{{1,2},{4,.7,83,-83,83,0,3.2,.2,-8,0,-75,83,-1,0,-72,.2,-10,.2,10,.2,-9,.2,9,4.1,12.6,.5,-1,.5,1,.2,-3,.2,2,.2,6.2,18.7,.2,20,.2,-11,32.9,4.2,24.6,6.2,-1,4.2,.8,10.5,.5,62.3,10.5,30.3,.5,34.4,52.4,30.2,88.6,42.6,10,.3,-10,10,0,-10,1,9,-10,0,1,-1,10,11.2,53,-53,-12,65,-63,63,-10,-53,11.2,0,10,-9,9,30,-40,6.2,-11,2,.2,68,-69,83,0,-82,120,0,-121,1,9,56.2,71,.95,-72,.4,30,-30,0,67.2,12,-21,.3,12,-12,107.4,55.2,12.2,-12,12.3,50.2,24.4,75.2,.4,-3,.9,71,.9,-68,.4,-1,.7,69,.8,-34,.5,-35,101.3,34,.2,31,.2,-65,.5,42.3,.5,9,0,-9,-1,149.5,9,73,-83,95.2,0,9,14.3,4.3,10.1,20.91,9,.3,10.3,172.2,1,8.1,16.1,0,-1,246.3,87.4,6.1,12.9,214.6,-9,9,8.2,-9,0,78.2,12.1,24.22,56.4,10,4.1,8.7,.4,35,-35,58,11,-6,-19,-43,59,-28},{1.2,26,1,2,15,19,2,6,10,4,2,25,2,1.2,4,1,-2.3,1,17,6.2,2.1,1.8,4,1.71,10,6.3,13,8.2,1.5,12.3,10.2,1.5,7,4.2,1.02,7,1.71,4.2,10,14.4,1.11,4.1,18,1,3,1.11,-2.2,1.3,-2.2,1.8,3,1.4,2.1,520,42,6,4,9,48,1,12,2,4,10,8,1,33,1.91,182,1.91,41,1.91,45,3,1.6,3,1,3,1,13,1.5,2,1.6,13,1.2,2,1,3,4.1,1,98.2,3,1,36,1.4,11,1.9,91,1.9,21,1.4,16,1.4,26,1.2,8,1.2,28,18.2,2.1,4.3,18,1.2,38.2,4.2,23,6.3,12.2,6.2,38,6.3,77,2,5,-2.2,1,3,-2.3,3,10,57.3,127,9,3,1.3,40.5,6.1,12.01,1.5,5,4,2,1.3,2,1.4,6.1,12.11,1,-2.2,3,3.2,5.1,10.1,1,2,4,2,1,32.2,3,5.3,9.1,18.61,86.4,2.1,4.3,2,4,4.2,20,4,2,5,3}},{{2,1},{79,.2,-75,75,12,0,-3,0,-6,3.2,12,-12,9.2,-66,66,-87,78,-3,0,8,0,4,-85,.2,19,.2,-20,.2,-1,.2,1,.11,4.3,.41,20,.2,-16,.2,-4,.2,26,.2,-6,.3,20.3,6,-5,62,-57,15,-22,6,0,58,-42,-20,74,31,-18,0,21,1.2,2,-1,-24,28,9,-16,-109,.11,75,9,-9,-70,70,42,-8,0,13,0,-47,-76,125,-123,.5,87,.2,-87,.2,74,.2,31,.2,-73,.91,55,.2,-88,.91,109,.4,1,2.1,.4,2,.4,-1,.4,-111,.91,87,.4,28,.4,9,.4,-16,.4,-108,.95,62,.91,-62,.91,20,-19,0,19,-19,-1,1,-1,.21,-1,.9,62,.4,-62,.4,67,.4,-46,.4,-15,.4,-5,.41,63,.9,-43,.9,-20,.7,126.3,.2,66,.2,-46,.2,42,.2,-62,.41,5,.2,-5,12.3,-67,6,-6,10,-9,0,48.3,1,.8,88,.6,-14,0,18,.7,-18,9,-6,0,-3,-75,.3,21,44,-63,19,3.1,6.5,3,-4,31,-31,4,4.1,8.7,1,.3,-1,4,16,-20,3.1,6.5,41,5,-46,48,-63,46,-31,-20,62,1.2,-64,164.2},{17,-2.2,8,4,2,6,2,1,6,2,5,-2.3,6,-8.2,15,10.3,8,1,2,48,1.2,25,1.2,16,1.2,4,1.5,10,1.2,34,1.2,7,1.2,22,4.3,8.4,18.2,13,1.8,16,1.5,4,1.2,15,1,3,2,5,2,-3.2,1,4,1,5,1,7,1,407,1,11,5,6,3,1,2,47.2,3,1.2,58,1.11,32,13,2,19,37,3,2,1,4,1.4,2,1,17,77.4,54.2,1.5,45,1.22,60.3,1.91,4,1.9,6,1.41,6,1.91,6,1.4,11,1.47,21,1.34,45.2,17,1.9,7,3,2,41,1.4,19.3,1.9,21,1.4,66,1.4,16,1.92,11,1.4,41,95.2,1.2,67.2,2.1,28,6.1,4.3,53,10.5,23,1.2,18,1.2,73,1,2,1,3,-17.2,-7.2,43,1.4,-2.4,5,1.6,7,2,17,1.7,23,6,1.2,4,11,-16.3,11,-2.2,16,2.1,4.3,12,3,-2.2,6,3.1,6.5,15,-21.3,12,1,3,45.3,3.1,3.1,7,3,1,4,59.3,11,5,1.2,5,20,1.2}},{{1,3},{14,.5,-9,.31,9,-9,62,0,-53,-10,1,0,108,0,-87,.9,-21,.91,21,4.2,.5,9,-9,.3,12,-12,2.1,4.1,.31},{294,1.2,4,1.2,64,1.2,10,1.5,46,8,1,5,6,3,9,5,6,1,2,1,581,48,1,80,1.9,242,1.91,177,1.9,261,1.2,133,1.2,88,174,-16.3,19,7,13,2.1,4.3,71,2,19,2.1,4.3,1,-6.3,19}},{{3,1},{5,.2,62,-57,-5,0,74,.2,-54,.4,-20,.21,62,-36},{303,1.2,148,26,636,17,172,1.2,447,1.4,221,1.2,123,7,34,59,1.2,-2.4,390,28}},{{1,4},{5,.4},{381,1.2,46,47}},{{2,2},{5,.2,2.1,-5,.22,26,.91,-26,.91,30,.91,-30,.62,62,.4,-62,.71,62,.2,-62,.2,61,.2,-61,.7,4,.3,58,-62},{414,1.5,37,9,649,116,1.9,93,1.9,56,1.93,21,1.93,6,40,56,1.4,11,1.4,96,1.4,21,1.4,31,1.4,61,1.2,33,1.2,8,1.2,98,1.2,381,-20.3,73,-21.3,16,-6.3,10,20}},{{2,3},{5,.21,26,.91,1,.91,4,.5},{417,1.2,811,1.9,218,1.93,217,1.4,909}},{{3,2},{67},{453}},{{4,1},{5,.5},{2204,1,-2.4}}}, + {{{1,1},{579,0,-577,0,1.2,-2,1.2,9,-11,1,576,48,187,-187,12,1,-1,-27,48,-658,0,610,23,0,-23,27,0,-27,23,-23,2.1,27,-27,203,-203,48,-78,48,-48,48,0,38,-32,-634,0,584,50,-50,44,-44,38,0,-38,38,-38,9.2,11.4,13.3,-38,44,25.2,32,1,-667,27.2,23.3,19.2,83,0,-83,28.6,2.1,26.3,-18,18,0,32,-41,41,113,-773,.2,605,-605,622,0,-622,605,0,-605,814,-814,619,.2,-619,646,-646,10.3,619,-619,611,-1,1,0,-1,48,-33,12,1,-5,101.2,-53,-584,596,-2,3,-10,-5,8,-3,3.1,6.1,6.5,6,21.8,9.1,12.6,-1,15.5,30.12,15.1,81.42,12.9,18.9,197,-148,149,-786,.2,585,8.2,-590,.2,587,40.02,12.5,192,-178,24.11,41.2,1,.2,595,140.5,3.1,-597,54.7,154.6,42.3,-187,6.2,-588,.2,594,99.11,6.3,37.2,230.3,42.8,-596,61.4,24.6,64.5,257.8,100.4,28.2,586,-5,8,2,-590,609,12,-28,0,194,-166,-31,35,-4,-10,-21,31,-30,.2,20,-22,20,-16,-584,778,-196,-13,34,-614,613,-21,-590,598,-600,592,-590,589,0,24,160,-161,-603,612,-623,593,26.2,0,32,-622,590,23,-614,592,0,3,74,1.89,-119,21,3.1,6.5,-646,.33,572,-572,.2,572,-563,-9,.7,-2,2,3,.5,-5,.14,9,.5,-9,.11,611,2,-613,605,-5,25,-6,-35,41,3.2,-4,66,-28,-42,-576,580,-4,3.2,-580,18.7,-39,66,-36,493.2,23,-8,12,513.2,0,-74,444.3,498.2,476.3,2.1,38,44,-55,-27,50,-634,430.2,605,55,-49,-609,-2,605,0,-23,-582,64.31,576,-576,0,16.51,610,184,0,-213,238,-216,7,210,-820,646,0,14,-49,-1,-5,0,-21,-578,1,575,213,-213,0,-581,581,2.1,5.2,0,821,-821,0,1,822,-242,8.2,14.2,597,-16,6.3,61,-25,-36,36,-36,5.3,66,0,-646,.62,246,4,0,4,.2,54,0,2,.2,2.1,14,.3,2,0,-328,.32,249,55,0,6,0,15,0,4,0,3,.3,2,2.1,.2,-336,.32,251,56,0,3,.2,3,0,14,4.3,8.2,1,0,1,0,-335,.21,824,1.3,-248,-579,.41,577,0,1,6,-586,256,59,0,18,.2,4,0,5,4.2,.2,2,.3,4,0,-350,.43,254,74,.2,7,.3,7,15.3,6,.3,3,0,-24,9,7.3,7,.2,85,.2,5,28.3,-116,13.21,-134,22,.2,9,.3,6,.2,5,.2,86,13.3,-132,13.21,-101,11,.2,90,.3,7,.3,37,.3,9,.2,5,108,-21,3,56,-38,-21,21,-21,-3,2,0,18,-18,1,0,21,-2,168,-178,8,-25,25,735.2,-17,21,-12,8,-17,17,-8,4.2,3,-3,21,-22,22,-21,17,12.2,-20,2,-2,12,0,20.3,26.4,-8,-600,590,-590,4,-3,609,168,-195,42.2,-10,10,189,-169,8.4,62.2,189,-189,10,-9,17,68.3,3,32,-13,10,-26,-3,45,4,-69,.4,49,7.4,137,-129,-12,198,-63,-151,17.6,56,-4,25,-1,131,-177,-602,623,-621,778,-192,20,-610,591,-590,639,-49,71,-68,31,-626,.9,624,46.11,7.2,36,21,-40,50,-47,58,-37,-21,56,-646,-4,.4,2,.4,639,139,58,1.2,-266,56.4,-26,156,3,-134,-7,131,-767,616,37.3,162,-197,66.4,-152,20.4,-158,3,15,10,-1,-647,.4,571,.4,16,80.4,596,55,-37,169,17,-802,591,41,-631,626,5,-31,23,18,-47,16,74.4,36,32,-11,191,-63,-159,24,-36,15,39,-88,98.8,17,61,-650,648,-646,570,.4,46,21.31,70,-45,27,-52,0,-573,603,59,-89,0,40,-14,15,-41,.6,5.4,15.1,0,66,-49,65,-82,15.5,10.1,0,25,32,-5,55.2,20.01,36,21,10,-67,0,57,-31,41,5.2,70.51,6,3,31,-40,0,17,61,4,35.2,-573,.2,573,0,-570,.2,570,53.6,13.4,122.5,72.5,10.5,26,23,-8,24.2,127.41,57.6,82.01,15.1,-574,597,187,-210,50.11,57,-57,.8,66,-66,3.1,.8,9.1,68,0,-640,640,-642,642,202,-202,0,-25,-14,-604,618,1252.3,-44,-574,0,586,32,-618,618,-38,267,-261,-12,44,-618,11.2,-12,15.3,-12,1,0,5,-5,0,-575,575,.5,5,794.2,0,1265.3,-580,40.2,187,43,-848,.5,849,1.5,-48,1.5,-5,1.5,-811,.62,5,.01,-3,.12,9,.01,-11,.01,660,-41,-619,619,-35,83,-57,23,-633,633,-23,4.2,0,577,42,-42,-572,572,102.2,28,-28,45,-29,-591,586,-6,6,15,27,-628,589,23,-21,-4,-587,601,-4,4,-10,16.1,32.13,-4,3,54,-7,-61,1,-1,2.1,1,-588,1,601,-8,4,3,21,-34,4,-4,10,20.1,40.93,-1,5,87.2,769,-183,15,-8,19,-26,77,-77,48,-48,13.1,26.1,5,6,8,-12,-2,43,-43,61.2,1,10,4,20,-34,41,157.5,-1,21.1,42.14,40,-30,14,1,-26,25,16,6.1,12.11,-10,-601,0,602,-29,46,-621,604,-29,16,-17,-574,600,256,-236,-620,575,93,135,-193,28,-637,2,-1,573,16,-589,0,4.2,185,-772,571,25,17,188,53,-237,-46,3,-3,14,-14,201,-202,-572,576,2,-5,-573,.71,9,.2,761,-148}},{{1,2},{2,1,-1,577,.6,2,-1,-578,1,0,-1,.3,1,0,658,113,-772,.2,574,-573,0,-1,.5,1,.5,-1,.2,15.3,-75,-584,0,1,.4,14.3,0,-1,0,33.7,18.2,24.3,-1,.4,1,.2,-1,1,.01,-1,0,659,15.2,11.4,0,1,.3,19.3,.9,8.3,-1,.81,15.3,.02,4.3,.8,66.3,.11,577,.2,-576,10.4,4.2,.41,4.3,.62,2,.2,-2,.2,583,.2,-583,.2,30.5,24.6,.8,16.2,-580,22.2,.8,40.2,-577,.8,12.2,32.3,.5,20.3,32.3,582,.2,-582,.2,646,.2,-647,.5,3,50.3,126.3,50.4,.11,26.4,-1,2,-2,132.3,34.3,110.3,6.2,578,-577,.3,-2,2,19.3,33.3,634,-635,8.2,164.4,577,-577,0,576,115.2,242,5,3,2,3,53,2,1.2,2,14,-3.2,1.2,-2.4,2.1,1,82,1,3,1.2,-2.3,1.3,16.2,32,2,5,21.3,1.3,4,1.7,6,1.6,2,1.82,2,3,1.4,-324,40.1,80.97,-565,2,601,-598,4,-6,0,2,0,4,-9,0,3,6,-7,3,6,-6,0,4,3,1,-6,-2.3,0,-4,-2.3,-6,568,70,-648,658,131,-141,-37,-601,568,-568,6,773,1,0,-792,2,18,564,46,-27,-26,239,-230,-2,6.3,0,9,-580,1.4,2,-9,.5,19,.5,12,3,-2.2,1,4,-25,.5,66.4,1,2,558,29,23,-53,9,-7,-564,1.5,-5,1.5,-19,1,440.7,308.4,.3,312.4,310.3,8.2,442.4,0,2,317.3,.6,9.3,429.5,480.6,8.4,44.4,.21,1,.7,-1,26.4,0,1,-2,470.4,48.6,56.3,.2,559,-304,-252,-2.2,-1,3,5,-10,2,3,1,3,4,-4,2,4,-12,-2.2,-4,-2.2,-2,-3.2,-6,3,5,-14,1.4,2,4,2,4,-14,1.2,-3.2,4,-1,3,7.2,-2.2,-5,1,2,6,-2.2,-10,-3.2,29.2,0,5,4,-9,-2.2,-3,-4.2,-13,54.2,4,5,-13,1,2,605,176,-134,-76,182,-107,-31,-27,222,-189,-635,.4,794,35,1.2,2,-66,30,-188,189,-26,-112,16.2,-24,57,-635,0,1.2,10,2,-2,-2.2,603,33.4,-756,1.3,-2.2,631,-626,812,-808,740,29.4,-117,144,-199,200,-168,23,5.4,-633,.45,1,139.3,2,-1,.51,551.3,-1,.91,1,.91,-1,.9,648.3,.4,1,.41,2,.4,-2,8.2,16.2,.9,3,.4,-4,.9,22.5,.9,14.3,.8,208.5,4.1,630.3,578,1,41,-42,1,4,678.2,590.7,.62,22.5,246.3,3,15.2,-1,1,575,-576,.3,1,584,-583,-2,.7,1,585,-12,742.2,4.3,298.4,-1,604,-604,1,.2,649,.5,-650,.71,33,-3,.3,1,-31,.31,1,605,336.2,31,.7,-607,.9,128.4,4.1,4.1,577,78,-53,.8,-602,.01,276.3,.7,577,7,-583,776.5,-1,.2,2,-2,297.4,6.2,305.3,662.3,14.1,28.72,389.6,576,-573,-3,380.3,80.2,74.4,14.1,28.22,.4,59.4,889.4,.3,69.5,10.1,20.41,919.5,940.6,115.7,16.3,19.1,38.73,540.4,4.1,8.6,142.3,892.5,0,1,.7,2,-2,1052.4,3,-4,0,25.3,221.4,13,2,4,-16,1.2,8,510.2,4,5,510.2,-1,-3.2,586,0,-35,901.2},{918,258,1.91,25,2.1,1.91,34,5,1.91,36,1.911,92,1.4,16,1.4,36,1.4,6,1.4,26,6.3,8.4,2.1,4.1,4,1,4,1,4,1.6,6.1,6.5,4.1,8.1,22.1,34.22,40.9,2,1.8,2.1,4.1,4.1,37,1,2,1,2,1.5,43,1.5,403,4,-8.2,-4.2,6,-2.2,6}},{{2,1},{2,.4,574,.2,-574,.2,4,0,600,-28,-576,.4,604,-23,-581,638,-627,567,-578,580,0,24,-26,-578,0,578,2,.2,-580,2,0,572,6,-6,6,-580,.2,578,.2,-577,.2,-1,.2,2,.2,-2,.2,3,8.3,576,14.3,12.4,10.2,578,.5,10.2,580,.2,-581,.5,1,12.3,1,.5,16.3,40.4,.5,2,.2,1,30.3,577,.2,-570,.2,-8,.5,579,.2,-578,.5,577,8,0,-584,15.2,2,0,72.2,34.2,3,26.3,30.4,46.4,68.3,.8,617,.2,-615,6.2,.5,638,.2,-637,.2,603,.2,-604,.11,18.3,.5,600,.2,-600,.2,147.2,-572,4.3,-573,.2,-3,.9,574,-572,0,572,-573,0,90.3,-570,-6,11,-13,.4,615,-604,-11,.2,591,-13,-576,-2,0,1,-1,13,-13,595,-17,-4,5,-579,1,775,-776,0,8,-8,0,4,-4,1,573,0,4,-578,11,-7,7,563,-563,566,-577,585,-7,39,44,-31,-26,-19,6.5,-604,0,578,-574,-4,580,-6,-573,-2,1,11,651,0,-60,47,-649,.2,611,-611,2,6,571,-578,-1,1.2,-2,3,.3,576,7,-586,4,.2,-4,.22,1,.2,252,0,56,0,3,0,3,0,14,160.3,3,.3,1,0,244,1,-581,576,0,2,0,-4,.2,5,0,1,.2,6,0,-5,.2,3,194.2,617,-43,5,41,18,-638,.4,11,.4,-7,.4,7,.4,-8,.91,576,1,6,-5,-581,13.2,644,-53,167,68,-252,-585,.42,5,.91,3,.91,-8,.93,4,.91,-4,.3,578,-578,1,577,-2,-2,4,-579,577,3.2,-1,2,-3,1,0,2,-1,6,0,1,0,-1,-7,.2,1.2,576,-571,7,-6,-8,0,32.2,13,561,-573,.4,1,.4,576,-4,-573,577,2,-578,576,3,.4,-1,.4,-6,0,5,.2,1,.4,-580,87.3,584,20,-610,591,-590,629,-4,-625,1.2,-4,.44,1,.4,580,.4,-7,0,6,-575,.2,-5,.2,581,393.2,314.3,579,0,-579,581,0,-581,6.3,.9,1,360.3,-578,360.3,579,.4,255.2,.5,4,.5,6,.2,-11,.8,8.2,580,-570,567,-577,7,-6,-1,0,803,-804,1,0,4,-3,3,-2,-3,0,2,0,-1,1,578,-576,.8,7,.6,-9,0,2,.7,-4,1,3,582,-10,-576,579,-577,-2,22.3,573,-573,1,-1,578,10.1,20.91,.4,-1,261.3,7.2,575,-574,8.2,10.1,20.81,1,-2,96.2,104.3,.2,8.1,16.1,577,582.3,-579,258.3,0,53.3,1,13.1,26.1,2.1,-2,2,579,-580,5.1,10.9,-581,32.2,0,2,-580,579,1,-1,432.2,11,572,-572,-11,580,24,-593,0,485.2,2,578,40,-40,423.2},{1.2,15,-2.2,7,1,-2.3,6,2,1,2,4,2,5,-2.6,-4.2,6,-2.3,11,12.3,5,2,1.2,-2.2,21.2,1,17,1.2,4,2.1,1.92,7,1.5,4,1.11,4,1.32,4,1.8,12.3,4.2,1.92,4,1.71,4,1.02,7,16.2,1.83,4,22.2,1.2,3,1,3,1.03,2,1.21,2,1,407,1,11,5,6,3,1,53.2,4,3,1.2,58,1.21,31,11,-2.3,4,9,4,37,3,2,1.3,2,1.4,2,1,3,2,4,8,91.3,1.3,6,1.2,16,50.2,1.91,22,1.22,7,8.2,1.91,4,1.9,6,1.41,6,1.91,6,1.4,11,1.841,66.3,1,3,1.32,13,1.2,40.3,4.1,67.3,3,1.6,28.3,1.9,11,1.41,66,1.4,16,1.43,34.2,2.1,26,18.2,2.1,1.2,8,6.1,6.5,4.1,6.1,56.2,18.6,23,10.3,20.8,18.2,12.2,18,10.5,63,1,82.3,7,2,5,2,1.3,3,-2.3,-3.2,7,94.4,43,1.4,-2.4,5,1.6,7,2,17,1.7,23,4,172.3,1,3,25.2,41.4,6.1,12.01,1.5,-2.2,4.2,188.4,7.1,14.31,1.3,7.2,-2.2,4.1,8.1,310.4,1.7,3,317.5,7.1,14.01,255.4,2.1,2.1,8.2,3,1,2,1.6,2,1,11,4,69.2,-3.2,14,1.2}},{{2,2},{3,-1,.3,1,0,-1,0,577,-1,-576,.7,578,-578,.6,6,-5,.2,-1,1,.4,576,.2,-577,.2,577,.8,6,.2,-6,.5,-576,.2,576,.5,-1,.2,2,.2,-578,.2,1,.2,575,.2,14.3,.2,-574,8.5,4.2,1,41.2,8.3,577,6.3,2,4.3,2.1,1,52.3,578,8.5,44.2,38.2,7,.2,-583,14.3,10.4,48.2,4.2,-2,72.3,574,40.3,7,.2,-7,.5,6.2,28,.2,-605,20.3,6,.2,-581,46.3,582,.2,-582,4.3,-6,10.3,-573,34.3,1,.2,5,56.3,84.2,74.2,32.2,50.2,64.4,604,.2,-28,0,1,-1,-575,575,0,3.1,-574,0,575,-576,576,-1,10.2,576,-577,576,-575,0,576,-578,4,-4,1,0,577,9.2,574,3,-2,0,-577,36.3,12.2,-576,580,0,54,-636,1,612,-612,.3,1,-2,613,-34,76,-654,654,-635,-18,.5,-1,.5,2,-2,0,18.2,75.2,-578,1,575,-558,0,-16,0,-2,1,-1,576,0,-576,578,-2,2,-4,4,.4,93.2,612,.2,26.2,2,.91,-2,.52,1,.4,-2,.4,794,-16,20,36,-250,34,44,174,-210,-46,198,-200,220,-191,-23,-5,0,39,0,-43,.2,30,0,-25,.2,41,.3,-40,.2,58,-638,.4,577,29,49,-26,-27,-583,.4,-19,.91,578,0,39,.3,26.3,.2,-25,.3,41,.2,-40,-3,0,-1,.3,2,.2,-4,.2,5,.3,1,.2,6,-584,.91,-3,.91,579,0,-4,.3,5,.2,1,.3,6,.3,-5,224.2,340.2,-575,111.3,4.2,1,185.3,0,576,.4,7,2,-2,-5,-2,.2,145.3,7,0,2,-578,571,-2,9.2,-574,4.2,202.2,573,18.3,.3,2,382.2,0,577,198.2,39.2,2,.9,3,.4,-3,143.3,256.2,2,-4,-573,.9,599,9,-11,-596,650,-40,0,-35,273.2,.9,584,37,-21,9,22,-10,-30,20,-2,22,-47,10.4,-26,-602,623,-621,778,-207,41.2,0,6,0,1,-581,.7,314.2,358.2,2,320.2,0,82.2,7.2,.5,11,.5,578,20,-19,-592,322.2,0,2,373.3,0,2,-2,.2,9,340.3,80.2,5,0,-5,-2,0,-2,3,0,207,-208,0,2,12.3,28.5,259.2,577,0,448.3,273.2,-580,585,-9,7,263,-270,350.2,0,2,-1,-3,3,-3,2,-574,574,166.3,-575,646,-41,.2,-23,19,167,-162,179,-139,-41,.5,-606,0,855,-272,-7,453.2,1,44,-45,.2,3,177.2,1,369.2,576,1,-1,-573,9.1,18.71,1,0,6,98.3,574,9,-9,533.3,15.2,13.1,26.52,407.2,644.3,8,-8,652.3,9.1,18.71,-577,577,95.3,9,-8,-1,1,9.3,21.2,13.1,26.52,146.4,563.2,5.1,10.9,2,0,-3,9,-7,-2,7,-7,.3,579,-567,564,216,-793,0,630,-52,.2,426.2,619,-620,.2},{1.2,15,-2.2,7,1,-2.2,10,1,2,4,2,5,-4.2,2,6,4,6,4,2,11,6,2,1,5,2,1.2,4,1,-2.3,1,17,6.2,2.1,1.92,7,1.5,4,1.11,4,1.32,4,1.8,12.3,4.2,1.92,4,1.71,4,1.02,7,16.2,1.83,4,22.2,1.2,3,1,3,1.03,2,1.21,2,1,407,1,11,5,6,3,1,53.3,3,2,58,1.21,31,11,-2.3,4,9,4,37,3,2,1,4,1.4,2,1,3,2,4,8,94.3,1.3,6,1.2,16,50.2,1.91,22,1.2,27,8.2,1.91,4,1.9,6,1.41,6,1.91,6,1.4,11,1.4,6,1.831,68.3,1,3,1.32,13,1.2,42.3,4.1,69.3,3,1.6,30.3,1.9,11,1.41,66,1.4,16,1.43,36.2,2.1,26,18.2,2.1,1.2,8,6.1,6.5,4.1,6.1,56.2,18.6,23,10.3,20.8,18.2,12.2,18,10.5,63,1,82.3,7,2,5,2,1.3,3,-2.3,-3.2,7,94.4,43,1.4,-2.4,5,1.6,7,2,17,1.7,23,4,227.4,3,25.2,41.4,6.1,12.01,1.5,-2.2,4.2,52.2,2,1.4,7.1,14.31,1.3,7.2,-2.2,4.1,8.1,315.4,1.7,3,2,7.1,14.1,53.3,2.1,4.3,8.2,3,1,2,1.6,2,1,11,4,69.2,-3.2,14,1.2}},{{2,3},{6,-3,-1,.2,6,0,-6,.2,576,-576,576,0,-576,.5,581,-580,.2,1,.2,17.2,2,.2,-3,.2,3,.5,4.2,8.2,12.3,.5,-1,.5,1,.5,21,.2,-20,12.2,.5,-2,.2,5,.2,-4,32.7,626,.2,-625,44.3,606,.2,-607,.2,4,46.4,24.2,.5,8.2,593,.2,-593,46.2,22.3,-5,34.3,6.2,4,.2,87.2,4,.8,24.2,18.2,5,12.3,-7,56.3,597,.2,70,.2,-667,12.3,600,.2,-605,.2,5,96.3,18.4,-593,.2,86.2,605,.5,-607,.4,-1,0,2,3,-4,3,0,5,-6,2,-5,9,-2,-6,1,-1,6,-4,-2,5.2,578,-578,-1,4,0,-3,3,-4,574,-573,3,-2,0,-1,2,0,-4,4,0,-2,-1,0,1,-1,.3,579,-579,.11,178.2,6,570,0,-567,-9,.2,5,3,-1,4,-11,8,96.2,.3,78.2,4,1,2,127,0,82,0,27,.2,1,0,129.3,.3,2,.3,-248,99.3,5,.91,-4,93.2,.31,1,2,.4,4,.9,4.2,-9,.4,604,-30,43,-39,7,-335,0,1,.3,1,163.3,36.3,.2,50,-301,.4,2,26.3,37.2,6.4,234,0,2,.3,3,190.4,31.4,-248,.42,19.4,-6,1,-3,4,0,-1,594,-595,0,6,-7,2,-3,.2,8,-5,1,-1,2.1,4.1,8.1,.2,3,-6,6,-2,0,-4,.2,8,-8,.3,3.2,1,2,5,-7,2,-4,3,6,.41,600,32,-639,593,31,-615,.4,-2,.4,-10,.4,607,49,-79,31,-29,0,39,-38,1,224,-800,.41,1,.4,-3,.4,168.3,.2,572,.2,-568,294.3,574,-4,6,-4,.5,2,.2,-4,0,6,-577,376.5,4,122.3,73.2,571,.2,-569,.2,-2,328.5,314.4,16.2,576,3,61,-641,13.3,303.3,1,-2,1,2,262.3,-2,3,.3,-4,4,-5,0,5,-5,2,-1,.8,2.1,6,-6,0,-2.2,-4,9,118.3,4,-4,9.1,18.71,-3,.3,8,-5,0,1,-4,-1,1.2,7,166.3,10.1,20.71,-6,-1,2,5,-5,5,-2,-7,0,3,9.1,18.71,2,-1,0,597,-594,395.3,-3,1,-2,9,0,-7,13.1,26.52,-8,-1,-2.2,0,-3,4.1,8.7,5,0,-8,6,591,-20,-575,-1,615,-43,-555,-20,3,1,2,-2,6,-4,0,-1,234.2},{1.2,26,1,2,12,1,2,19,2,6,10,4,2,11,14,2,1.2,7,2,20,1.2,4,2.1,1.92,10,4.2,1.5,8.3,1.32,4.3,16.4,1.8,18.2,4,1.71,4,1.02,7,1.11,4,1.83,24.2,9,1,3,1.91,2,1.9,3,1.7,46.2,2,408,12,5,6,3,1,3,1,4,5,58,1.21,42,2,-4.2,9,4,42,1,10,1,3,2,4,8,2,4,2,1.3,6,1.2,16,80.2,1.91,22,1.2,27,8.2,1.91,4,1.9,11,1.9,6,1.91,6,1.4,21,1.421,2,1,60.3,51.3,3,1.32,13,64.2,1,3,4.1,1,74.2,3,1.6,28.2,2.1,6,1.9,21,1.4,66,1.4,46.2,11,12.4,1.4,26,22.2,2.1,1.2,8,6.1,6.5,8.1,58.2,8.6,23,10.3,24.6,26.4,12.2,18,10.5,63,1,84.3,7,2,5,2,1.3,3,-2.3,-3.2,7,96.4,43,1.4,-2.4,37,1.7,27,2,7,3,18.2,34.4,6.1,12.01,234.3,3,45.2,2,1.4,7.1,14.31,1.3,-2.2,1.2,-2.2,4.1,8.1,1,2,4,2,1.7,3,2,7.1,14.1,53.3,2.1,4.3,8.2,4,2,1.6,14,4,91.2,2,-3.2,14,1.2}},{{1,3},{5,-3,.5,9,.2,-9,-1,3,576,0,-578,.8,578,0,-2,.2,-575,.2,595,-2,3,-594,.5,593,5.2,-596,10.4,-596,.5,5,.2,590,7.2,190,-148,149,-789,.2,597,8.2,-6,-13,-2,-575,590,-589,2,-2,581,-580,-4,636,-634,.991,-2,0,581,-2,-576,5.2,-1,577,0,3,-577,.2,572,0,3,-3,-574,5,574,-5,-573,18,.11,-18,.5,776,-200,29,49,0,-26,6,182,-25,26,-206,181,-189,-25,1,6,-5,-581,654,-77,29,23,-27,-26,-576,.5,577,42.2,594,-16,-578,0,3,0,-3,-1,0,579,61,0,139,-139,0,184,-229,184,5.2,8.2,-638,0,634,12,-70,-1,2,-4,6,.2,-578,.2,-2,.5,635,12.2,1,-4,5,-577,147.2,1,-581,579,1,0,-1,1,0,-580,.5,580,0,6,0,-5,23,-25,0,41,-40,-580,0,-1,0,1,0,614,-30,8,-591,.2,1,.2,-1,0,-1,.41,576,.4,2,.4,-579,.9,622,24,-44,30,11,3,-45,32,-1,11,-642,.4,600,.4,-23,.4,-573,.4,573,.4,-577,.4,577,.4,27,199,39,-254,23,-610,.5,-1,591,41,-632,.5,578,0,1,.2,1,264,-179,-664,577,-572,-2,576,-578,74,.5,-75,.01,-1,578,11,10,8,-18,3.1,6.5,-606,0,601,-601,575,-575,5.1,10.9,-576,588,-588,0,3.1,6.5,577,35,-611,598,-23,1,5.1,10.9,3,.3,24,0,-592,-11,.2,580,-2,0,26,-25,-579,600,-23,-577,612,-32,-571,571,-3,1,-4,0,4,-4,5,249.3,2,-7,2,208.2},{3,1.9,3,10,12,2,15,17,9,2,9,-2.3,1,4,7,2,78,1.2,19,1.2,61,1.2,4,1.2,40,1.5,28,1.5,10,8.3,2.1,7,1.2,13,6.5,5,4,14,7,3,2,8,-2.2,4,3,1,203,1.991,4,2,3,2,1.2,2,1,-2.2,2.1,1.3,3,1,3,5,1,2,6,2,1.11,7,1.53,50,17,2,4,1,2,36,1,2,1,2,12,5.4,3,1,37.2,4.3,3,1,8,1,12,68.5,21,1.5,4,2.1,1.2,27,12.2,1.11,24,1.2,11,1.4,20,21,1.4,6,1.4,155,1,65.3,1,32,87.4,3.1,7,1,13,1.4,26,1.91,21,1.42,6,1.43,206,58.2,1.2,8,4.3,2.1,53,8.3,80,2,1,-3.2,6,1,31,35,1.5,22,1.01,50,16,4,6,-5.2,2.1,4.3,5,8,6,1,6,1,-6.2,4.1,8.7,3,-2.2,9,2.1,4.1,4,9,2,-3.2,4.1,8.1,-6.4,1,3,6,-3.2,1.6,2,1,78.2,12,2,1,6,1.8,134.2}},{{1,4},{11,.5,-10,4,-2,582,-582,-1,0,580,-6,4,1,0,1,-568,0,595,-607,0,4,.2,-4,.2,1,.2,575,.2,-576,.2,585,.2,-584,.2,-1,.2,576,.2,-575,6.2,1,2.1,-1,1.2,0,-2,612,-612,0,1,19.3,2,0,-2,2,-3,636,-633,6.2,.6,1,.5,-2,.71,1,.21,576,1,30,56.2,607,0,-606,0,587,233,-243,-577,0,43.3,.2,3.2,.3,585,0,-585,72.3,2.1,-2,.2,577,6,-7,-576,.5,56.3,.8,2,.8,-3,.4,3,.9,576,2,-2,1,-1,0,-578,.2,579,-1,2,-1,3.2,-2,2,31,4,16,32,118,-780,.91,-2,.4,10,.4,-9,.71,580,0,-580,8,.2,-7,0,661,-662,576,-576,.01,578,-578,90.2,-577,1,578,-2,4.1,8.7,-4,-574,574,2.1,4.3,27.2,2.1,4.1,158.2,2,-576,2,-4,.2,581,-581,2,.3,-1,.5,-1,.2,648,-13,0},{4,1.8,3,22,2,15,17,9,2,9,-2.3,1,4,7,2,99,1.2,61,1.2,49,1.2,28,1.5,10,1.2,19,1.2,13,1.2,4,1.2,7,1.2,5,4,24,21,407,2,3,2,1.2,2,1,-2.2,2.1,1.3,3,1,3,5,1,2,6,2,1.11,7,2.1,1.71,50,17,2,4,1,2,36,1,2,1,2,12,1,3,2,3,1,38.2,4.3,3,1,8,1,12,60.5,21,1.5,4,2.1,1.2,27,12.2,1.11,24,1.2,11,1.4,41,1.4,6,1.4,155,1,65.3,1,32,-2.2,4,3,1,3.1,7,1,13,1.4,26,1.91,21,1.91,26.2,221,1.2,8,1.2,53,1.2,90,2,1,13,31,62,1.01,50,16,4,6,-5.2,2.1,4.3,5,8,6,1,6,7,4.1,8.7,4,2,11,2.1,4.3,24,2,19,2.1,4.3,30,1,3,9,5,1.3,9,12,2,1,6,1.8,108.2}},{{3,1},{578,2,-1,-575,.2,-1,.2,4,.2,-2,.8,6.2,1,.2,-3,.2,8,.2,-8,8.2,0,1,9,-6,-3,5,-7,0,1,-1,11,2,580,-14,1,-579,573,-565,-9,2,-2,.2,9,-7,.01,-1,.9,38.2,7,.9,-7,.91,579,.2,1,.3,6,.2,-5,.2,3,.3,-584,.2,6,.91,-5,.91,255,0,59,.3,18,70.3,5,.3,4.2,2,-343,.91,-3,-2,5,-4,4,.4,23.2,8,.4,-8,.41,2,.7,58.2,2,.5,3,.2,573,0,1,-577,.2,-2,9,-7,-1,2,3,.6,-4,-2,2,2.1,4.3,5,573,-578,3.1,6.1,.8,5,54.3,3.1,6.5,3,0,-3,3.1,6.1,.3,13,-5,-8},{29,88,1,176,1.2,4,1.5,7,1.2,34,1.2,16,1.2,10,1.5,10,1.2,19,4.2,8,1,2,1,2,6,3,1,-3.2,25.2,1,6,12.3,3,578,48,1,8,1,17,54,1.9,35,1.9,65,1.2,26,1.9,36,1.911,6,2,36,2,56,1.4,11,1.9,2.1,71,1.4,16,6.2,4.2,1.4,61,1.2,33,1.2,8,1.2,18,1.2,73,1.2,3,1.2,53,1.2,63,7,18,16,7,52,1.2,-2.4,89,1,15,2.1,4.1,3,7,10,3.1,6.5,5,4,9,4,9,4.3,15,8,2,11,3.1,6.5,1.2,4,2.1,4.1,7,3,1,3,16,5}},{{3,2},{3,.2,605,.2,-29,.2,77,.2,-76,.2,-1,.2,8,.2,-7,.2,7,4.3,-564,.2,562,.5,1,8,-8,1,-2,-576,577,-577,577,2,-578,-1,0,577,-576,634,-55,-2,-562,0,562,-2,2,37.2,-1,.3,2,0,1,-1,0,-4,.3,5,.2,1,-580,.2,578,.2,9.3,.5,1,.3,6,.2,-5,.2,3,.3,-584,.22,579,.2,12.9,.2,585,.2,-11,.3,46,.2,-34,.2,184,.3,-770,.2,5,.4,2,.9,2,.4,569,46.4,.3,1,.2,6,.3,-5,0,-5,1,6,-7,-2,.3,6,-580,.3,1,652,-37,-21,56,-646,572,.4,8,.4,27,.4,-35,.9,7,37,-21,9,22,-57,0,6,0,1,-5,0,-2,-574,.2,576,0,2,-2,3.1,0,2,11.2,572,8.4,7,-7,2,28,0,-23,19,167,-162,179,-209,-575,575,2.1,4.3,576,-571,569,2,3.1,6.5,1,-1,2.1,4.1,2,-1,3.1,6.1,-1,0,1,21,-22,3.1,6.5,-597,0,573,9,274,-857},{29,88,1,176,1.2,4,1.5,7,1.2,34,1.2,16,1.2,10,1.5,10,1.2,19,4.2,8,1,2,1,2,6,3,1,-3.2,25.2,1,6,12.3,3,578,48,1,8,1,17,54,1.9,35,1.9,65,1.2,26,1.9,36,1.911,6,2,36,2,56,1.4,11,1.9,2.1,71,1.4,16,6.2,4.2,1.4,61,1.2,33,1.2,8,1.2,18,1.2,73,1.2,3,1.2,53,1.2,63,7,18,16,7,52,1.2,-2.4,89,1,15,2.1,4.1,3,7,10,3.1,6.5,5,4,9,4,9,4.3,15,8,2,11,3.1,6.5,1.2,4,2.1,4.1,7,3,1,3,16,5}},{{3,3},{2,.5,1,.2,4,.2,621,.2,-624,.2,3,.5,603,.8,-601,2,-4,0,4,-2,-6,2,-1,2,-2,.2,-1,0,1,-3,6,4,-4,.2,3,0,-1,.4,2,.4,-4,.4,4,.4,-2,8.5,2,.9,6.1,12.1,6.2,-10,.91,6,14.6,-2,4,2,18.2,42.2,6,.9,-10,.4,10,.9,10.2,-1,72.2,.2,1,.2,3,.2,-2,.5,-3,0,-2,5,0,-4,.6,8,.7,-5,5,0,3.1,6.1,5,-7,7,2.1,4.3,-3,20.11,-5,.7,-1,0,2,-6,6},{29,88,1,176,1.2,4,1.5,7,1.2,34,1.2,16,1.2,10,1.5,31,1.5,10,8,1,3,2,6,3,1,-3.2,1.2,5,6,1,2,1,3,578,48,1,8,1,17,54,1.9,35,1.9,93,1.9,36,1.911,6,2,36,2,56,1.4,11,1.4,16,1.9,71,4.3,31,1.4,61,1.2,33,1.2,8,1.2,18,1.2,73,1.2,58,1.2,63,7,18,16,7,52,1.2,-2.4,89,1,15,2.1,4.1,3,7,10,3.1,6.5,5,4,9,4,9,4.3,15,8,2,11,3.1,6.5,97.2,1,5,1,5,1,11,3,4,16,5}},{{2,4},{2,.8,4,.5,-1,.2,1,.2,4.3,8.2,.8,-2,.5,2,12.3,-3,.2,3,16.3,4,.2,-4,12.7,4.2,2,.71,16.2,2.1,2,32.2,4.2,.5,32.8,28.9,22.3,3,60.2,1,-1,-3,4,-4,4,10,-15,6,4,-9,9,0,-6,0,24.2,15,-15,-1,2,38.2,3,-4,0,4,-3,3,6,-9,3,59.3,21.3,5,.4,2,.9,2,.4,-9,.4,15,.4,-15,.4,1,.91,-2,.4,6,16.6,.93,24.7,.91,1,82.3,.7,-1,0,3,.3,-3,2,-2,3,0,-1,2,.8,1,.4,-3,2.1,.4,2,.41,576,.9,-574,.4,47.2,166.4,8,.2,-9,.5,4,126.3,-4,.2,2,.2,-2,14.3,5,.2,-11,.5,-3,196.3,4,.2,6,.2,-6,.5,601,-602,-2,4,0,-1,-2,2,0,3.2,5.3,1,0,-1,0,-3,.81,174.3,1,.6,3.1,6.5,68.2,1,28.3,18.2,7,-6,0,10.1,20.91,40.3,3.1,6.1,.5,6,-7,1,.6,4.1,8.7,35.3,3.1,6.1,0,2,-1,574,-577,8.2,1,577,-571,-3,-2,576},{43,1,29,14,2,27,1.2,9,20,1.2,10,1.8,4,1.5,4,1.8,19,1.2,4,1.2,7,4.2,12.2,8.3,4.1,6.5,24.2,2.1,24.4,34.4,1.41,32.4,2.1,12.3,36.5,10.2,12,1,3,1,2,1,2,1,3,2,1.2,-2.2,3,6,-3.2,1,6,8.2,410,26,1,3,10,70,44,-4.2,9,46,1,10,1,5,4,8,2,4,2,1.3,24,43.2,1.91,92,1.9,11,1.4,11,1.91,31,1.48,21,1.91,7,10,1,3,4,1.81,4,14,1.2,-3.2,1.2,3,11,32,1.9,21,1.4,66,1.4,16,1.91,29.2,6,1.4,41,16.2,1.2,13,4.3,8,4.3,2.1,12.4,18,12.7,23,24.5,22.6,12.2,22.2,8.4,64,-3.2,7,2,5,9.3,-2.3,3,10,2,1,3,44,1.4,-2.4,37,1.7,27,2,10,1.3,3,2,3,1,4,6.1,12.01,1.5,4,1,4,2,43.2,1.4,7.1,14.31,1,4,3,1,-2.2,5.1,10.1,3,4,210.3,2,57.3,8.1,16.51,54.2,244.4,3.1,1,3,11,1,2,1.3,14,6,11.3,3}},{{2,5},{3,.6,-1,.2,9,-8,0,-1,0,2,.4,1,.9,1,.4,-4,.11,1,.2,6.2,10.4,-2,6.5,-3,.4,8,.21,-5,.2,5,.5,-7,.5,1,.2,-3,.2,4,4.2,575,.3,-575,1,3,0,-6},{73,14,2,27,1.2,9,785,1,13,70,48,4,55,1,72,1.91,92,1.9,76,1.42,41,1.91,157,1.4,116,1.9,81,1.2,18,1.2,8,1.2,3,2.1,4.3,53,1.2,23,1.2,78,1.2,254,80,-20.3,182,1,3,1,22}},{{1,5},{8,-6,0,576,0,-572,-4,.2,576,-575,-1,0,1,0,578,-579,1,7.3,-1,1,.6,-2,.11,7,-2,575,7,-587,0,3,-1,-1,3,1,-4,.5,578,-4,5,-578,.8,579,6,-5,-581,.2,1,.2,-1,.7,1,.4,4.3,-1,1,3,.4,5,.41,567,.4,7,0,201,0,-199,-9,.2,9,-7,-578,.5,60.3,-2.2,574,7,-7,0,43.2},{80,2,13,2,1,4,783,3,2,1,6,2,1,-2.2,1.3,4,3,6,2,6,20,1.11,7,1.5,79,6,39,1,2,1,23,4,1,3,6,28,1.2,7,1.2,21,1.2,16,1.2,27,1.2,4,1.11,24,1.2,11,1.4,41,1.4,6,1.4,163,1,43,1,7,1,21,1.4,36,1.9,21,1.91,276,1.2,53,1.2,90,3,166,328,14,1.3,23,7,1.8}},{{1,6},{2,.2,579,2,-581,2,-2,1,-1,8.2,-1,-577,-1,.9,1.2,0,1,0,1,-4,7,0,-4,0,573,.4,-576,.2,2,.2,23.2,25.3,4.3,-577,4.2,0,1,3.1,-1,.3,6.4,.2,2.1,2,-2,2,.01,-4,.9,2,.2,-3,.2,577,-574,-2,.5,1,-1,.5},{80,2,13,2,1,787,3,2,1,6,2,1,-2.2,1,2,4,9,2,26,1.5,13,1.5,79,45,1,2,1,23,4,1,3,6,28,1.2,7,1.2,21,1.2,16,1.2,27,1.2,4,1.5,4,1.2,24,1.2,56,1.4,6,1.4,163,1,43,1,7,1,61,1.9,31,1.9,276,1.2,53,1.2,90,3,166,344,1,23,7,1.8}},{{1,7},{1,0,93,-92,6,-6,131,-39,39,-39,508,172,-771,815,-218,-596,-2,0,11,0,81,.2,-86,.2,-6,.2,131,.2,-39,.2,39,.4,-39,.4,-90,.11,577,-487,.2},{97,1,790,2,1,14,2,4,9,2,26,1.5,142,1,2,1,74,1.2,21,1.2,54,1.2,4,1.2,24,1.2,56,1.4,6,1.4,317,1.9,936,1,23,7,1.2}},{{1,8},{1,0,1.2,-2,.3,1,.2,2.1,-1,.11},{97,1,793,14,190,1,2,1,97,1.2,54,1.2,419,1.9,936,1}},{{1,9},{1,.3},{97,1,997,1}},{{3,4},{2,0,3,.2,1,.2,-4,4.2,.5,2,.5,-2,.2,-1,2.1,.2,4,.2,-2,2,-1,7,-6,-4,3,17,-19,-1,4,-4,0,2,-1,0,1,.93,-1,.91,3,.91,-3,.91,1,30.2,.9,1,.02,2,.2,-3,.2,3,36.2,-1,4,-3,0,-1,.6,3,.3,6.2,3,3.1,6.1,-2,.7,-1,3,0,-3,3.1,6.4,71.3,2.1,4.3,1,-2},{117,1,176,1.2,4,1.5,7,1.2,34,1.2,16,1.2,10,1.5,31,1.5,10,8,1,3,2,6,3,-4.2,1,12,-3.2,578,48,1,8,1,17,98,1.9,93,1.9,36,1.91,21,1.93,21,1.91,6,38,2,56,1.4,111,1.4,16,1.9,31,1.4,61,1.2,43,1.2,18,1.2,73,1.2,58,1.2,63,7,18,16,7,52,1.2,-2.4,89,-16.4,3,7,10,3.1,6.5,5,4,9,4,9,4.3,15,8,2,11,3.1,6.5,1.2,5,1,5,1,5,1,46.2}},{{3,5},{3,0},{117,1}},{{4,1},{3,.2,-1,.2,2,-2,2,5,-2,-3,.9,577,.2,1,.3,6,.2,-5,.2,3,.3,-584,.2,1,.9,2,.9,-1,584,.4,-578,.01,592,.3,-14},{381,1.2,34,1.2,10,24,3,9,11,754,1.9,218,1.93,46,171,1.4,21,1.4,462,1,-2.4,365,-6.3,30}},{{4,2},{587,.5,-9,-576,577,1,-1,1,0,-4,.3,5,.2,1,-581,.91,1,.91,576,9,.3,-2,.5,23,-23,19,167,-162,179,-786,.3,577},{381,1.2,34,1.2,10,24,3,9,11,754,1.9,218,1.93,46,171,1.4,21,1.4,462,1,-2.4,365,-6.3,30}},{{4,3},{610,.5,-601,-3,-2,5,-4,2,.4,4,.4,-4,.4,2,.9,8.2,6.5,.51,-8,.5,1,.3,7},{381,1.2,34,1.2,10,24,3,9,11,754,1.9,218,1.93,46,171,1.4,21,1.4,462,1,-2.4,365,-6.3,30}},{{4,4},{3,.5,2,0,-1,-2,1,.9,1,.91,-1,-1,.01},{381,1.2,34,1.2,10,27,9,11,754,1.9,238,1.91,46,196,1.4,462,1,-2.4}},{{2,6},{580,-574,613,-43,30,-25,1,-576,.81,-3,.3,1,0,-2},{913,83,296,1.4,437,1.9,81,1.2,28,1.2,3,1.2,504,-20.3,186,1,22}},{{2,7},{2,.5,2,.3,4},{913,379,1.4,1068,-20.3,209}},{{1,10},{1,0},{1095,1}},{{2,8},{578,.3,1},{2364,-20.3,209}},{{2,9},{3,.3,-1},{2364,-20.3,209}}}, + {342,.62,2,-265,.91,51,.91,1,2.1,4.1,8.1,.91,204,.14,10,-10,.95,14,.35,-12,.531,-2,.21}, + {{{1,1},{1,.7662}},{{1,2},{139,1.11,0,1.2,2.1,2,6.2,1.01,0,1.22,0,1.4,0,1.41,0,2,1.9,17.3,1.4,.2,11.2,1.6,0,-82,1,-24,3,1,11,-1,-9,58,1,-124,.99,51,.99,1,2.1,.99,260,-2.51,-186,4,-79,26,2,-30,52,-28,30,2,23,4,-57,-28,6,46,-57,80,-29,-26,-27,47,27,-84,94,-53,14,10,-38,50,-26,-36,-3,70,-92,.11,-51,.5,52,.5,1,.5,-53,6.3,-52,.5,51,.5,-51,.11,296,1,100.4,4.1,8.7,-15,1,-1,1,15,1.7,0,1.42,0,-230,0,183,51,0,-51,2,0,-152,0,150,.5,-183,12.7,-2,-150,13.2,.4,49,51.4,1.4,0,-122,1,122,1.5,-358,0,313,.2,2,2.1,4.1,8.1,.2,6,10.9,-186,.2,4,.2,-79,.2,-2,.2,52,.2,-28,.2,30,16.3,23,16.3,-57,.2,24,4.2,.4,80,.4,-29,.4,-26,.4,-27,.4,47,.4,27,.4,10,.4,-53,.4,14,6.3,-38,.4,50,20.3,-189,.4,2,.4,1,.4,-1,.882,560,6,1,-253,169.3,2.1,2.1,6,4.3,-6,.41,1,.01,1,.12,4.3,.01,-107,1,19,1,-38,1,-50,1,83,1,-82,1,66,1,9,1,-68,1,5,1,56,1,-3,1,182,97.3,-225,4.3,-32,129.3,-23,.2,434,1},{1.31,128,1.833,517,1,60,4,52,1.33,30,1.91,25,2.1,1.91,39,1.91,36,1.502,6,1.4,16,1.4,36,1.4,6.2,26,6.3,8.4,2.1,4.1,4,1,4,1,4,1.6,6.1,6.5,4.1,8.1,22.1,34.22,40.9,2,1.8,2.1,4.1,4.3,1.41,2,1.05,133,1.253}},{{2,1},{1},{29}},{{2,2},{152},{29}}}, {290,1.51,-35,2,1.5,2.1,3,1.2,-28,-3.2,11,-19,1,9,-7,24,-23,2,1,2,17,22,-1,-14,-21,19,.2,1,2.1,4.1,8.1,.2,3,10.9,-35,.2,2,16.7,8.4,22.8,5,.2,-28,.4,3,2.1,.4,11,.4,-19,.4,1,.4,9,.4,17,.4,-23,.4,2,10.3,4.2,10.2,22,.4,-8,34.3,-26,4.3,12,8.5} }, __refPoss = { diff --git a/luafight/Modules/Battle/Logic/Role/Skill.lua b/luafight/Modules/Battle/Logic/Role/Skill.lua index 37df3b95c..a88b3c6bb 100644 --- a/luafight/Modules/Battle/Logic/Role/Skill.lua +++ b/luafight/Modules/Battle/Logic/Role/Skill.lua @@ -158,7 +158,7 @@ end -- 判断是否命中 function Skill:CheckTargetIsHit(role) - if role==nil then + if role == nil then return false end return self.effectCaster:CheckTargetIsHit(role) diff --git a/luafight/Modules/Battle/Readme.txt b/luafight/Modules/Battle/Readme.txt index cd2cec9f2..d86659a9d 100644 --- a/luafight/Modules/Battle/Readme.txt +++ b/luafight/Modules/Battle/Readme.txt @@ -1,4 +1,8 @@ -v1.0.151 +v1.0.153 + 1.同步战斗提jiao +v1.0.152 + 1.同步战斗提jiao +v1.0.151 1.同步战斗提jiao v1.0.150 1.同步战斗提jiao diff --git a/luafight/test.lua b/luafight/test.lua index 10faa5c22..b91623e79 100644 --- a/luafight/test.lua +++ b/luafight/test.lua @@ -67,14 +67,14 @@ end -local testFightData ={enemyData={{{ai={0},camp=1,element=4,job=0,passivity={{152106,0,90,16,2,1},{152107,1,91,0.18,2},{152205,0,163,0.1,4,0.2},{1000011,0,205,0.12,2},{1000016,0,90,16,1,1},{1000038,0,188,0.12,4},{1000047,0,195,1,2,7},{1000050,0,205,0.18,2},{1000052,0,90,16,2,1}},position=1,professionId=1,property={"318","2799153","2799153","467018","5946","5946","1","0.407","0.407","1.771","0.099","0.547","0.386","0.547","1.0","1.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0"},quality=2,roleId=10090,skill={"1521",0.5,0,1,{400000,{1,0.95,2}}},skinId=0,star=5,superSkill={"1522",1.2,0.5,3,{200213,{1,1.4,2},{110,0.4,2}}},type=1},{ai={0},camp=1,element=1,job=0,passivity={{127106,0,90,16,2,1},{127107,1,102,1},{127205,0,425,3,1,1,0.8},{1000011,0,205,0.12,2},{1000016,0,90,16,1,1},{1000038,0,188,0.12,4},{1000046,0,194,1},{1000047,0,195,1,2,7},{1000048,0,196,0.5,3}},position=2,professionId=1,property={"318","2799153","2799153","467018","5946","5946","1","0.407","0.407","1.771","0.099","0.547","0.386","0.547","1.0","1.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0"},quality=2,roleId=10001,skill={"1271",0.48,0,1,{220000,{1,0.44,1}}},skinId=0,star=5,superSkill={"1272",1,0.5,4,{220000,{105,1.55,1,1,0.6}}},type=1},{ai={0},camp=1,element=1,job=2,passivity={{134106,0,90,16,2,1},{134107,1,107,1},{134205,0,134,1,1,0.36},{1000011,0,205,0.12,2},{1000016,0,90,16,1,1},{1000025,0,178,1,0.96,1},{1000038,0,188,0.12,4},{1000039,0,178,1,0.96,1},{1000040,0,189,1},{1000043,0,184,1,1},{1000047,0,195,1,2,7}},position=3,professionId=1,property={"318","2799153","2799153","467018","5946","5946","1","0.407","0.407","1.771","0.099","0.547","0.386","0.547","1.0","1.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0"},quality=2,roleId=10087,skill={"1341",0.48,0,1,{220801,{1,0.9,2}}},skinId=0,star=5,superSkill={"1342",1.2,0,1,{220003,{1,1.55,2},{111,0.6,1,0.2,1,2}}},type=1},{ai={0},camp=1,element=1,job=0,passivity={{130106,0,90,16,2,1},{130107,1,140,1,4,0.4,1},{130205,0,140,1,4,0.25,1},{1000016,0,90,16,1,1},{1000047,0,195,1,2,7},{1000052,0,90,16,2,1},{1000053,0,199,0.5}},position=4,professionId=1,property={"318","2799153","2799153","467018","5946","5946","1","0.407","0.407","1.771","0.099","0.547","0.386","0.547","1.0","1.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0"},quality=2,roleId=10016,skill={"1301",0.48,0,1,{400000,{1,0.9,1}}},skinId=0,star=5,superSkill={"1302",0.4,0,1,{400000,{1,3.15,1}},{300000,{24,12,0.3}}},type=1},{ai={0},camp=1,element=4,job=0,passivity={{145106,0,90,16,2,1},{145107,1,128,1},{145205,0,206,1,0.5,1,0},{1000011,0,205,0.12,2},{1000013,0,174,0.18,1},{1000016,0,90,16,1,1},{1000038,0,188,0.12,4},{1000042,0,191,0.18},{1000046,0,194,1},{1000047,0,195,1,2,7},{1000050,0,205,0.18,2}},position=5,professionId=1,property={"318","2799153","2799153","467018","5946","5946","1","0.407","0.407","1.771","0.099","0.547","0.386","0.547","1.0","1.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0"},quality=2,roleId=10043,skill={"1451",0.5,0,1,{400000,{1,1,2}}},skinId=0,star=5,superSkill={"1452",1.35,0.5,4,{400000,{103,3.5,2,0.3,1}}},type=1},{ai={0},camp=1,element=4,job=1,passivity={{142106,0,90,16,2,1},{142107,1,93,0.25,2},{142205,0,155,0.1,1,0.05},{1000011,0,205,0.12,2},{1000016,0,90,16,1,1},{1000022,0,177,0.25,0.12,1},{1000038,0,188,0.12,4},{1000045,0,193,0.32,1},{1000047,0,195,1,2,7}},position=6,professionId=1,property={"318","2799153","2799153","467018","5946","5946","1","0.407","0.407","1.771","0.099","0.547","0.386","0.547","1.0","1.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0"},quality=2,roleId=10024,skill={"1421",0.05,0,1,{100211,{24,1,1.03}}},skinId=0,star=5,superSkill={"1422",2.2,0,1,{100000,{24,1,0.9}}},type=1},monsterList={},teamPassive={},teamSkill={}}},playerData={{camp=0,element=4,job=0,passivity={{1471060,0,90,16,2,1},{1471070,1,159,2,1,0.6},{1471071,1,107,1},{1471100,1,160,0.8,2,1.6,2},{1471110,1,110,1},{1471111,1,91,0.18,2},{3471020,0,356,1472,2,1,2.12},{3000000,0,354,12,0.2,1},{1000026,0,179,0.1},{1000029,0,178,2,0.6,1},{1000016,0,90,16,1,1},{1201431,0,304,1,1,5,0.1,1},{147205,0,134,2,1,0.36},{147215,0,90,16,1,1},{3000004,0,90,16,2,1},{2320005,0,428,1,0,1,1,1,0,3,1,1},{2320006,0,90,1,0.05,2}},position=1,professionId=2,property={231,3027430,3027430,470723,88557,85631,0,0.33,0.57,1.23,0,0.63,0.13,0,1,1,0,0,0,0,0,0,0,0,0.17},quality=1,roleId=10041,skill={"1471",0.5,0,1,{400000,{1,1,2}}},skinId=0,star=14,superSkill={"1472",0.05,0.8,3,{210003,{2,1.72,2},{111,0.6,2,1,1,2}}},type=1},{camp=0,element=1,job=2,passivity={{128106,0,90,16,2,1},{128107,1,356,1282,111,3,0.3},{128110,1,135,0.4,1,2},{1000040,0,189,1},{1000043,0,184,1,1},{1000016,0,90,16,1,1},{128205,0,136,0.8,1,2},{128215,0,90,16,1,1},{2320005,0,428,1,0,1,1,1,0,3,1,1},{2320006,0,90,1,0.05,2}},position=3,professionId=4,property={205,1228505,1228505,235622,41355,34423,0,0.2,0.44,1.23,0,0.3,0,0,1,1,0,0,0,0,0,0,0,0,0.17},quality=1,roleId=10014,skill={"1281",0.05,0,1,{210003,{1,0.44,2}}},skinId=0,star=9,superSkill={"1282",0.35,1,6,{200000,{2,0.92,2},{111,0.65,1,0.2,1,2}}},type=1},{camp=0,element=2,job=0,passivity={{119106,0,90,16,2,1},{119110,1,206,1,0.2,1,0},{119205,0,105,1},{2320005,0,428,1,0,1,1,1,0,3,1,1},{2320006,0,90,1,0.05,2}},position=5,professionId=4,property={185,1017565,1017565,158447,31508,29119,0,0.15,0.39,1.15,0.06,0.2,0,0.1,1,1,0,0,0,0,0,0,0,0,0.17},quality=1,roleId=10033,skill={"1191",0.2,0.5,4,{220801,{1,0.9,2}}},skinId=0,star=9,superSkill={"1192",1,0.5,4,{220801,{103,3.15,2,0.3,1}}},type=1},{camp=0,element=1,job=0,passivity={{130106,0,90,16,2,1},{130107,1,140,1,4,0.4,1},{130110,1,141,1},{1000046,0,194,1},{1201431,0,304,1,1,5,0.1,1},{130205,0,140,1,4,0.25,1},{2320005,0,428,1,0,1,1,1,0,3,1,1},{2320006,0,90,1,0.05,2}},position=6,professionId=1,property={191,1470715,1470715,228680,35775,32981,0,0.15,0.39,1.15,0.06,0.2,0,0.1,1,1,0,0,0,0,0,0,0,0,0.17},quality=1,roleId=10016,skill={"1301",0.48,0,1,{400000,{1,0.9,1}}},skinId=0,star=9,superSkill={"1302",0.4,0,1,{400000,{1,3.15,1}},{300000,{24,12,0.3}}},type=1},{camp=0,element=1,job=0,passivity={{1311060,0,90,16,2,1},{1311100,1,105,1},{1311101,1,283,1,0,1,1,10},{1311111,1,327,1},{1000016,0,90,16,1,1},{131205,0,168,1},{2320005,0,428,1,0,1,1,1,0,3,1,1},{2320006,0,90,1,0.05,2}},position=2,professionId=4,property={205,1395497,1395497,258337,36437,36934,0,0.15,0.51,1.15,0.1,0.2,0,0.08,1,1,0,0,0,0,0,0,0,0,0.17},quality=1,roleId=10009,skill={"1311",0.48,0,1,{400000,{1,0.9,2}}},skinId=0,star=11,superSkill={"1312",2.5,0,1,{210003,{113,1.55,2,1,0.4,7,1}}},type=1},{camp=0,element=1,job=0,passivity={{133106,0,90,16,2,1},{133107,1,150,1,0.5,2},{133110,1,245,1},{1000041,0,190,13},{1201421,0,444,0.2,12,0.05},{133205,0,146,1,0.8,2},{2320005,0,428,1,0,1,1,1,0,3,1,1},{2320006,0,90,1,0.05,2}},position=4,professionId=2,property={205,1306801,1306801,261107,44697,42071,0,0.36,0.52,1.25,0,0.41,0.13,0,1,1,0,0,0,0,0,0,0,0,0.17},quality=1,roleId=10017,skill={"1331",0.48,0,1,{220801,{1,0.9,1}}},skinId=0,star=9,superSkill={"1332",1.7,0.6,6,{220801,{1,3.15,1}},{400000,{116,1}}},type=1},firstCamp=0,monsterList={{camp=0,id=0,position=100,property={0},skill={{{effect={"50043",0.35,0.5,4,{210003,{132,1,1800}},{100001,{117,0.6,1,1}}},maxCount=10,maxRoundCount=1,triggerCondition={8,3,4},triggerId=6}},{{effect={"50044",0.35,1,6,{200000,{134,1,1200,0.4,3,1,1,120}}},maxCount=3,maxRoundCount=1,triggerCondition={8,3,3},triggerId=6}},{{effect={"50038",1.4,0,1,{100213,{144,12,0.15,2}}},maxCount=1,maxRoundCount=1,triggerCondition={8,3,1},triggerId=11}}},star=72,teamDamage=8909144}},outData="",teamPassive={},teamSkill={}}} +local testFightData ={enemyData={{{ai={0},camp=1,element=4,job=0,passivity={},position=2,professionId=0,property={"1","600","600","140","25","25","400","0.0","0.0","1.0","0.0","0.0","0.0","0.0","1.0","1.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0","0.0"},quality=1,roleId=10053,skill={"100531",0.5,0,1,{400000,{1,1,1}}},skinId=0,star=3,superSkill={"100532",0.5,0,1,{400000,{1,3.5,1}}},type=2},monsterList={},teamPassive={},teamSkill={},weaponList={}}},playerData={{camp=0,element=4,job=0,passivity={},position=1,professionId=2,property={1,3000,3000,450,150,150,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0},quality=1,roleId=10071,skill={"100711",0.5,0,1,{210003,{1,0.49,1}}},skinId=0,star=4,superSkill={"100712",0.5,0,1,{200003,{109,1.4,1,1,0.24,5}}},type=1},firstCamp=0,monsterList={},outData="",teamPassive={},teamSkill={},weaponList={}}} require "Modules/Battle/Data/ConfigData" local BattleMain = require("BattleMain") -local seed = 1675210086548 +local seed = 1698029492 -- local config=ConfigManager.GetConfigData(ConfigName.PassiveSkillLogicConfig,12000004) -- print(config.Value) local resultList = BattleMain.Execute({seed = seed, type = BATTLE_SERVER_TYPE.MonterFight, maxRound = 20}, testFightData) From 34c562b72f105e47be239c38d696e4737bb915bd Mon Sep 17 00:00:00 2001 From: "PC-202302260912\\Administrator" <1769111741@qq.com> Date: Wed, 13 Dec 2023 16:28:39 +0800 Subject: [PATCH 03/32] =?UTF-8?q?=E6=B3=95=E5=AE=9D=E8=81=9A=E7=81=B5?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=B1=9E=E6=80=A7=E7=99=BE=E5=88=86=E6=AF=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index fb99ee001..81ed5a8f4 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -2138,6 +2138,9 @@ public class HeroLogic { if (trumpBook == null){ continue; } + if (entry.getValue() == 0){ + continue; + } int xiuxianSkillId = trumpBook.getSkillList()[entry.getValue() - 1][0]; SXiuXianSkill sXiuXianSkill = STableManager.getConfig(SXiuXianSkill.class).get(xiuxianSkillId); if (sXiuXianSkill == null){ @@ -2889,7 +2892,7 @@ public class HeroLogic { long value = Math.round(entry.getValue() * (1 + addition / 10000D)); trumpLvAttr.put(entry.getKey(), value); } - LOGGER.info("法宝聚灵属性加成======================={}=>{}",addition,trumpLvAttr); +// LOGGER.info("法宝聚灵属性加成======================={}=>{}",addition,trumpLvAttr); combinedAttribute(trumpLvAttr, heroAllAttribute); // 法宝聚灵总星级属性 From 6a2210eea3f77a23999852d65f55246f0fb85549 Mon Sep 17 00:00:00 2001 From: "PC-202302260912\\Administrator" <1769111741@qq.com> Date: Thu, 14 Dec 2023 10:38:46 +0800 Subject: [PATCH 04/32] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index 81ed5a8f4..4dd7bf8d2 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -3942,7 +3942,7 @@ public class HeroLogic { totalForce += playerSkill.getFight(); } } - LOGGER.info("calTeamTotalForce uid={} 总战力={} 耗时={}", targetUser.getId(), totalForce, TimeUtils.now() - now); + LOGGER.info("calTeamTotalForce uid={} teamId={} 总战力={} 耗时={}ms", targetUser.getId(), teamId, totalForce, TimeUtils.now() - now); return totalForce; } @@ -7010,7 +7010,7 @@ public class HeroLogic { int result = 0; for (Integer id : set) { SEquipConfig config = configMap.get(id); - if (config == null || config.getPotentialNew() == null) { + if (config == null || config.getPotentialNew() == null || config.getPotentialNew().length == 0) { continue; } result += config.getPotentialNew()[1]; From cc37af82c377e98797121e53a6c831ba589c8119 Mon Sep 17 00:00:00 2001 From: "PC-202302260912\\Administrator" <1769111741@qq.com> Date: Fri, 15 Dec 2023 13:47:02 +0800 Subject: [PATCH 05/32] =?UTF-8?q?=E7=BD=97=E6=B5=AE=E6=9C=AA=E5=BC=80?= =?UTF-8?q?=E5=90=AF=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gtw/GetWorldArenaInfoRequestHandler.java | 30 ++++++++++--------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java index 78f5e14b0..43589d0e4 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java @@ -44,24 +44,34 @@ public class GetWorldArenaInfoRequestHandler extends BaseHandler setting.getRestTime()[0] && diff < setting.getRestTime()[1]) { + //多加1分钟 周期间隔后 client再发起请求 + builder.setEndTime((int)(timeControllerOfFunction.getStartTime()/1000+setting.getRestTime()[1])+61); + } else if (diff > setting.getBattleTime()[0] && diff < setting.getBattleTime()[1]) { + builder.setEndTime((int)(timeControllerOfFunction.getStartTime()/1000+setting.getBattleTime()[1])+10); + } else { + MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.GetWorldArenaInfoResponse.getNumber(),builder.build(),true); + return; + } + long before = TimeUtils.stringToTimeLong2(GameApplication.serverConfig.getOpenTime()); long week = TimeUtils.AfterTimeByWeek(before, TimeUtils.now()); builder.setIsStart((int) week); + SGlobalSystemConfig sGlobalSystemConfig = STableManager.getConfig(SGlobalSystemConfig.class).get(FunctionIdEnum.World_Arena.getFunctionType()); if (!GlobleSystemLogic.checkOpen(UserManager.getUser(iSession.getUid()),sGlobalSystemConfig)) { MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.GetWorldArenaInfoResponse.getNumber(),builder.build(),true); return; } - TimeControllerOfFunction timeControllerOfFunction = GlobalDataManaager.getInstance().getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum.World_Arena); - long diff = (System.currentTimeMillis() - timeControllerOfFunction.getStartTime())/1000; if(diff>setting.getRestTime()[0]&&diff setting.getRestTime()[0] && diff < setting.getRestTime()[1]) { - //多加1分钟 周期间隔后 client再发起请求 - builder.setEndTime((int)(timeControllerOfFunction.getStartTime()/1000+setting.getRestTime()[1])+61); - } else if (diff > setting.getBattleTime()[0] && diff < setting.getBattleTime()[1]) { - builder.setEndTime((int)(timeControllerOfFunction.getStartTime()/1000+setting.getBattleTime()[1])+10); - } else { - throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN); - } if (!ArenaWorldLogic.checkJoin(String.valueOf(iSession.getUid()))) { builder.setEnterable(-1); } From bb0372370d5adfdb4a1d9d247efc7e8c126c8fed Mon Sep 17 00:00:00 2001 From: "PC-202302260912\\Administrator" <1769111741@qq.com> Date: Tue, 19 Dec 2023 14:12:18 +0800 Subject: [PATCH 06/32] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java index 43589d0e4..236b3bb05 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java @@ -98,7 +98,7 @@ public class GetWorldArenaInfoRequestHandler extends BaseHandler arenaEnemyList = ArenaLogic.randomRank(iSession.getUid(), score == -1 ? 9999 : (int) score,crossGroup); builder1.addAllArenaEnemys(arenaEnemyList); }else{ From c313d27871b18db4d736cb24c71c2acb0f899c98 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Sat, 23 Dec 2023 15:14:30 +0800 Subject: [PATCH 07/32] =?UTF-8?q?=E6=8C=91=E6=88=98=E5=89=AF=E6=9C=AC?= =?UTF-8?q?=E5=A5=96=E5=8A=B1=E7=AE=97=E6=B3=95=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ljsd/jieling/logic/arena/ChallengeLogic.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ChallengeLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ChallengeLogic.java index e418560da..249d83e6b 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ChallengeLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ChallengeLogic.java @@ -71,17 +71,17 @@ public class ChallengeLogic { int ratio = 0; int[][] value = stage.getReward1(); if (type == 1){ - ratio = Arrays.stream(value).filter(v -> bout > v[0]).mapToInt(v -> v[1]).max().orElse(0); + ratio = Arrays.stream(value).filter(v -> bout >= v[0]).mapToInt(v -> v[1]).max().orElse(0); } if (type == 2){ - ratio = Arrays.stream(value).filter(v -> bout < v[0]).mapToInt(v -> v[1]).min().orElse(0); + ratio = Arrays.stream(value).filter(v -> bout <= v[0]).mapToInt(v -> v[1]).max().orElse(0); } builder.setLossBloodOrTimes(bout); // 加成百分比 for (int[] fix : stage.getPassReward()) { Integer num = comDropMap.getOrDefault(fix[0], 0); - num = num + (int)(fix[1] * (ratio/10000d+1d)); + num = num + (int)(fix[1] * (ratio/10000d)); comDropMap.put(fix[0], num); } builder.setPercentReward(ratio); From 563d25312d2fcbb92b1016d0a0ca97f989d358ec Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Mon, 25 Dec 2023 15:41:58 +0800 Subject: [PATCH 08/32] =?UTF-8?q?=E7=89=B9=E8=AE=AD=E4=B8=AD=E7=9A=84?= =?UTF-8?q?=E8=8B=B1=E9=9B=84=E6=97=A0=E6=B3=95=E5=81=9A=E6=9D=90=E6=96=99?= =?UTF-8?q?=E6=B6=88=E8=80=97=E6=88=96=E5=88=86=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ljsd/jieling/logic/hero/HeroLogic.java | 4 +--- .../main/java/com/ljsd/jieling/logic/item/ItemLogic.java | 6 +++++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index 4dd7bf8d2..d7f85fa6a 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -1525,9 +1525,7 @@ public class HeroLogic { //判断编队 for (HeroInfoProto.ConsumeMaterial consumeMaterial1 : consumeMaterialsList) { List heroIdsList = new ArrayList<>(); - consumeMaterial1.getHeroIdsList().stream() - .filter(v -> v.getType() == 1) - .forEach(v -> heroIdsList.add(v.getItemId())); + consumeMaterial1.getHeroIdsList().stream().filter(v -> v.getType() == 1).forEach(v -> heroIdsList.add(v.getItemId())); ErrorCode err = null; if (!heroIdsList.isEmpty()) { err = ItemLogic.getInstance().checkHeroResolve(heroIdsList, user); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java index 31ef62225..23dbb730c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java @@ -484,8 +484,9 @@ public class ItemLogic { for (String id : heroIdsList) { Hero hero = user.getHeroManager().getHero(id); + Training training = hero.getTraining(); int maxLv = STrain.getMaxLv(hero.getTemplateId()); - if (hero.getTraining().getLv() == maxLv){ + if (training.getLv() == maxLv){ throw new ErrorCodeException(ErrorCode.SERVER_DEFINE, "特训满级英雄无法分解"); } } @@ -533,6 +534,9 @@ public class ItemLogic { if (hero.getIsLock() == 1) { return ErrorCode.ITEM_DECOMPOSE_HERO_LOCK; } + if (hero.getTraining().getIsTraining() == 1){ + return ErrorCode.HERO_UN_MATCH; + } if(teamCheck){ int[] teamId = SSpecialConfig.getOnceArrayValue(SSpecialConfig.HERO_RESOLVE_LICENCE); boolean battleArray = HeroLogic.getInstance().isBattleArray(user, heroId, teamId); From 86ae37c1264c3db49f631d5720743ab3994f5e06 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Mon, 25 Dec 2023 15:44:21 +0800 Subject: [PATCH 09/32] =?UTF-8?q?=E7=89=B9=E8=AE=AD=E4=B8=AD=E7=9A=84?= =?UTF-8?q?=E8=8B=B1=E9=9B=84=E6=97=A0=E6=B3=95=E5=81=9A=E6=9D=90=E6=96=99?= =?UTF-8?q?=E6=B6=88=E8=80=97=E6=88=96=E5=88=86=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ljsd/jieling/logic/hero/HeroLogic.java | 3 +-- .../main/java/com/ljsd/jieling/logic/item/ItemLogic.java | 6 +++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index d7f85fa6a..4b6261d74 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -4544,8 +4544,7 @@ public class HeroLogic { User user = UserManager.getUser(uid); List heroList = new ArrayList<>(1); heroList.add(heroId); - boolean teamCheck = false; - ErrorCode err = ItemLogic.getInstance().checkHeroResolve(heroList, user, teamCheck); + ErrorCode err = ItemLogic.getInstance().checkHeroResolve(heroList, user, false); if (null != err) { throw new ErrorCodeException(err); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java index 23dbb730c..d2a57effe 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java @@ -534,10 +534,10 @@ public class ItemLogic { if (hero.getIsLock() == 1) { return ErrorCode.ITEM_DECOMPOSE_HERO_LOCK; } - if (hero.getTraining().getIsTraining() == 1){ - return ErrorCode.HERO_UN_MATCH; - } if(teamCheck){ + if (hero.getTraining().getIsTraining() == 1){ + return ErrorCode.HERO_UN_MATCH; + } int[] teamId = SSpecialConfig.getOnceArrayValue(SSpecialConfig.HERO_RESOLVE_LICENCE); boolean battleArray = HeroLogic.getInstance().isBattleArray(user, heroId, teamId); if (!battleArray) { From 32ce67a2b34ced28ec82181c94831a29a48cee40 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Mon, 25 Dec 2023 15:45:44 +0800 Subject: [PATCH 10/32] =?UTF-8?q?=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ljsd/jieling/logic/item/ItemLogic.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java index d2a57effe..3e3ae12f7 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/ItemLogic.java @@ -521,7 +521,16 @@ public class ItemLogic { // return tempReturn; // } - public ErrorCode checkHeroResolve(List heroIdsList, User user,boolean teamCheck) { + /** + * 检查英雄是否符合要求 + * @param heroIdsList + * @param user + * @param teamCheck + * true: 分解 + * false:归元 + * @return + */ + public ErrorCode checkHeroResolve(List heroIdsList, User user, boolean teamCheck) { HeroManager heroManager = user.getHeroManager(); if (heroIdsList.isEmpty()) { return ErrorCode.ITEM_DECOMPOSE_HERO_NO; From 1dce1ea9643d7ebff81efe1f5235c0ecdd501879 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Thu, 21 Dec 2023 18:32:18 +0800 Subject: [PATCH 11/32] =?UTF-8?q?=E5=BF=83=E9=AD=94=E5=BF=AB=E9=80=9F?= =?UTF-8?q?=E6=88=98=E6=96=97=E9=80=82=E7=94=A8=E6=88=98=E5=8A=9B=E5=89=8A?= =?UTF-8?q?=E5=BC=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ljsd/fight/FightType.java | 3 - .../ljsd/jieling/handler/map/MapLogic.java | 97 +++---------------- .../QuickStartMonsterFighter.java | 2 +- .../jieling/logic/fight/GameFightType.java | 11 +-- 4 files changed, 14 insertions(+), 99 deletions(-) diff --git a/fightmanager/src/main/java/com/ljsd/fight/FightType.java b/fightmanager/src/main/java/com/ljsd/fight/FightType.java index 70abc5916..a2292d28f 100644 --- a/fightmanager/src/main/java/com/ljsd/fight/FightType.java +++ b/fightmanager/src/main/java/com/ljsd/fight/FightType.java @@ -12,11 +12,8 @@ public enum FightType { MonterFight(8), // 兽潮 TOPFight(9), // 巅峰赛 GuildBossFight(10), // 工会boss - - CarBossFight(11), // 车迟斗法挑战boss CarPersonFight(12), // 车迟斗法抢夺 - EXPEDITION(13), // 远征 GuildChallenge(14), //公会副本 NewGeneral(15),//新将 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java index 0f40dec4e..34afe5d4e 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapLogic.java @@ -1604,11 +1604,6 @@ public class MapLogic { /** * 校验主线战斗 - * @param user - * @param fightId - * @param teamId - * @return - * @throws Exception */ public boolean checkMainFight(User user, int fightId, int teamId) throws Exception { MainLevelManager mainLevelManager = user.getMainLevelManager(); @@ -1810,7 +1805,7 @@ public class MapLogic { for (Map.Entry equipEntry : user.getItemManager().getItemMap().entrySet()) { if (SItem.getsItemMap().get(equipEntry.getKey()).getItemType() == 3) { if (equipConfig.get(equipEntry.getKey()).getStar() >= ints[1]) { - num+=equipEntry.getValue().getItemNum(); + num+= (int) equipEntry.getValue().getItemNum(); } } } @@ -2272,7 +2267,7 @@ public class MapLogic { if (mapManager.getCurMapId() == 0) { throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE); } - if (heroInfo.size() < 1 || !heroInfo.containsKey(heroId)) { + if (heroInfo.isEmpty() || !heroInfo.containsKey(heroId)) { throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE); } int[] healing = STrialSetting.sTrialSetting.getHealingId(); @@ -2311,9 +2306,6 @@ public class MapLogic { /** * 获取无尽副本英雄信息 - * - * @param session - * @param messageType */ public void getEndlessHero(ISession session, MessageTypeProto.MessageType messageType) throws Exception { User user = UserManager.getUser(session.getUid()); @@ -2328,7 +2320,7 @@ public class MapLogic { MapInfoProto.GetEndlessHeroResponse.Builder response = MapInfoProto.GetEndlessHeroResponse.newBuilder(); //已开启地图处理 Map sEndlessMapConfigMap = SEndlessMapConfig.sEndlessMapConfigMap; - if (endlessMapInfo.getOpenMap() == null || endlessMapInfo.getOpenMap().size() < 1) { + if (endlessMapInfo.getOpenMap() == null || endlessMapInfo.getOpenMap().isEmpty()) { Set openMap = new HashSet<>(); for (Map.Entry entry : sEndlessMapConfigMap.entrySet()) { openMap.add(entry.getKey()); @@ -2383,9 +2375,6 @@ public class MapLogic { /** * 无尽副本复位 - * - * @param session - * @param messageType */ public void resetEndlessHero(ISession session, MessageTypeProto.MessageType messageType) throws Exception { User user = UserManager.getUser(session.getUid()); @@ -2411,11 +2400,6 @@ public class MapLogic { /** * 无尽副本设置标记 - * - * @param session - * @param cellId - * @param content - * @param messageType */ public void setEndlessSign(ISession session, int type, int mapId, int cellId, String content, MessageTypeProto.MessageType messageType) throws Exception { User user = UserManager.getUser(session.getUid()); @@ -2449,10 +2433,6 @@ public class MapLogic { /** * 刷新获取行动力 - * - * @param session - * @param messageType - * @throws Exception */ public void refreshEndlessExecution(ISession session, MessageTypeProto.MessageType messageType) throws Exception { User user = UserManager.getUser(session.getUid()); @@ -2462,9 +2442,6 @@ public class MapLogic { /** * 获取出图统计数据 - * - * @param session - * @param messageType */ public void endlessOutMapConsume(ISession session, MessageTypeProto.MessageType messageType) throws Exception { User user = UserManager.getUser(session.getUid()); @@ -2479,9 +2456,6 @@ public class MapLogic { /** * 无尽副本复活消耗行动力 - * - * @param user - * @throws Exception */ public void reviveConsumeExecution(User user) throws Exception { MapManager mapManager = user.getMapManager(); @@ -2507,19 +2481,13 @@ public class MapLogic { /** * 清理无尽副本道具 - * - * @param uid - * @throws Exception */ - public void clearEndLessDrop(int uid) throws Exception { + public void clearEndLessDrop(int uid) { ItemLogic.getInstance().functionEndClearItem(uid, FunctionIdEnum.Endless.getFunctionType(), BIReason.ENDLESS_REASON_CHANGE); } /** * 无尽副本小地图信息 - * - * @param session - * @param messageType */ public void endlessMinMapInfo(ISession session, MessageTypeProto.MessageType messageType) throws Exception { MapManager mapManager = UserManager.getUser(session.getUid()).getMapManager(); @@ -2527,15 +2495,15 @@ public class MapLogic { MapInfoProto.EndlessMinMapResponse.Builder response = MapInfoProto.EndlessMinMapResponse.newBuilder(); Map scMap = SCMap.sCMap.get(mapManager.getEndlessMapInfo().getCurMapId()); for (Map.Entry entry : scMap.entrySet()) { - for (int i = 0; i < endlessMinMapPoint.length; i++) { - if (entry.getValue().getEvent() == endlessMinMapPoint[i][0]) { + for (int[] ints : endlessMinMapPoint) { + if (entry.getValue().getEvent() == ints[0]) { int[][] groups = entry.getValue().getGroups(); - for (int j = 0; j < groups.length; j++) { + for (int[] group : groups) { CommonProto.EndlessPoint.Builder point = CommonProto.EndlessPoint.newBuilder(); - int x = groups[j][0]; - int y = groups[j][1]; + int x = group[0]; + int y = group[1]; int xy = CellUtil.xy2Pos(x, y); - point.setLocation(xy).setMonsterId(endlessMinMapPoint[i][1]); + point.setLocation(xy).setMonsterId(ints[1]); response.addPoints(point); LOGGER.info("小地图怪物坐标点{}", xy); } @@ -2596,8 +2564,6 @@ public class MapLogic { /** * 无尽副本赛季更换,用户信息清除 - * - * @throws Exception */ public void resetEndlessInfo() throws Exception { Map onlineUserMap = OnlineUserManager.sessionMap; @@ -2640,44 +2606,12 @@ public class MapLogic { /** * 设置无尽副本是否跳过战斗 - * - * @param session - * @param type - * @param messageType */ public void setEndlessSkipType(ISession session, int type, MessageTypeProto.MessageType messageType) throws Exception { UserManager.getUser(session.getUid()).getMapManager().updateEndlessSkipFight(type); MessageUtil.sendMessage(session, 1, messageType.getNumber(), null, true); } - public void getDifficult() throws Exception { - SEndlessDifficulty baseDiff = STableManager.getConfig(SEndlessDifficulty.class).get(1); - -// if (serverConfigTmp.getWorldLevel() == 0) { -// for (int i = 0; i < baseDiff.getMonsterId().length; i++) { -// difficultyMonster.put(baseDiff.getMonsterId()[i], baseDiff.getMonsterId()[i]); -// } -// for (int i = 0; i < baseDiff.getRewardId().length; i++) { -// difficultyReward.put(baseDiff.getRewardId()[i], baseDiff.getRewardId()[i]); -// } -// } else { -// for (Map.Entry entry : STableManager.getConfig(SEndlessDifficulty.class).entrySet()) { -// if (serverConfigTmp.getWorldLevel() <= entry.getValue().getWorldLevel()[0] || serverConfigTmp.getWorldLevel() > entry.getValue().getWorldLevel()[1]) { -// continue; -// } -// for (int i = 0; i < baseDiff.getMonsterId().length; i++) { -// difficultyMonster.put(baseDiff.getMonsterId()[i], entry.getValue().getMonsterId()[i]); -// } -// for (int i = 0; i < baseDiff.getRewardId().length; i++) { -// difficultyReward.put(baseDiff.getRewardId()[i], entry.getValue().getRewardId()[i]); -// } -// -// break; -// } -// } - } - - public void dailyChallenge(ISession session, int type, int id, MessageTypeProto.MessageType messageType) throws Exception { User user = UserManager.getUser(session.getUid()); PlayerInfoProto.DailyChallengeResponse.Builder builder = PlayerInfoProto.DailyChallengeResponse.newBuilder(); @@ -2783,11 +2717,6 @@ public class MapLogic { /** * 试炼副本保存阵容 - * - * @param session - * @param heroes - * @param messageType - * @throws Exception */ public void saveTrailTeam(ISession session, List heroes, MessageTypeProto.MessageType messageType) throws Exception { User user = UserManager.getUser(session.getUid()); @@ -2848,10 +2777,6 @@ public class MapLogic { /** * 获取宝箱 - * - * @param session - * @param messageType - * @throws Exception */ public void trialGetBox(ISession session, int type, MessageTypeProto.MessageType messageType) throws Exception { User user = UserManager.getUser(session.getUid()); @@ -3111,7 +3036,7 @@ public class MapLogic { } - public void flushEndlessTreasure(User user) throws Exception { + public void flushEndlessTreasure(User user) { if (user.getMapManager().getEndlessTreasureReward().getCreateTime() < TimeUtils.nowInt()) { user.getMapManager().resetEndlessTreasure(); Item item = user.getItemManager().getItem(102);//升级积分清除 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/monsterAttack/QuickStartMonsterFighter.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/monsterAttack/QuickStartMonsterFighter.java index a38cda73b..4f46d55cd 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/monsterAttack/QuickStartMonsterFighter.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/monsterAttack/QuickStartMonsterFighter.java @@ -66,7 +66,7 @@ public class QuickStartMonsterFighter extends BaseHandler teamPosHeroInfos = user.getTeamPosManager().getTeamPosForHero().get(teamId); - if (teamPosHeroInfos == null || teamPosHeroInfos.size() == 0) { + if (teamPosHeroInfos == null || teamPosHeroInfos.isEmpty()) { LOGGER.info("startLevelDifficultyFight==> uid={},fightId={},teamId={}", uid, fightId, teamId); throw new ErrorCodeException(ErrorCode.newDefineCode("阵容有误")); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/GameFightType.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/GameFightType.java index 57439b483..592ba1b6d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/GameFightType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/GameFightType.java @@ -19,25 +19,18 @@ import com.ljsd.jieling.logic.fight.eventhandler.*; */ public enum GameFightType { StoryFight(FightType.StoryFight,new MainLineOrInnerDemonFightHandler(), RedisKey.LEVE_DIFFICULTY_FIGHT), - MapFastFight(FightType.MapExploreFight,new DefaultWithoutHandFightHandler(),null), - MapEndFight(FightType.MapExploreFight,new DefaultOfRedisCacheFightHandler(),RedisKey.FIGHT), EndSuddlenlyFight(FightType.MapExploreFight,new DefaultOfRedisCacheFightHandler(),RedisKey.SUDDLENLY_FIGHT), - EndMonsterAttackFight(FightType.MapExploreFight,new MainLineOrInnerDemonFightHandler(),RedisKey.CHALLENGE_MONSTER_ATTACK), - + EndMonsterAttackFight(FightType.MonterFight,new MainLineOrInnerDemonFightHandler(),RedisKey.CHALLENGE_MONSTER_ATTACK), + MonterFight(FightType.MonterFight,new MainLineOrInnerDemonFightHandler(),null), ArenaPersonFight(FightType.ArenaFight,new PVPFightHandler(),null), ArenaRobotFight(FightType.ArenaFight,new PVPFightHandler(),null), Expediton(FightType.EXPEDITION,new PVPFightHandler(),null), - TOPArenaPersonFight(FightType.TOPFight,new PVPFightHandler(),null), TOPArenaRobotFight(FightType.TOPFight,new PVPFightHandler(),null), TOPArena2RobotFight(FightType.TOPFight,new PVPFightHandler(),null), - - MonterFight(FightType.MonterFight,new DefaultWithoutHandFightHandler(),null), - GuildFight(FightType.GuildFight,new PVPFightHandler(),null), - GuildBossFight(FightType.GuildBossFight,new DefaultOfRedisCacheFightHandler(),RedisKey.GUILD_MONSTER_FIGHT), DailyChallenge(FightType.StoryFight,new DefaultWithoutHandFightHandler(),null), DeathPathChallenge(FightType.CarBossFight,new DefaultWithoutHandFightHandler(),null), From c1e1eecb538d996340b64f0c09c04499053c27a3 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Thu, 21 Dec 2023 18:40:10 +0800 Subject: [PATCH 12/32] =?UTF-8?q?=E5=B0=8F=E8=B0=83=E6=95=B4=EF=BC=8C?= =?UTF-8?q?=E4=B8=8D=E5=BD=B1=E5=93=8D=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- fightmanager/src/main/java/com/ljsd/fight/FightType.java | 6 +++--- .../handler/Expedition/StartExpeditionBattleRequest.java | 7 ++++--- .../situationHandler/SituationChallengeHandler.java | 1 + .../eventhandler/MainLineOrInnerDemonFightHandler.java | 2 +- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/fightmanager/src/main/java/com/ljsd/fight/FightType.java b/fightmanager/src/main/java/com/ljsd/fight/FightType.java index a2292d28f..d60e0b8e4 100644 --- a/fightmanager/src/main/java/com/ljsd/fight/FightType.java +++ b/fightmanager/src/main/java/com/ljsd/fight/FightType.java @@ -2,19 +2,19 @@ package com.ljsd.fight; public enum FightType { CrossLuofuFight(0),//跨服罗浮争锋 - StoryFight(1), //故事副本 + StoryFight(1), //故事副本(主线) MapExploreFight(2), // 地图探索 ArenaFight(3), //竞技场 InvasionBossFight(4),//秘境boss AdventureLock(5), // 解锁秘境 GuildFight(6), // 公会站 BloodyFight(7), // 血战 - MonterFight(8), // 兽潮 + MonterFight(8), // 兽潮(心魔试炼) TOPFight(9), // 巅峰赛 GuildBossFight(10), // 工会boss CarBossFight(11), // 车迟斗法挑战boss CarPersonFight(12), // 车迟斗法抢夺 - EXPEDITION(13), // 远征 + EXPEDITION(13), // 远征(大闹天宫) GuildChallenge(14), //公会副本 NewGeneral(15),//新将 TenDespairArray(16),//十绝阵 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/Expedition/StartExpeditionBattleRequest.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/Expedition/StartExpeditionBattleRequest.java index eee172fbd..d6712c94a 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/Expedition/StartExpeditionBattleRequest.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/Expedition/StartExpeditionBattleRequest.java @@ -62,7 +62,7 @@ public class StartExpeditionBattleRequest extends BaseHandler teamPosHeroInfos = user.getTeamPosManager().getTeamPosForHero().get(teamId); - if (teamPosHeroInfos == null || teamPosHeroInfos.size() == 0) { + if (teamPosHeroInfos == null || teamPosHeroInfos.isEmpty()) { throw new ErrorCodeException(ErrorCode.newDefineCode("阵容有误!!")); } @@ -108,13 +108,14 @@ public class StartExpeditionBattleRequest extends BaseHandler Date: Fri, 22 Dec 2023 14:46:40 +0800 Subject: [PATCH 13/32] =?UTF-8?q?=E5=BF=83=E9=AD=94=E5=BF=AB=E9=80=9F?= =?UTF-8?q?=E6=88=98=E6=96=97=E9=80=82=E9=85=8D=E6=88=98=E5=8A=9B=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=9C=BA=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/logic/fight/GameFightType.java | 3 +- .../MainLineOrInnerDemonFightHandler.java | 18 ++++++++- .../MainLineOrInnerQuickFightHandler.java | 37 +++++++++++++++++++ 3 files changed, 55 insertions(+), 3 deletions(-) create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerQuickFightHandler.java diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/GameFightType.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/GameFightType.java index 592ba1b6d..327b5c30d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/GameFightType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/GameFightType.java @@ -23,7 +23,7 @@ public enum GameFightType { MapEndFight(FightType.MapExploreFight,new DefaultOfRedisCacheFightHandler(),RedisKey.FIGHT), EndSuddlenlyFight(FightType.MapExploreFight,new DefaultOfRedisCacheFightHandler(),RedisKey.SUDDLENLY_FIGHT), EndMonsterAttackFight(FightType.MonterFight,new MainLineOrInnerDemonFightHandler(),RedisKey.CHALLENGE_MONSTER_ATTACK), - MonterFight(FightType.MonterFight,new MainLineOrInnerDemonFightHandler(),null), + MonterFight(FightType.MonterFight,new MainLineOrInnerQuickFightHandler(),null),//心魔快速战斗 ArenaPersonFight(FightType.ArenaFight,new PVPFightHandler(),null), ArenaRobotFight(FightType.ArenaFight,new PVPFightHandler(),null), Expediton(FightType.EXPEDITION,new PVPFightHandler(),null), @@ -34,7 +34,6 @@ public enum GameFightType { GuildBossFight(FightType.GuildBossFight,new DefaultOfRedisCacheFightHandler(),RedisKey.GUILD_MONSTER_FIGHT), DailyChallenge(FightType.StoryFight,new DefaultWithoutHandFightHandler(),null), DeathPathChallenge(FightType.CarBossFight,new DefaultWithoutHandFightHandler(),null), - CarBossChallenge(FightType.CarBossFight,new DefaultWithoutHandFightHandler(),null), CarPersonChallenge(FightType.CarPersonFight,new PVPFightHandler(),null), GuildChallenge(FightType.GuildChallenge,new DefaultWithoutHandFightHandler(),null), diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java index c2c587519..14c3a205d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java @@ -40,7 +40,6 @@ public class MainLineOrInnerDemonFightHandler implements IFightEventProcesor { public FightResult process(FightEvent fightEvent) throws Exception { GameFightType fightType = fightEvent.getFightType(); int playerId = fightEvent.getAttackUid(); - int fightTime = fightEvent.getMostTime(); String key = RedisKey.getKey(fightType.getFightTypeOfRedis(), Integer.toString(playerId)); Map valueMap = RedisUtil.getInstence().hmget(key); if (valueMap == null || valueMap.isEmpty()) { @@ -52,6 +51,23 @@ public class MainLineOrInnerDemonFightHandler implements IFightEventProcesor { JsonFormat.merge((String) valueMap.get(RedisKey.FIGHT_HEROES), builder); CommonProto.FightTeamInfo fightTeamInfo = builder.build(); List monsterTeamList = BehaviorUtil.getFightTeamInfos(valueMap); + + return returnFightResult(fightEvent, seed, fightTeamInfo, monsterTeamList); + } + + /** + * 返回挑战结果 + * @param fightEvent 战斗类型 + * @param seed 速度 + * @param fightTeamInfo 我方队伍 + * @param monsterTeamList 地方队伍 + * @return FightResult + */ + public FightResult returnFightResult(FightEvent fightEvent, int seed, CommonProto.FightTeamInfo fightTeamInfo, List monsterTeamList){ + int playerId = fightEvent.getAttackUid(); + int fightTime = fightEvent.getMostTime(); + GameFightType fightType = fightEvent.getFightType(); + LuaValue getFightData = FightDataUtil.getFinalFightData(fightTeamInfo, monsterTeamList); LuaValue getOptionData = FightDataUtil.getOptionData(String.valueOf(playerId)); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerQuickFightHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerQuickFightHandler.java new file mode 100644 index 000000000..294606c24 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerQuickFightHandler.java @@ -0,0 +1,37 @@ +package com.ljsd.jieling.logic.fight.eventhandler; + +import com.ljsd.jieling.logic.dao.UserManager; +import com.ljsd.jieling.logic.dao.root.User; +import com.ljsd.jieling.logic.fight.FightEvent; +import com.ljsd.jieling.logic.fight.FightUtil; +import com.ljsd.jieling.logic.fight.GameFightType; +import com.ljsd.jieling.logic.fight.PVEFightEvent; +import com.ljsd.jieling.logic.fight.result.FightResult; +import rpc.protocols.CommonProto; +import util.TimeUtils; + +import java.util.List; +import java.util.Map; + +/** + * 主线编队和心魔战斗快速处理方法 + */ +public class MainLineOrInnerQuickFightHandler extends MainLineOrInnerDemonFightHandler { + @Override + public FightResult process(FightEvent fightEvent) throws Exception { + GameFightType fightType = fightEvent.getFightType(); + int playerId = fightEvent.getAttackUid(); + int fightSeed = TimeUtils.nowInt(); + + PVEFightEvent pveFightEvent = (PVEFightEvent) fightEvent; + int groupId = pveFightEvent.getMonsterGroupId(); + // 玩家队伍信息 + User user = UserManager.getUserNotCache(playerId); + CommonProto.FightTeamInfo fightTeamInfo = FightUtil.makePersonFightData(user, pveFightEvent.getTeamId(), pveFightEvent.getAttackBloodMap(), pveFightEvent.getBuffIds()); + //怪物队伍信息 + Map> monsterByGroup = getMonsterByGroup(playerId, groupId, fightType.getFightType().getType()); + List monsterfightTeamInfos = FightUtil.getFightTeamInfos(groupId, pveFightEvent.getNums(), monsterByGroup); + + return returnFightResult(fightEvent, fightSeed, fightTeamInfo, monsterfightTeamInfos); + } +} From 3f56e5edd8230cd9f1cd82062a1b8f20b9bebfeb Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Fri, 22 Dec 2023 14:56:24 +0800 Subject: [PATCH 14/32] =?UTF-8?q?=E5=BF=83=E9=AD=94=E5=BF=AB=E9=80=9F?= =?UTF-8?q?=E6=88=98=E6=96=97=E9=80=82=E9=85=8D=E6=88=98=E5=8A=9B=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=9C=BA=E5=88=B6=E8=A1=A5=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MainLineOrInnerDemonFightHandler.java | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java index 14c3a205d..f27e54331 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java @@ -70,10 +70,13 @@ public class MainLineOrInnerDemonFightHandler implements IFightEventProcesor { LuaValue getFightData = FightDataUtil.getFinalFightData(fightTeamInfo, monsterTeamList); LuaValue getOptionData = FightDataUtil.getOptionData(String.valueOf(playerId)); - - FightResult.Builder fightResult = FightResult.newBuilder(); long[] fightResultInfo = CheckFight.getInstance().checkFight(seed, fightTime, getFightData, getOptionData, fightType.getFightType()); - fightResult.setCheckResult(fightResultInfo); + + FightResult.Builder builder = FightResult.newBuilder(); + builder.setCheckResult(fightResultInfo); + builder.setSeed(seed); + builder.setFightTeamInfo(fightTeamInfo); + builder.setMonsterTeamList(monsterTeamList); String fightId = FightUtil.getFightId(playerId, fightType); CommonProto.FightData fightData = CommonProto.FightData.newBuilder() .setFightType(fightType.getFightType().getType()) @@ -83,8 +86,8 @@ public class MainLineOrInnerDemonFightHandler implements IFightEventProcesor { .setFightMaxTime(fightTime) .setFightId(fightId) .build(); - fightResult.setFightData(fightData); - FightResult result = fightResult.build(); + builder.setFightData(fightData); + FightResult result = builder.build(); if (result.getResult() == 1){ // 成功清除时间 From a6cdc946e7a1ee85c44f6eed5d2c4aea81eb3f4f Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Fri, 22 Dec 2023 14:59:21 +0800 Subject: [PATCH 15/32] =?UTF-8?q?=E5=BF=83=E9=AD=94=E5=BF=AB=E9=80=9F?= =?UTF-8?q?=E6=88=98=E6=96=97=E9=80=82=E9=85=8D=E6=88=98=E5=8A=9B=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E6=9C=BA=E5=88=B6=E8=A1=A5=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../QuickStartMonsterFighter.java | 24 +++++++------------ .../jieling/logic/fight/GameFightType.java | 4 ++-- .../MainLineOrInnerDemonFightHandler.java | 3 --- 3 files changed, 11 insertions(+), 20 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/monsterAttack/QuickStartMonsterFighter.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/monsterAttack/QuickStartMonsterFighter.java index 4f46d55cd..1928a92da 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/monsterAttack/QuickStartMonsterFighter.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/monsterAttack/QuickStartMonsterFighter.java @@ -1,6 +1,5 @@ package com.ljsd.jieling.handler.monsterAttack; -import com.ljsd.fight.FightType; import com.ljsd.jieling.exception.ErrorCode; import com.ljsd.jieling.exception.ErrorCodeException; import com.ljsd.jieling.globals.BIReason; @@ -13,7 +12,10 @@ import com.ljsd.jieling.logic.activity.ActivityType; import com.ljsd.jieling.logic.dao.TeamPosHeroInfo; import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.root.User; -import com.ljsd.jieling.logic.fight.*; +import com.ljsd.jieling.logic.fight.FightDispatcher; +import com.ljsd.jieling.logic.fight.FightRecordLogic; +import com.ljsd.jieling.logic.fight.GameFightType; +import com.ljsd.jieling.logic.fight.PVEFightEvent; import com.ljsd.jieling.logic.fight.result.FightResult; import com.ljsd.jieling.logic.mission.GameEvent; import com.ljsd.jieling.logic.mission.MissionType; @@ -22,9 +24,6 @@ import com.ljsd.jieling.logic.rank.RankEnum; import com.ljsd.jieling.logic.store.BuyGoodsNewLogic; import com.ljsd.jieling.logic.store.newRechargeInfo.PushRechargeType; import com.ljsd.jieling.network.session.ISession; -import rpc.protocols.CommonProto; -import rpc.protocols.FightInfoProto; -import rpc.protocols.MessageTypeProto; import com.ljsd.jieling.util.ItemUtil; import com.ljsd.jieling.util.MessageUtil; import config.SFloodConfig; @@ -32,6 +31,9 @@ import manager.STableManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; +import rpc.protocols.CommonProto; +import rpc.protocols.FightInfoProto; +import rpc.protocols.MessageTypeProto; import java.util.List; @@ -74,7 +76,7 @@ public class QuickStartMonsterFighter extends BaseHandler Date: Fri, 22 Dec 2023 17:47:49 +0800 Subject: [PATCH 16/32] =?UTF-8?q?=E7=99=BB=E9=99=86=E7=8E=A9=E5=AE=B6?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E5=A2=9E=E5=8A=A0=E8=B7=9D=E7=A6=BB=E5=BC=80?= =?UTF-8?q?=E6=9C=8D=E5=91=A8=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/handler/GetPlayerInfoHandler.java | 2 +- .../gtw/GetWorldArenaInfoRequestHandler.java | 22 +++++++++---------- .../jieling/logic/player/PlayerLogic.java | 5 +++++ 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java index 2ac667995..dee57cc97 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java @@ -4,7 +4,6 @@ import com.ljsd.GameApplication; import com.ljsd.jieling.db.mongo.AreaManager; import com.ljsd.jieling.db.redis.RedisKey; import com.ljsd.jieling.db.redis.RedisUtil; -import com.ljsd.jieling.handler.hero.FaBaoSoulUpLvRequestHandler; import com.ljsd.jieling.handler.map.MapManager; import com.ljsd.jieling.jbean.ActivityMission; import com.ljsd.jieling.ktbeans.ReportEventEnum; @@ -230,6 +229,7 @@ public class GetPlayerInfoHandler extends BaseHandler{ .addAllLifeGridInfos(getLifeGridInfos(heroManager)) .addAllGiftIds(user.getPlayerInfoManager().getPlayerGiftEquipList()) .addAllGemLotteryCountByDay(EquipLogic.getInstance().getGemLotteryCountByDay(userId)) + .setIsStart(PlayerLogic.getCrossStartWeek()) .build(); try { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java index 236b3bb05..0a1094d28 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java @@ -1,6 +1,5 @@ package com.ljsd.jieling.handler.gtw; -import com.ljsd.GameApplication; import com.ljsd.jieling.core.FunctionIdEnum; import com.ljsd.jieling.exception.ErrorCode; import com.ljsd.jieling.exception.ErrorCodeException; @@ -11,6 +10,7 @@ import com.ljsd.jieling.logic.arena.ArenaLogic; import com.ljsd.jieling.logic.arenaworld.ArenaWorldLogic; import com.ljsd.jieling.logic.dao.TimeControllerOfFunction; import com.ljsd.jieling.logic.dao.UserManager; +import com.ljsd.jieling.logic.player.PlayerLogic; import com.ljsd.jieling.logic.rank.RankContext; import com.ljsd.jieling.logic.rank.RankEnum; import com.ljsd.jieling.logic.rank.rankImpl.AbstractRank; @@ -52,20 +52,20 @@ public class GetWorldArenaInfoRequestHandler extends BaseHandler setting.getRestTime()[0] && diff < setting.getRestTime()[1]) { //多加1分钟 周期间隔后 client再发起请求 - builder.setEndTime((int)(timeControllerOfFunction.getStartTime()/1000+setting.getRestTime()[1])+61); - } else if (diff > setting.getBattleTime()[0] && diff < setting.getBattleTime()[1]) { - builder.setEndTime((int)(timeControllerOfFunction.getStartTime()/1000+setting.getBattleTime()[1])+10); - } else { - MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.GetWorldArenaInfoResponse.getNumber(),builder.build(),true); - return; + builder.setEndTime(functionStartTime + setting.getRestTime()[1]+61); + } + else if (diff > setting.getBattleTime()[0] && diff < setting.getBattleTime()[1]) { + builder.setEndTime(functionStartTime + setting.getBattleTime()[1]+10); + } + else { + throw new ErrorCodeException(ErrorCode.SYS_ERROR_CODE); } - long before = TimeUtils.stringToTimeLong2(GameApplication.serverConfig.getOpenTime()); - long week = TimeUtils.AfterTimeByWeek(before, TimeUtils.now()); - builder.setIsStart((int) week); + builder.setIsStart(PlayerLogic.getCrossStartWeek()); SGlobalSystemConfig sGlobalSystemConfig = STableManager.getConfig(SGlobalSystemConfig.class).get(FunctionIdEnum.World_Arena.getFunctionType()); if (!GlobleSystemLogic.checkOpen(UserManager.getUser(iSession.getUid()),sGlobalSystemConfig)) { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java index 576d8c830..1d509b3cc 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java @@ -1462,4 +1462,9 @@ public class PlayerLogic { LOGGER.info("封禁列表已迁移"); } + public static int getCrossStartWeek(){ + long before = TimeUtils.stringToTimeLong2(GameApplication.serverConfig.getOpenTime()); + return (int) TimeUtils.AfterTimeByWeek(before, TimeUtils.now()); + } + } From 4b606d9af985e4d3c5cac56773d16a4677aec06a Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Sun, 24 Dec 2023 09:41:00 +0800 Subject: [PATCH 17/32] =?UTF-8?q?=E6=96=B0=E6=B4=BB=E5=8A=A8=EF=BC=8C?= =?UTF-8?q?=E6=B3=95=E5=AE=9D=E5=8F=AC=E5=94=A4=E7=A4=BC=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ljsd/jieling/logic/activity/ActivityType.java | 2 ++ .../java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java | 1 + 2 files changed, 3 insertions(+) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java index 41d0e7d2d..24de8022d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityType.java @@ -141,6 +141,8 @@ public interface ActivityType { int LINGLONG_BAOJING_TASK = 20014;//玲珑宝镜任务 + int BAUBLES_SUMMON_GIFT = 20015;//法宝召唤礼包 + //***************************************bt活动=====================================// int BRUSH_PRIVILEGE = 103;//刷充特权 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java index e6844b0a8..58fe99a5e 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityTypeEnum.java @@ -122,6 +122,7 @@ public enum ActivityTypeEnum { LINGLONG_BAOJING_TASK(ActivityType.LINGLONG_BAOJING_TASK, DefaultEmptyActivity::new),//玲珑宝镜任务 NOVICE_GEM_CHEST(ActivityType.NOVICE_GEM_CHEST, GemChestActivity::new),//初级命石宝箱 ADVANCED_GEM_CHEST(ActivityType.ADVANCED_GEM_CHEST, GemChestActivity::new),//高级命石宝箱 + BAUBLES_SUMMON_GIFT(ActivityType.BAUBLES_SUMMON_GIFT, DefaultEmptyActivity::new),//法宝召唤礼包 /****************************************************** bt **********************************************************/ BRUSH_PRIVILEGE(ActivityType.BRUSH_PRIVILEGE, BrushPrivilegeActivity::new),//刷充特权 From dafff04cff10a154e9046bd5eb7c46ca6d7ae118 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Sun, 24 Dec 2023 14:19:31 +0800 Subject: [PATCH 18/32] =?UTF-8?q?=E4=B8=BB=E7=BA=BF=E6=80=AA=E7=89=A9?= =?UTF-8?q?=E5=89=8A=E5=BC=B1bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fight/eventhandler/MainLineOrInnerDemonFightHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java index 20a978bbe..d5c459d47 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java @@ -112,7 +112,7 @@ public class MainLineOrInnerDemonFightHandler implements IFightEventProcesor { */ public static void setFailTime(int uid, int type, int time){ int failTime = getFailTime(uid, type); - if (failTime != 0){ + if (time != 0 && failTime != 0){ return; } // redis记录key From 6a087e99bd4fd377bb0f17d627f4d2e160cb243d Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Mon, 25 Dec 2023 16:39:16 +0800 Subject: [PATCH 19/32] =?UTF-8?q?=E4=B8=BB=E7=BA=BF=E6=80=AA=E7=89=A9?= =?UTF-8?q?=E5=89=8A=E5=BC=B1bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../eventhandler/MainLineOrInnerDemonFightHandler.java | 6 +++++- .../src/main/java/com/ljsd/jieling/util/CBean2Proto.java | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java index d5c459d47..3ada641f3 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/fight/eventhandler/MainLineOrInnerDemonFightHandler.java @@ -125,14 +125,18 @@ public class MainLineOrInnerDemonFightHandler implements IFightEventProcesor { * 根据时间获取减免系数 */ public static double getDownNum(int uid, int type){ + int nowInt = TimeUtils.nowInt(); // 耗时(分)/ 减少比例 int[] timeDowns = SSpecialConfig.getIntegerArrayValue("Level_Time_Down"); // 最大减少比例 int maxDown = SSpecialConfig.getIntegerValue("Level_Time_Maxdown"); // 失败时间 int failTime = getFailTime(uid, type); + if (failTime == 0){ + failTime = nowInt; + } // 按照分钟计算减免系数 - int minutesTime = failTime / 1000 / timeDowns[0]; + int minutesTime = (nowInt - failTime) / 60 / timeDowns[0]; // 万分比 double downTime = 1 - (Math.min(minutesTime * timeDowns[1], maxDown) / 10000d); LOGGER.info("关卡挑战,战力降低日志,uid:{},类型:{},系数:{}",uid, type, downTime); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java index 88f373d11..b93f73429 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java @@ -580,10 +580,10 @@ public class CBean2Proto { StringBuilder monsterSkillList = new StringBuilder(); //火风水地光暗 float[] damageReduceFactor = sMonsterConfig.getElementDamageReduceFactor(); monsterPropertyList.append(sMonsterConfig.getLevel()).append("#"); //等级 - monsterPropertyList.append(curHp).append("#"); //生命 // 减免系数 double downNum = MainLineOrInnerDemonFightHandler.getDownNum(uid, type); // 只减免前这四项 + monsterPropertyList.append(Math.round(curHp * downNum)).append("#"); //生命 monsterPropertyList.append(Math.round(sMonsterConfig.getHp() * downNum)).append("#"); //最大生命 monsterPropertyList.append(Math.round(sMonsterConfig.getAttack() * downNum)).append("#");//攻击力 monsterPropertyList.append(Math.round(sMonsterConfig.getPhysicalDefence() * downNum)).append("#"); //护甲 From 0413850fce0cd55657ff5ac806472f3d13011631 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Tue, 26 Dec 2023 12:44:25 +0800 Subject: [PATCH 20/32] =?UTF-8?q?=E7=94=A8=E6=88=B7=E7=BC=93=E5=AD=98?= =?UTF-8?q?=E5=87=8F=E5=AE=B9=E4=BF=AE=E6=94=B9=E4=B8=BA=E6=AF=8F=E5=B0=8F?= =?UTF-8?q?=E6=97=B6=E5=A4=84=E7=90=86=E4=B8=80=E6=AC=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ljsd/jieling/chat/logic/ChatLogic.java | 2 +- .../ljsd/jieling/network/server/SessionManager.java | 7 ++----- .../java/com/ljsd/jieling/thread/ThreadManager.java | 3 +++ .../com/ljsd/jieling/thread/task/MinuteTask.java | 12 ++++++------ .../java/com/ljsd/jieling/util/DynamicLRUCache.java | 11 +++++------ 5 files changed, 17 insertions(+), 18 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/chat/logic/ChatLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/chat/logic/ChatLogic.java index 05c2a2bfe..e709efaae 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/chat/logic/ChatLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/chat/logic/ChatLogic.java @@ -86,7 +86,7 @@ public class ChatLogic { chatInfoList.add(CBean2Proto.getChatInfoBuilder(user, message,time,0)); } } - if (hmget!= null && hmget.size() != 0){ + if (hmget!= null && !hmget.isEmpty()){ //取出数据好友聊天数据后删除 RedisUtil.getInstence().del(GameApplication.serverId + RedisKey.CUser_Chat + uid); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java b/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java index d40cc86fb..ec81c4d06 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java @@ -295,19 +295,16 @@ public class SessionManager implements INetSession, INetReceived= index) { byte[] message = iSession.getCacheMessage(index); if (message == null) { //TODO error - LOGGER.info("the uid={},the msg={} is processing,the index={},the sessionIndex={}", iSession.getUid(), MessageTypeProto.MessageType.valueOf(packetNetData.getMsgId()), index, iSession.getIndex()); + LOGGER.error("the uid={},the msg={} is processing,the index={},the sessionIndex={}", iSession.getUid(), MessageTypeProto.MessageType.valueOf(packetNetData.getMsgId()), index, iSession.getIndex()); return 1; } else { - LOGGER.info("the uid={},the msg={} reback", iSession.getUid(), MessageTypeProto.MessageType.valueOf(packetNetData.getMsgId())); + LOGGER.error("the uid={},the msg={} reback", iSession.getUid(), MessageTypeProto.MessageType.valueOf(packetNetData.getMsgId())); iSession.writeAndFlush(message); return 1; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/thread/ThreadManager.java b/serverlogic/src/main/java/com/ljsd/jieling/thread/ThreadManager.java index 47c8c24dd..03f7c070c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/thread/ThreadManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/thread/ThreadManager.java @@ -2,6 +2,7 @@ package com.ljsd.jieling.thread; import com.ljsd.IManager; +import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.thread.task.*; import com.ljsd.jieling.util.ConfigurableApplicationContextManager; import org.slf4j.Logger; @@ -118,6 +119,8 @@ public class ThreadManager implements IManager { scheduledFutureSets.add(scheduledExecutor.scheduleAtFixedRate(new SecondsTask(), delayForMinute + 10, 1, TimeUnit.SECONDS)); // 战力任务 scheduledFutureSets.add(scheduledExecutor.scheduleAtFixedRate(new ForceRankTask(), 60,5, TimeUnit.SECONDS)); + // 每小时减容用户缓存 + scheduledFutureSets.add(scheduledExecutor.scheduleAtFixedRate(UserManager::adjustCacheBasedOnCurrentLoad, 10, 60, TimeUnit.MINUTES)); // 定时重启线程池 scheduledFutureSets.add(scheduledExecutor.scheduleAtFixedRate(new Thread(() -> { long lastMilis = System.currentTimeMillis(); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java index 885c27fb0..ae4ca38fe 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java @@ -170,12 +170,12 @@ public class MinuteTask extends Thread { LOGGER.error("Exception::=>{}", e.toString()); } - try { - OnlineUserManager.checkOnline(); - } catch (Exception e) { - e.printStackTrace(); - LOGGER.error("Exception::=>{}", e.toString()); - } +// try { +// OnlineUserManager.checkOnline(); +// } catch (Exception e) { +// e.printStackTrace(); +// LOGGER.error("Exception::=>{}", e.toString()); +// } try { CrossRankManager.getInstance().crossRankHandle(); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/DynamicLRUCache.java b/serverlogic/src/main/java/com/ljsd/jieling/util/DynamicLRUCache.java index 078ed0a98..9c103f58c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/DynamicLRUCache.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/DynamicLRUCache.java @@ -3,10 +3,7 @@ package com.ljsd.jieling.util; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.util.ArrayList; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.concurrent.locks.ReadWriteLock; import java.util.concurrent.locks.ReentrantReadWriteLock; @@ -99,16 +96,18 @@ public class DynamicLRUCache { public void shrinkToFit() { lock.writeLock().lock(); try { - if (cache.size() < maxSize / 2) { + // 减少缓存大小调整的频率 + if (cache.size() < maxSize / 2 && maxSize > 100) { maxSize /= 2; // 缩小缓存容量 } cache.entrySet().removeIf(entry -> isEntryExpired(entry.getValue())); } finally { lock.writeLock().unlock(); } - LOGGER.info("当前用户缓存列表大小,num:{},max:{}",size(),maxSize); + LOGGER.info("当前用户缓存列表大小,num:{},max:{}", size(), maxSize); } + private boolean isEntryExpired(TimedCacheEntry entry) { return System.currentTimeMillis() - entry.timestamp > expireTime; } From 6de440fb67ce9de244a2910cca0849a7e999a1eb Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Tue, 26 Dec 2023 16:38:32 +0800 Subject: [PATCH 21/32] =?UTF-8?q?=E7=81=B5=E5=85=BD=E5=93=81=E8=B4=A8?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=8C=E6=8E=A8=E9=80=81=E7=A4=BC=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ljsd/jieling/handler/map/miniGame/CircleGame.java | 2 +- .../eventhandler/PokemonFiveStarGetEventHandler.java | 1 - .../main/java/com/ljsd/jieling/logic/hero/HeroLogic.java | 8 ++++---- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/miniGame/CircleGame.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/miniGame/CircleGame.java index 72b644728..3e6c45811 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/miniGame/CircleGame.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/miniGame/CircleGame.java @@ -106,7 +106,7 @@ public class CircleGame extends ColorGame{ private void fiveStarPokemonPushByRandom(User user,int itemId) throws Exception{ SSpiritAnimal ssa = SSpiritAnimal.mapConfig.get(itemId); - if(ssa != null && ssa.getQuality()==5){ + if(ssa != null && ssa.getQuality()==7){ Poster.getPoster().dispatchEvent(new WelfareRedPackEvent(user.getId(), WelfareRedPacketType.game_pokemon.getType(),1)); ISession session = OnlineUserManager.getSessionByUid(user.getId()); BuyGoodsNewLogic.openPush(session,user, PushRechargeType.pokemon_quality.getType(),5); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/eventhandler/PokemonFiveStarGetEventHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/eventhandler/PokemonFiveStarGetEventHandler.java index 0b0082266..8977a87fa 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/eventhandler/PokemonFiveStarGetEventHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/eventhandler/PokemonFiveStarGetEventHandler.java @@ -19,7 +19,6 @@ public class PokemonFiveStarGetEventHandler implements IEventHandler { //动态控制购买数量 User user = UserManager.getUser(((PokemonFiveStarGetEvent) event).getUid()); int star = ((PokemonFiveStarGetEvent) event).getStar(); - int num = ((PokemonFiveStarGetEvent) event).getNum(); ISession session = OnlineUserManager.getSessionByUid(user.getId()); BuyGoodsNewLogic.openPush(session,user, PushRechargeType.pokemon_quality.getType(),star); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index 4b6261d74..a4baf53b1 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -504,13 +504,13 @@ public class HeroLogic { int fiveStarNum = 0; for (int[] i : getHeros) { SSpiritAnimal ssa = SSpiritAnimal.mapConfig.get(i[0]); - if (ssa != null && ssa.getQuality() == 5) { + if (ssa != null && ssa.getQuality() == 7) { fiveStarNum++; Poster.getPoster().dispatchEvent(new WelfareRedPackEvent(user.getId(), WelfareRedPacketType.random_pokemon.getType(), 1)); } } if (fiveStarNum > 0) { - Poster.getPoster().dispatchEvent(new PokemonFiveStarGetEvent(user.getId(), 5, fiveStarNum)); + Poster.getPoster().dispatchEvent(new PokemonFiveStarGetEvent(user.getId(), 7, fiveStarNum)); } } @@ -519,8 +519,8 @@ public class HeroLogic { */ public static void fiveStarPokemonPushByCombine(User user, int itemId, int num) { SSpiritAnimal ssa = SSpiritAnimal.mapConfig.get(itemId); - if (ssa != null && ssa.getQuality() == 5) { - Poster.getPoster().dispatchEvent(new PokemonFiveStarGetEvent(user.getId(), 5, num)); + if (ssa != null && ssa.getQuality() == 7) { + Poster.getPoster().dispatchEvent(new PokemonFiveStarGetEvent(user.getId(), 7, num)); } } From 416da4f2ad101e3b98ee6c76e2512f92d8c1eadd Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Wed, 27 Dec 2023 16:32:19 +0800 Subject: [PATCH 22/32] =?UTF-8?q?=E5=85=AC=E4=BC=9A=E4=BB=85=E5=89=A91?= =?UTF-8?q?=E4=BA=BA=E6=97=B6=EF=BC=8C=E7=AB=8B=E5=88=BB=E8=A7=A3=E6=95=A3?= =?UTF-8?q?=E5=85=AC=E4=BC=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ljsd/jieling/kefu/Cmd_updateguild.java | 1 - .../ljsd/jieling/logic/dao/GuilidManager.java | 2 +- .../jieling/logic/dao/root/GuildInfo.java | 2 +- .../ljsd/jieling/logic/family/GuildLogic.java | 36 ++++++++++++------- 4 files changed, 25 insertions(+), 16 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_updateguild.java b/serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_updateguild.java index 571b81909..c8308c812 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_updateguild.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_updateguild.java @@ -36,7 +36,6 @@ public class Cmd_updateguild extends GmAbstract { case "dissolution": guildInfo.setLevelTime(1); GuilidManager.addGuildToRelease(guildInfo); - GuilidManager.saveOrUpdateGuildInfo(guildInfo); break; default: throw new ErrorCodeException("修改公会,类型错误,公会id:"+guildId+",类型:"+parm); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/GuilidManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/GuilidManager.java index 9c67b6ba2..568f0489f 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/GuilidManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/GuilidManager.java @@ -190,7 +190,7 @@ public class GuilidManager { RedisUtil.getInstence().zsetRemoveOne(key,Integer.toString(guildInfo.getId())); return; } - levelTime+= SGuildSetting.sGuildSetting.getDestroyTime(); + levelTime += SGuildSetting.sGuildSetting.getDestroyTime(); RedisUtil.getInstence().zsetAddOne(key,Integer.toString(guildInfo.getId()),levelTime); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/root/GuildInfo.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/root/GuildInfo.java index 7e29e6614..e21a2256d 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/root/GuildInfo.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/root/GuildInfo.java @@ -28,7 +28,7 @@ public class GuildInfo extends MongoBase { private int joinType ; //加入类型 1:直接加入 2:申请加入 3:禁止加入 - private Map> members ; + private Map> members; private int levelTime; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java index 8da906114..155834be7 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/GuildLogic.java @@ -116,7 +116,7 @@ public class GuildLogic { int[][] reward = sGuildSacrificeRewardConfig.getReward(); itemArrs.add(reward); } - if (itemArrs.size() == 0) { + if (itemArrs.isEmpty()) { return; } String title = SErrorCodeEerverConfig.getI18NMessage("guildsacrifice_reward_title"); @@ -194,7 +194,7 @@ public class GuildLogic { if(StringUtil.isEmpty(announce)){ announce= SGuildSetting.sGuildSetting.getDefaultDeclaration(); } - if(announce.length()==0||announce.length()>32){ + if(announce.isEmpty() ||announce.length()>32){ throw new ErrorCodeException(ErrorCode.ANNOUNCE_SIZE); } // 创建公会 @@ -249,7 +249,7 @@ public class GuildLogic { Family.FamilyRecommandResponse.Builder builder = Family.FamilyRecommandResponse.newBuilder(); Map applyGuildInfos = GuilidManager.getApplyGuildInfos(uid, 1); int now = TimeUtils.nowInt(); - if(applyGuildInfos.size()>0){ + if(!applyGuildInfos.isEmpty()){ Iterator> iterator = applyGuildInfos.entrySet().iterator(); while (iterator.hasNext()){ Map.Entry next = iterator.next(); @@ -315,7 +315,7 @@ public class GuildLogic { throw new ErrorCodeException(ErrorCode.FAMILY_HAD_APPLY); } for(Integer applyGuildId : applyGuilds){ - if(GuilidManager.getGuildInfo(applyGuildId).getJoinType()!=0&&applyGuilds.size()==0){ + if(GuilidManager.getGuildInfo(applyGuildId).getJoinType()!=0&& applyGuilds.isEmpty()){ continue; } GuildApply guildApply = new GuildApply(uid,applyGuildId); @@ -329,7 +329,7 @@ public class GuildLogic { GuilidManager.addApplyGuildInfo(guildApply); Map> members = GuilidManager.getGuildInfo(applyGuildId).getMembers(); for(Map.Entry> entry: members.entrySet()){ - if(entry.getValue().size()<1){ + if(entry.getValue().isEmpty()){ continue; } if (entry.getKey()==GlobalsDef.MEMBER){ @@ -726,6 +726,7 @@ public class GuildLogic { /** * 解散公会 + * @param type 1:解散 2:取消解散 */ public static void dissolution(ISession session,int type) throws Exception { int msgId = MessageTypeProto.MessageType.FAMILY_DISSOLUTION_RESPONSE_VALUE; @@ -737,21 +738,29 @@ public class GuildLogic { } GuildInfo guildInfo = GuilidManager.getGuildInfo(guildId); int uidType = getMemberType(uid, guildInfo.getMembers()); - if(uidType!=1){ + if(uidType != 1){ throw new ErrorCodeException(ErrorCode.FAMILY_NO_ACCESS); } - if(type == 1 && guildInfo.getLevelTime()>0){ + if(type == 1 && guildInfo.getLevelTime() > 0){ throw new ErrorCodeException(ErrorCode.newDefineCode("已操作过了")); } - if(type == 1&&GuildFightLogic.getStatus()!=0){ + if(type == 1&&GuildFightLogic.getStatus() != 0){ throw new ErrorCodeException(ErrorCode.FAMILY_DESTROY_IN_WAR); } //解散公会 + int time = 0; if(type == 1){ - guildInfo.setLevelTime(TimeUtils.nowInt()); - }else{ - guildInfo.setLevelTime(0); + int num = 0; + for (Set set : guildInfo.getMembers().values()) { + num += set.size(); + } + if (num == 1){ + time = 1; + }else { + time = TimeUtils.nowInt(); + } } + guildInfo.setLevelTime(time); GuilidManager.saveOrUpdateGuildInfo(guildInfo); sendFamilyBaseUpdateIndication(guildInfo); GuilidManager.addGuildToRelease(guildInfo); @@ -910,7 +919,9 @@ public class GuildLogic { MessageUtil.sendMessage(session,1,msgId,null,true); } - + /** + * 退出公会 + */ public static void levelFamily(ISession session) throws Exception { int msgId = MessageTypeProto.MessageType.FAMILY_LEVEL_RESPONSE_VALUE; int uid = session.getUid(); @@ -928,7 +939,6 @@ public class GuildLogic { guildInfo.removeDefendInfo(uid); } - //TODO lock check OnUserLeveFamily(user); guildInfo.removeMember(uidType,uid); user.getPlayerInfoManager().setGuildId(0); From 86025ab78598dfe47f0fc489b2fc7ea2327f999c Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Thu, 28 Dec 2023 10:18:00 +0800 Subject: [PATCH 23/32] =?UTF-8?q?session=20index=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E6=8A=A5=E9=94=99=20=E6=B3=95=E5=AE=9D?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E8=BD=AC=E6=8D=A2=E5=BC=82=E5=B8=B8=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ljsd/jieling/logic/dao/EquipManager.java | 6 +++--- .../com/ljsd/jieling/network/server/SessionManager.java | 7 ++++++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/EquipManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/EquipManager.java index 5837b8318..91831adeb 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/EquipManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/EquipManager.java @@ -109,10 +109,10 @@ public class EquipManager extends MongoBase { public Baubles getBaubles(String equipId) { PropertyItem item = equipMap.get(equipId); - if (item == null){ - return null; + if (item instanceof Baubles){ + return (Baubles) item; } - return (Baubles) item; + return null; } public void loadFaxiang(String key,String heroId) { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java b/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java index ec81c4d06..422d0ebf5 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java @@ -301,7 +301,12 @@ public class SessionManager implements INetSession, INetReceived Date: Thu, 28 Dec 2023 11:39:20 +0800 Subject: [PATCH 24/32] =?UTF-8?q?=E6=B3=95=E5=AE=9D=E4=BB=BB=E5=8A=A1bug?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/logic/dao/CumulationData.java | 34 +++++++++++++++++-- .../ljsd/jieling/logic/equip/EquipLogic.java | 2 ++ .../ljsd/jieling/logic/mission/GameEvent.java | 4 +-- .../jieling/logic/mission/MissionLoigc.java | 7 ---- .../jieling/logic/mission/MissionType.java | 6 ++-- .../mission/data/DataManagerDistributor.java | 6 ++-- .../data/EspecialEquipLeveMamager.java | 19 +++++++++-- .../mission/data/EspecialStarManager.java | 26 +++++++++----- ...er.java => UpAllBaublesLvDataManager.java} | 8 ++--- .../event/MissionEventDistributor.java | 12 +++---- 10 files changed, 83 insertions(+), 41 deletions(-) rename serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/{UpJewlDataManager.java => UpAllBaublesLvDataManager.java} (89%) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java index a7eebde8e..ceb015119 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/CumulationData.java @@ -125,13 +125,13 @@ public class CumulationData { public int refreshMrTimes; //刷新迷宫寻宝次数 - public int especialEquipMaxLeve; //法宝最高等级达到5 + private int especialEquipMaxLeve; //法宝最高等级达到5 public Map luckyWheelTimes = new HashMap<>(); //幸运探宝次数 public int expeditinoTimes; // 猎妖之路次数 - public Map especialEquipStar = new HashMap<>();//法宝升到%s星级的数量为 + private Map especialEquipStar = new HashMap<>();//法宝升到%s星级的数量为 public Map finishMissionTimes = new HashMap<>();//完成迷宫寻宝%品质%次 public Map loginTimesDay = new HashMap<>();//每日登陆次数 @@ -148,7 +148,7 @@ public class CumulationData { public int decompose_times;//献祭武将次数 public int death_path_times;// 击杀过关十绝阵num次 - public int jewl_all_leve;//全体上阵成员法宝等级达到level(需求人数6人,不满上阵不计完成度) + private int baubles_all_level;//全体上阵成员法宝等级达到level(需求人数6人,不满上阵不计完成度) public int daily_task_value;// public int guild_help_value;// public int car_play_time;// @@ -751,4 +751,32 @@ public class CumulationData { public void addXiaoyaoyouConsumeNum(int num) { this.xiaoyaoyouConsumeNum += num; } + + public int getEspecialEquipMaxLeve() { + return especialEquipMaxLeve; + } + + public void setEspecialEquipMaxLeve(int especialEquipMaxLeve) { + this.especialEquipMaxLeve = especialEquipMaxLeve; + } + + public int getBaubles_all_level() { + return baubles_all_level; + } + + public void setBaubles_all_level(int baubles_all_level) { + this.baubles_all_level = baubles_all_level; + } + + public Map getEspecialEquipStar() { + return especialEquipStar; + } + + public int getEspecialEquipStar(int star) { + return especialEquipStar.getOrDefault(star, 0); + } + + public void setEspecialEquipStar(Map especialEquipStar) { + this.especialEquipStar = especialEquipStar; + } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java index 15220f835..1e073c92c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java @@ -13,6 +13,7 @@ import com.ljsd.jieling.logic.activity.event.SaveHeroForceEvent; import com.ljsd.jieling.logic.dao.*; import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.hero.TrainingLogic; +import com.ljsd.jieling.logic.mission.GameEvent; import com.ljsd.jieling.network.session.ISession; import com.ljsd.jieling.tools.Utils; import com.ljsd.jieling.util.CBean2Proto; @@ -757,6 +758,7 @@ public class EquipLogic { } baubles.setLevel(tgLv); + user.getUserMissionManager().onGameEvent(user, GameEvent.BAUBLES_EQUIP, tgLv); MessageUtil.sendMessage(session, 1, MessageTypeProto.MessageType.BaublesStrengthenResponse_VALUE, null, true); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/GameEvent.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/GameEvent.java index dd190a7c3..05eb6ae46 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/GameEvent.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/GameEvent.java @@ -37,10 +37,8 @@ public enum GameEvent { PlAY_STORY, //玩副本 HERO_UP,//卡牌成长 0:升级 1:突破 2:升星 TAKE_ACTIVITY_REWARD, // 领取活动奖励 - HERO_IN_TEAM, // 上阵卡牌数量 - - ESPECIAL_EQUIP,//获得法宝 + BAUBLES_EQUIP,//获得法宝 RECHARGE_TOTAL,//累計充值 JADE_DYNASTY_REFRESH,//破阵诛仙任务日刷新 JADE_DYNASTY_WEEK_REFRESH,//破阵诛仙周刷新 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionLoigc.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionLoigc.java index 98fc7a928..18fc4ca50 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionLoigc.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionLoigc.java @@ -1147,9 +1147,6 @@ public class MissionLoigc { case FAMILY_FIGHT_ATTACK: count = cumulationData.familyFightCount; break; - case ESPECIAL_EQUIP: - count = cumulationData.especialEquipStar.get(missionSubType[0]); - break; case FIND_STAR: count = cumulationData.findStar; break; @@ -1178,10 +1175,6 @@ public class MissionLoigc { case REFRESH_MISSING_ROOM: count = cumulationData.refreshMrTimes; break; - //todo - case SPECIAL_EQUIP_LEVEL_UP: - count = cumulationData.especialEquipMaxLeve; - break; case LUCKY_WHEELS_TIMES: if(missionSubType[0] == 0){ for(int value : cumulationData.luckyWheelTimes.values()){ diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionType.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionType.java index 0d461090d..62a4456d6 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/MissionType.java @@ -83,7 +83,7 @@ public enum MissionType { BLOODY_KILL_NUMS(59),// 血战每日击杀人数 ENDLESS_CONSUME_ACTION(60),//无尽消耗行动力 FAMILY_FIGHT_ATTACK(61),//公会战进攻次数 - ESPECIAL_EQUIP(62),//拥有%s星级法宝的数量为:%s + BAUBLES_EQUIP(62),//拥有%s星级法宝的数量为:%s FIND_STAR(65),//占星 TAKE_FRIEND_GIFT(66),//领取好友友情点 JOIN_FAMILY(69), @@ -95,7 +95,7 @@ public enum MissionType { CARD_RANDOM_TYPE(75),// 使用普通召唤num次(十连抽num计10) FINISH_MISSING_ROOM(76),//完成迷宫寻宝%品质%次 REFRESH_MISSING_ROOM(77),//刷新迷宫寻宝%s次 - SPECIAL_EQUIP_LEVEL_UP(78),//法宝提升到%s级 + BAUBLES_EQUIP_LEVEL_UP(78),//法宝提升到%s级 GUILD_GIVE_TIME(79),//使用level级别(0不限、1普通、2钻石小、3钻石大)的公会捐献num次 TEN_CHALLENGE_TIME(80),//挑战十绝阵num次 @@ -110,7 +110,7 @@ public enum MissionType { EXPEDITION_FLOOR_TIMES(89),//猎妖之路通过第floor层的首领节点(每层最多一个)num次 DECOMPOSE_TIMES(100),//献祭武将num个 DEATH_PATH_TIMES(101),//击杀过关十绝阵num次 - JEWL_ALL_LEVE(102),//全体上阵成员法宝等级达到level(需求人数6人,不满上阵不计完成度) + BAUBLES_ALL_LEVE(102),//全体上阵成员法宝等级达到level(需求人数6人,不满上阵不计完成度) DAILY_TASK_FINISH(103),//日常任务活跃度达到num GUILD_HELP_TIMES(104),//公会援助他人次数达到num diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/DataManagerDistributor.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/DataManagerDistributor.java index 2bad216b8..2b2c649e8 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/DataManagerDistributor.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/DataManagerDistributor.java @@ -107,7 +107,7 @@ public class DataManagerDistributor { judges.put(MissionType.JOIN_MONSTER_ATTACK_TIMES,new JoinMonsterAttackManager()); judges.put(MissionType.MONSTER_ATTACK_LEVEL,new DefaultDataManager()); judges.put(MissionType.TO_BE_STRONGER,new StrongerManager()); - judges.put(MissionType.ESPECIAL_EQUIP,new EspecialStarManager()); + judges.put(MissionType.BAUBLES_EQUIP,new EspecialStarManager()); judges.put(MissionType.FAMILY_FIGHT_ATTACK,new FamilyFightManager()); judges.put(MissionType.FIND_STAR,new FindStarManager()); @@ -119,7 +119,7 @@ public class DataManagerDistributor { judges.put(MissionType.RECHARGE_TIMES,new RechargeTimesManager()); judges.put(MissionType.FINISH_MISSING_ROOM,new FinishMissionRoomManager()); judges.put(MissionType.REFRESH_MISSING_ROOM,new RefreshMissionRoomMamager()); - judges.put(MissionType.SPECIAL_EQUIP_LEVEL_UP,new EspecialEquipLeveMamager()); + judges.put(MissionType.BAUBLES_EQUIP_LEVEL_UP,new EspecialEquipLeveMamager()); judges.put(MissionType.LUCKY_WHEELS_TIMES,new LuckyWheelTimesManager()); judges.put(MissionType.FINISH_EXPEDITION_HERO_TIMES,new ExpeditionManager()); judges.put(MissionType.LOGIN_TIMES,new LoginTimeManager()); @@ -132,7 +132,7 @@ public class DataManagerDistributor { judges.put(MissionType.EXPEDITION_FLOOR_TIMES,new ExpeditionPassManger()); judges.put(MissionType.DECOMPOSE_TIMES,new DecomposeTimes()); judges.put(MissionType.DEATH_PATH_TIMES,new DeathPathTimes()); - judges.put(MissionType.JEWL_ALL_LEVE,new UpJewlDataManager()); + judges.put(MissionType.BAUBLES_ALL_LEVE,new UpAllBaublesLvDataManager()); judges.put(MissionType.DAILY_TASK_FINISH,new DailyTaskManager()); judges.put(MissionType.GUILD_HELP_TIMES,new GuildHelpManager()); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialEquipLeveMamager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialEquipLeveMamager.java index c8debffe9..db8e0f9ef 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialEquipLeveMamager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialEquipLeveMamager.java @@ -1,13 +1,26 @@ package com.ljsd.jieling.logic.mission.data; import com.ljsd.jieling.logic.dao.CumulationData; +import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.mission.MissionType; -public class EspecialEquipLeveMamager implements BaseDataManager{ +public class EspecialEquipLeveMamager extends AbstractDataManager { + + @Override + public boolean isFinish(User user, CumulationData data, int[][] cfgValue, Object... parm) { + return data.getEspecialEquipMaxLeve() >= cfgValue[1][0]; + } + + @Override + public int getProcess(User user, CumulationData data, int[] missionSubType) { + return data.getEspecialEquipMaxLeve(); + } + @Override public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) { - if((int)parm[0]>data.especialEquipMaxLeve){ - data.especialEquipMaxLeve=(int)parm[0]; + int lv = (int) parm[0]; + if(lv > data.getEspecialEquipMaxLeve()){ + data.setEspecialEquipMaxLeve(lv); } return new CumulationData.Result(missionType); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java index 247bf0028..a4f69e102 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java @@ -1,25 +1,33 @@ package com.ljsd.jieling.logic.mission.data; import com.ljsd.jieling.logic.dao.CumulationData; +import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.mission.MissionType; import java.util.Map; -public class EspecialStarManager implements BaseDataManager { +public class EspecialStarManager extends AbstractDataManager { + + @Override + public boolean isFinish(User user, CumulationData data, int[][] cfgValue, Object... parm) { + return data.getEspecialEquipStar(cfgValue[0][0]) >= cfgValue[1][0]; + } + + @Override + public int getProcess(User user, CumulationData data, int[] missionSubType) { + return data.getEspecialEquipStar(missionSubType[0]); + } + @Override public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) { - int equipStar = (int) parm[0]; - Map especialEquipStar = data.especialEquipStar; + int equipStar = ((int) parm[0])/10; + Map especialEquipStar = data.getEspecialEquipStar(); + if(especialEquipStar.containsKey(equipStar)){ - especialEquipStar.put(equipStar,especialEquipStar.get(equipStar)+1); + especialEquipStar.merge(equipStar,1,Integer::sum); }else{ especialEquipStar.put(equipStar,1); } - - if(equipStar>data.especialEquipMaxLeve){ - data.especialEquipMaxLeve=equipStar; - } return new CumulationData.Result(missionType); - } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpJewlDataManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java similarity index 89% rename from serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpJewlDataManager.java rename to serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java index 9ca5f5327..db0ad39cc 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpJewlDataManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java @@ -12,7 +12,7 @@ import java.util.Map; * Author: zsx * CreateDate: 2020/6/1 12:03 */ -public class UpJewlDataManager extends AbstractDataManager{ +public class UpAllBaublesLvDataManager extends AbstractDataManager{ @Override public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) { @@ -26,7 +26,7 @@ public class UpJewlDataManager extends AbstractDataManager{ @Override public boolean isFinish(User user,CumulationData data, int[][] cfgValue, Object... parm) { - if(data.jewl_all_leve==cfgValue[1][0]){ + if(data.getBaubles_all_level() ==cfgValue[1][0]){ return true; } Map> teamPosForHero = user.getTeamPosManager().getTeamPosForHero(); @@ -46,7 +46,7 @@ public class UpJewlDataManager extends AbstractDataManager{ } } if(isAll){ - data.jewl_all_leve=cfgValue[1][0]; + data.setBaubles_all_level(cfgValue[1][0]); return true; } } @@ -55,7 +55,7 @@ public class UpJewlDataManager extends AbstractDataManager{ @Override public int getProcess(User user, CumulationData data, int[] missionSubType) { - return data.jewl_all_leve; + return data.getBaubles_all_level(); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java index f91ae23cd..2b1c782f4 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/event/MissionEventDistributor.java @@ -200,16 +200,16 @@ public class MissionEventDistributor { typeList = new ArrayList<>(); typeList.add(MissionType.HERO_IN_TEAM_NUMS); - typeList.add(MissionType.JEWL_ALL_LEVE); + typeList.add(MissionType.BAUBLES_ALL_LEVE); eventEnumListMap.put(GameEvent.HERO_IN_TEAM,typeList); eventProcessor.put(GameEvent.HERO_IN_TEAM,new CumulationDataEventProcessor()); typeList = new ArrayList<>(); - typeList.add(MissionType.ESPECIAL_EQUIP); - typeList.add(MissionType.JEWL_ALL_LEVE); - typeList.add(MissionType.SPECIAL_EQUIP_LEVEL_UP); - eventEnumListMap.put(GameEvent.ESPECIAL_EQUIP,typeList); - eventProcessor.put(GameEvent.ESPECIAL_EQUIP,new CumulationDataEventProcessor()); + typeList.add(MissionType.BAUBLES_EQUIP); + typeList.add(MissionType.BAUBLES_ALL_LEVE); + typeList.add(MissionType.BAUBLES_EQUIP_LEVEL_UP); + eventEnumListMap.put(GameEvent.BAUBLES_EQUIP,typeList); + eventProcessor.put(GameEvent.BAUBLES_EQUIP,new CumulationDataEventProcessor()); typeList = new ArrayList<>(); typeList.add(MissionType.REARGE_TOTAL); From ce5a23492e79ab02ac1c7b27fc483bdd8da4a348 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Thu, 28 Dec 2023 14:03:23 +0800 Subject: [PATCH 25/32] =?UTF-8?q?=E5=8A=A9=E6=88=98=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=EF=BC=8C=E5=AE=9D=E7=89=A9=E6=8A=A5null=EF=BC=8C=E5=B7=B2?= =?UTF-8?q?=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ljsd/jieling/util/CBean2Proto.java | 33 ++++++++++++------- 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java index b93f73429..1430a42a0 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java @@ -232,23 +232,33 @@ public class CBean2Proto { return lists; } + /** + * 编译助战状态 + * @param propertyItems 装备列表 + * @return proto对象 + */ + private static List buildHelpFightEquip(List propertyItems){ + List resultEquip = new ArrayList<>(); + if (propertyItems != null && !propertyItems.isEmpty()){ + for (PropertyItem item : propertyItems) { + if (item == null){ + continue; + } + resultEquip.add(getPropertyEquipProto(item)); + } + } + return resultEquip; + } + /** * 助战,redis类型转proto */ public static CommonProto.HelpFightList helpHeroProto(HelpHero helpHero) throws Exception { User otherUser = UserManager.getUser(helpHero.getUid()); // 魂宝灵宝 - List jewels = new ArrayList<>(); - List jewel = helpHero.getJewels(); - if (jewel != null && !jewel.isEmpty()){ - jewel.forEach(item->jewels.add(getPropertyEquipProto(item))); - } + List jewels = buildHelpFightEquip(helpHero.getJewels()); // 法相 - List faxiang = new ArrayList<>(); - List faxiangs = helpHero.getFaxiangs(); - if (faxiangs != null && !faxiangs.isEmpty()){ - faxiangs.forEach(item->faxiang.add(getPropertyEquipProto(item))); - } + List faxiang = buildHelpFightEquip(helpHero.getFaxiangs()); // 装备详细信息 List equips = new ArrayList<>(); Map equip = helpHero.getHero().getEquipByPositionMap(); @@ -286,7 +296,7 @@ public class CBean2Proto { * 助战,hero对象转redis类型 * 存入redis时调用 */ - public static HelpHero heroToHelpHero(User user,Hero hero) throws Exception { + public static HelpHero heroToHelpHero(User user,Hero hero) { // 获取神将类型 HelpTypeEnum type = HelpTypeEnum.getType(hero.getPropertyId()); // 英雄镜像 @@ -296,7 +306,6 @@ public class CBean2Proto { List jewels = clonePropertyItemList(equipManager, heroVo.getJewelInfo()); // 法相 List faxiangs = clonePropertyItemList(equipManager, heroVo.getFaxiangList()); - // 结果返回,援助类型不在这里写 HelpHero helpHero = new HelpHero(); helpHero.setUid(user.getId()); From 1566463f65fcf1ab486cc74d396d04f92fcdf39c Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Thu, 28 Dec 2023 14:04:19 +0800 Subject: [PATCH 26/32] =?UTF-8?q?=E6=B3=95=E5=AE=9D=E6=98=9F=E7=BA=A7?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=8A=9F=E8=83=BD=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mission/data/EspecialStarManager.java | 21 +++++++++++-------- .../data/UpAllBaublesLvDataManager.java | 4 ++-- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java index a4f69e102..559f73615 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/EspecialStarManager.java @@ -1,15 +1,26 @@ package com.ljsd.jieling.logic.mission.data; +import com.ljsd.jieling.logic.dao.Baubles; import com.ljsd.jieling.logic.dao.CumulationData; +import com.ljsd.jieling.logic.dao.EquipManager; import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.mission.MissionType; -import java.util.Map; +import java.util.HashMap; +import java.util.List; public class EspecialStarManager extends AbstractDataManager { @Override public boolean isFinish(User user, CumulationData data, int[][] cfgValue, Object... parm) { + EquipManager equipManager = user.getEquipManager(); + List baublesList = equipManager.getBaublesList(); + HashMap map = new HashMap<>(); + for (Baubles baubles : baublesList) { + int star = baubles.getLevel() / 10; + map.merge(star,1,Integer::sum); + } + data.setEspecialEquipStar(map); return data.getEspecialEquipStar(cfgValue[0][0]) >= cfgValue[1][0]; } @@ -20,14 +31,6 @@ public class EspecialStarManager extends AbstractDataManager { @Override public CumulationData.Result updateData(CumulationData data, MissionType missionType, Object... parm) { - int equipStar = ((int) parm[0])/10; - Map especialEquipStar = data.getEspecialEquipStar(); - - if(especialEquipStar.containsKey(equipStar)){ - especialEquipStar.merge(equipStar,1,Integer::sum); - }else{ - especialEquipStar.put(equipStar,1); - } return new CumulationData.Result(missionType); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java index db0ad39cc..f2ace77ae 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/mission/data/UpAllBaublesLvDataManager.java @@ -26,14 +26,14 @@ public class UpAllBaublesLvDataManager extends AbstractDataManager{ @Override public boolean isFinish(User user,CumulationData data, int[][] cfgValue, Object... parm) { - if(data.getBaubles_all_level() ==cfgValue[1][0]){ + if(data.getBaubles_all_level() == cfgValue[1][0]){ return true; } Map> teamPosForHero = user.getTeamPosManager().getTeamPosForHero(); HeroManager heroManager = user.getHeroManager(); EquipManager equipManager = user.getEquipManager(); for (Map.Entry> entry:teamPosForHero.entrySet()){ - List teamPosHeroInfos =entry.getValue(); + List teamPosHeroInfos = entry.getValue(); if(teamPosHeroInfos.size()!=6){ continue; } From ee237b49968b1ff6abb246a96c32d6c75b86b1e0 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Thu, 28 Dec 2023 18:23:27 +0800 Subject: [PATCH 27/32] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=89=B9=E8=AE=AD?= =?UTF-8?q?=E5=BB=BA=E7=AD=91=E7=AB=8B=E5=88=BB=E5=8D=87=E7=BA=A7=E6=B6=88?= =?UTF-8?q?=E8=80=97bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ljsd/jieling/logic/hero/TrainingLogic.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/TrainingLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/TrainingLogic.java index 8483ce09a..396747488 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/TrainingLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/TrainingLogic.java @@ -154,7 +154,8 @@ public class TrainingLogic { cost.add(buildLevel.getCost()); } else { - int num = (int) Math.round((nowInt - architecture.getStartTime()) / 60d); + int second = buildLevel.getTime() - (nowInt - architecture.getStartTime()); + int num = (int) Math.round(second / 60d); cost.add(new int[][]{{trainBuildTime[0], trainBuildTime[1] * num}}); } // 验证道具数量 From f746d02aa3cc44f4f3937241e7a3044788faea6b Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Fri, 29 Dec 2023 12:06:50 +0800 Subject: [PATCH 28/32] =?UTF-8?q?session=E5=BC=82=E5=B8=B8=E5=A4=84?= =?UTF-8?q?=E7=90=86=E5=9B=9E=E6=BB=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ljsd/jieling/network/server/SessionManager.java | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java b/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java index 422d0ebf5..ec81c4d06 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/network/server/SessionManager.java @@ -301,12 +301,7 @@ public class SessionManager implements INetSession, INetReceived Date: Fri, 29 Dec 2023 14:43:56 +0800 Subject: [PATCH 29/32] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8A=A9=E6=88=98?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BC=82=E5=B8=B8bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/handler/GetPlayerInfoHandler.java | 2 +- .../java/com/ljsd/jieling/logic/dao/Hero.java | 9 +- .../ljsd/jieling/logic/dao/PropertyItem.java | 5 +- .../com/ljsd/jieling/logic/help/HelpHero.java | 10 ++ .../jieling/logic/help/HelpHeroLogic.java | 13 +- .../ljsd/jieling/logic/hero/HeroLogic.java | 3 +- .../com/ljsd/jieling/util/CBean2Proto.java | 136 ++++++++++++------ .../src/main/java/manager/STableManager.java | 2 +- 8 files changed, 116 insertions(+), 64 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java index dee57cc97..a4c9c9528 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java @@ -220,7 +220,7 @@ public class GetPlayerInfoHandler extends BaseHandler{ .setDailyredpack(playerInfoManager.getDailyWelfareRedPacket()) .setRandomCount(randomCount) .addAllDrawTimes(CBean2Proto.getRandomTypeNums(user)) - .addAllHelpFightList(CBean2Proto.getHelpFightList(user)) + .addAllHelpFightList(CBean2Proto.getHelpHeroList(user)) .addAllSixiangInfos(sixiangxinfaInfos) .setServerOpenTime((int) (openTime / 1000)) .setXiuweiLevel(heroManager.getXiuweiLevel()) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/Hero.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/Hero.java index 7835a6eca..bd24bba1b 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/Hero.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/Hero.java @@ -87,10 +87,7 @@ public class Hero extends MongoBase implements Comparable,Cloneable { this.training = new Training(); } - /** - * 大脑天宫 - * 初始化英雄,不入英雄背包 - */ + // 大脑天宫 初始化英雄,不入英雄背包 public Hero(Hero hero,int uid,int heroTid,int level) { this.setRootCollection(User._COLLECTION_NAME); this.id = KeyGenUtils.produceIdByModule(UUIDEnum.HERO, uid); @@ -111,9 +108,7 @@ public class Hero extends MongoBase implements Comparable,Cloneable { this.jewelInfo = new HashSet<>(hero.getJewelInfo()); } - /** - * 创建默认英雄 - */ + // 创建默认英雄 public Hero(int uid, int heroTid, int initStar){ this.setRootCollection(User._COLLECTION_NAME); this.id = KeyGenUtils.produceIdByModule(UUIDEnum.HERO, uid); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PropertyItem.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PropertyItem.java index fcd7153d3..70e3691a8 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PropertyItem.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PropertyItem.java @@ -4,8 +4,11 @@ import com.ljsd.common.mogodb.MongoBase; import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.util.KeyGenUtils; import com.ljsd.jieling.util.UUIDEnum; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class PropertyItem extends MongoBase { + private static final Logger LOGGER = LoggerFactory.getLogger(PropertyItem.class); private String id;// 唯一id private int equipId;// 道具id @@ -77,7 +80,7 @@ public class PropertyItem extends MongoBase { clone = (PropertyItem) super.clone(); clone.init(0,""); } catch (CloneNotSupportedException e) { - e.printStackTrace(); + LOGGER.error("强化类型装备克隆失败........",e); } return clone; } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/help/HelpHero.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/help/HelpHero.java index b7987bd68..d1e226f78 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/help/HelpHero.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/help/HelpHero.java @@ -56,6 +56,8 @@ public class HelpHero { private Baubles baubles; + private List baublesList = new ArrayList<>(); + public int getUid() { return uid; } @@ -135,4 +137,12 @@ public class HelpHero { public void setBaubles(Baubles baubles) { this.baubles = baubles; } + + public List getBaublesList() { + return baublesList; + } + + public void setBaublesList(List baublesList) { + this.baublesList = baublesList; + } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/help/HelpHeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/help/HelpHeroLogic.java index df75452b8..d6c242fe7 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/help/HelpHeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/help/HelpHeroLogic.java @@ -83,7 +83,7 @@ public class HelpHeroLogic { // 我的助战 if (typeEnum == Me){ for (Map.Entry data:helpHeroMap.entrySet()){ - result.add(CBean2Proto.helpHeroProto(data.getValue())); + result.add(CBean2Proto.buildHelpHeroToProto(data.getValue())); } } // 人佛妖道 @@ -113,7 +113,7 @@ public class HelpHeroLogic { if (friends.contains(Integer.parseInt(data.getKey()))){ // 此处进行助战类型赋值 data.getValue().setHelpType(0); - result.add(CBean2Proto.helpHeroProto(data.getValue())); + result.add(CBean2Proto.buildHelpHeroToProto(data.getValue())); continue; } @@ -122,7 +122,7 @@ public class HelpHeroLogic { if (mem.contains(Integer.parseInt(data.getKey()))){ // 此处进行助战类型赋值 data.getValue().setHelpType(1); - result.add(CBean2Proto.helpHeroProto(data.getValue())); + result.add(CBean2Proto.buildHelpHeroToProto(data.getValue())); break; } } @@ -134,7 +134,7 @@ public class HelpHeroLogic { HelpHero helpHero = getHelpHero(subKey1, typeEnum.getPropertyId()); // 英雄不存在添加 if (helpHero != null && !strings.contains(helpHero.getHero().getId())){ - result.add(CBean2Proto.helpHeroProto(helpHero)); + result.add(CBean2Proto.buildHelpHeroToProto(helpHero)); } } return result; @@ -157,10 +157,11 @@ public class HelpHeroLogic { if (helpHero != null){ throw new ErrorCodeException(ErrorCode.SYS_ERROR_CODE,"已选择其他神将!"); } + HelpHero helpHeroForRedis = CBean2Proto.buildHelpHeroToRedis(user, hero); // 自己的助战列表添加 - addHelpHero(subKey,propertyName,CBean2Proto.heroToHelpHero(user,hero)); + addHelpHero(subKey,propertyName, helpHeroForRedis); // 类型助战列表添加,自己的助战列表没有该类型英雄,那么对应类型的助战列表也应该没有对应英雄,所以这里不再循环验证 - addHelpHero(String.valueOf(propertyName),user.getId(),CBean2Proto.heroToHelpHero(user,hero)); + addHelpHero(String.valueOf(propertyName),user.getId(), helpHeroForRedis); // 配置表,获取自己设置助战奖励 SCampTowerSetting campTowerSetting = STableManager.getConfig(SCampTowerSetting.class).get(1); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java index a4baf53b1..6447d7c10 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hero/HeroLogic.java @@ -1323,7 +1323,8 @@ public class HeroLogic { } else { user.getTeamPosManager().changeTeamInfo(teamId, heroIds); } - } else if (teamId == TeamEnum.TEAM_ARENA_DEFENSE.getTeamId()) { + } + else if (teamId == TeamEnum.TEAM_ARENA_DEFENSE.getTeamId()) { long teamForce = calTeamTotalForce(user, teamId); //更新竞技场防御编队战力 String key = RedisKey.getKey(RedisKey.AREDEF_TEAM_FORCE_RANK, ""); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java index 1430a42a0..d76e044f5 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java @@ -70,9 +70,8 @@ public class CBean2Proto { /** * - * @param item + * @param item 道具 * @param itemNum 道具数量,一般是增量,-1 表示全量 - * @return */ public static CommonProto.Item getItem(Item item,long itemNum){ if(itemNum == -1){ @@ -89,8 +88,6 @@ public class CBean2Proto { /** * 获取玩家头像框列表 - * @param user - * @return */ public static List getHeadFrameList(User user){ List headFrameLists = new ArrayList<>(); @@ -187,8 +184,6 @@ public class CBean2Proto { /** * 获取玩家皮肤列表 - * @param user - * @return */ public static List getUserMountList(User user) { List userMountLists = new ArrayList<>(); @@ -213,12 +208,11 @@ public class CBean2Proto { user.getPlayerInfoManager().setUserMountValidTime(validTime); return userMountLists; } - /* 获取已选择的助战列表 - * @param user - * @return - * @throws Exception + + /** + * 获取已选择的助战列表 */ - public static List getHelpFightList(User user) throws Exception { + public static List getHelpHeroList(User user) throws Exception { List lists = new ArrayList<>(); // 助战英雄列表 String subKey = HelpHeroLogic.subKey(user.getId(),HelpHeroLogic.CHOOSE); @@ -227,7 +221,7 @@ public class CBean2Proto { return lists; } for (HelpHero hero : helpHeroMap.values()) { - lists.add(helpHeroProto(hero)); + lists.add(buildHelpHeroToProto(hero)); } return lists; } @@ -253,32 +247,66 @@ public class CBean2Proto { /** * 助战,redis类型转proto */ - public static CommonProto.HelpFightList helpHeroProto(HelpHero helpHero) throws Exception { + public static CommonProto.HelpFightList buildHelpHeroToProto(HelpHero helpHero) throws Exception { User otherUser = UserManager.getUser(helpHero.getUid()); // 魂宝灵宝 List jewels = buildHelpFightEquip(helpHero.getJewels()); // 法相 List faxiang = buildHelpFightEquip(helpHero.getFaxiangs()); + Hero hero = helpHero.getHero(); // 装备详细信息 List equips = new ArrayList<>(); - Map equip = helpHero.getHero().getEquipByPositionMap(); - equip.values().forEach(v->equips.add(getEquipProto(v))); + hero.getEquipByPositionMap().values().forEach(v->equips.add(getEquipProto(v))); + // 法宝 + CommonProto.Equip baublesProto = getBaublesProto(helpHero.getBaublesList(), helpHero.getBaubles()); // 获取英雄信息 return CommonProto.HelpFightList.newBuilder() .setUid(otherUser.getId()) .setUserName(otherUser.getPlayerInfoManager().getNickName()) .setGuildName(helpHero.getHelpType()) .setTrailType(helpHero.getFunctionType().getPropertyId()) - .setHero(getHero(helpHero.getHero())) + .setHero(getHero(hero)) .setState(helpHero.getState()) .addAllJewels(jewels) .addAllFaxiang(faxiang) .setFourTotal(helpHero.getFourTotalTier()) .addAllEquips(equips) + .setBaubles(baublesProto) .build(); } - public static List clonePropertyItemList(EquipManager equipManager, Set infoList){ + /** + * 助战,hero对象转redis类型 + * 存入redis时调用 + */ + public static HelpHero buildHelpHeroToRedis(User user, Hero hero) { + // 获取神将类型 + HelpTypeEnum type = HelpTypeEnum.getType(hero.getPropertyId()); + // 英雄镜像 + EquipManager equipManager = user.getEquipManager(); + // 魂宝灵宝镜像 + List jewels = buildPropertyItemList(equipManager, hero.getJewelInfo()); + // 法相 + List faxiangs = buildPropertyItemList(equipManager, hero.getFaxiangList()); + // 结果返回,援助类型不在这里写 + HelpHero helpHero = new HelpHero(); + helpHero.setUid(user.getId()); + helpHero.setFunctionType(type); + helpHero.setCreatTime(TimeUtils.now()); + helpHero.setHero(hero); + helpHero.setState(0); + helpHero.setJewels(jewels); + helpHero.setFaxiangs(faxiangs); + helpHero.setFourTotalTier(user.getPlayerInfoManager().getFourChallengeTotal()); + helpHero.setBaubles(equipManager.getBaubles(hero.getBauBlesId())); + helpHero.setBaublesList(buildBaublesList(equipManager, hero.getBauBlesId())); + return helpHero; + } + + /** + * 克隆装备信息 + */ + public static List buildPropertyItemList(EquipManager equipManager, Set infoList){ List List = new ArrayList<>(); if (infoList == null || infoList.isEmpty()){ return List; @@ -286,38 +314,34 @@ public class CBean2Proto { for (String id: infoList){ PropertyItem item = equipManager.getEquip(id); if (item != null){ - List.add(item.clone()); + List.add(item); } } return List; } /** - * 助战,hero对象转redis类型 - * 存入redis时调用 + * 克隆装备信息 */ - public static HelpHero heroToHelpHero(User user,Hero hero) { - // 获取神将类型 - HelpTypeEnum type = HelpTypeEnum.getType(hero.getPropertyId()); - // 英雄镜像 - Hero heroVo = hero.clone(); - EquipManager equipManager = user.getEquipManager(); - // 魂宝灵宝镜像 - List jewels = clonePropertyItemList(equipManager, heroVo.getJewelInfo()); - // 法相 - List faxiangs = clonePropertyItemList(equipManager, heroVo.getFaxiangList()); - // 结果返回,援助类型不在这里写 - HelpHero helpHero = new HelpHero(); - helpHero.setUid(user.getId()); - helpHero.setFunctionType(type); - helpHero.setCreatTime(TimeUtils.now()); - helpHero.setHero(heroVo); - helpHero.setState(0); - helpHero.setJewels(jewels); - helpHero.setFaxiangs(faxiangs); - helpHero.setFourTotalTier(user.getPlayerInfoManager().getFourChallengeTotal()); - helpHero.setBaubles(equipManager.getBaubles(hero.getBauBlesId())); - return helpHero; + public static List buildBaublesList(EquipManager equipManager, String baublesId){ + List list = new ArrayList<>(); + // 当前法宝信息 + Baubles baublesEquip = equipManager.getBaubles(baublesId); + if (baublesEquip == null){ + return list; + } + // 庇佑信息 + Set blessList = baublesEquip.getBlessList(); + if (blessList != null && !blessList.isEmpty()){ + for (String id: blessList){ + Baubles item = equipManager.getBaubles(id); + if (item == null){ + continue; + } + list.add(item); + } + } + return list; } public static CommonProto.UserRank.Builder getOneUserRank(User everyUser, int function, com.ljsd.jieling.logic.dao.root.ArenaRecord arenaRecord){ @@ -332,6 +356,10 @@ public class CBean2Proto { .setFirstOrMini(function); } + /** + * 获取英雄信息 + * @param hero 英雄 + */ public static CommonProto.Hero getHero(Hero hero){ // 魂印 List soulPoss = new ArrayList<>(); @@ -500,6 +528,20 @@ public class CBean2Proto { return builder.build(); } + /** + * 获取法宝信息 + */ + public static CommonProto.Equip getBaublesProto(List baublesList, Baubles bauBles){ + CommonProto.Equip.Builder builder = getPropertyEquipProto(bauBles).toBuilder(); + if (baublesList != null && !baublesList.isEmpty()){ + for (Baubles baubles : baublesList) { + CommonProto.Equip equip = getPropertyEquipProto(baubles); + builder.addBless(equip); + } + } + return builder.build(); + } + public static CommonProto.PokemonInfo getPokemon(Pokemon pokemon) { return CommonProto.PokemonInfo.newBuilder() .setId(pokemon.getId()).setLevel(pokemon.getLevel()).setStar(pokemon.getStar()).setTempId(pokemon.getTmpId()) @@ -649,8 +691,8 @@ public class CBean2Proto { /** * 多对塔专用怪兽信息 - * @param tower - * @param indexId + * @param tower 多对塔怪兽表配置信息 + * @param indexId 位置 * @return */ @SuppressWarnings("StringBufferReplaceableByString") @@ -1073,9 +1115,9 @@ public class CBean2Proto { public static CommonProto.TeamSimpleInfo getSimpleTeamInfoByPokeMon(Pokemon pokemon,int position){ return CommonProto.TeamSimpleInfo.newBuilder().setHeroid(pokemon.getId()).setHeroTid(pokemon.getTmpId()).setLevel(pokemon.getLevel()).setStar(pokemon.getStar()).setPosition(position).build(); } - public static CommonProto.TeamSimpleInfo getSimpleTeamInfoByPokeMon( com.ljsd.jieling.thrift.idl.Pokemon pokemon,int position){ - return CommonProto.TeamSimpleInfo.newBuilder().setHeroid(pokemon.getId()).setHeroTid(pokemon.getTmpId()).setLevel(pokemon.getLevel()).setStar(pokemon.getStar()).setPosition(position).build(); - } +// public static CommonProto.TeamSimpleInfo getSimpleTeamInfoByPokeMon( com.ljsd.jieling.thrift.idl.Pokemon pokemon,int position){ +// return CommonProto.TeamSimpleInfo.newBuilder().setHeroid(pokemon.getId()).setHeroTid(pokemon.getTmpId()).setLevel(pokemon.getLevel()).setStar(pokemon.getStar()).setPosition(position).build(); +// } public static CommonProto.TeamSimpleInfo getSimpleTeamInfoByMagicSoldier(MagicSoldier soldier){ return CommonProto.TeamSimpleInfo.newBuilder() .setHeroid(soldier.getId()) diff --git a/tablemanager/src/main/java/manager/STableManager.java b/tablemanager/src/main/java/manager/STableManager.java index aee6166cc..0f521ec9e 100644 --- a/tablemanager/src/main/java/manager/STableManager.java +++ b/tablemanager/src/main/java/manager/STableManager.java @@ -226,7 +226,7 @@ public class STableManager { try { dealParams(clazz, map, key, type, obj, prarms); }catch (Exception e){ - LOGGER.error("clazz = [" + clazz + "], line = [" + line.substring(0,10) + "]"+prarms.toString() ); + LOGGER.warn("clazz = [" + clazz + "], line = [" + line.substring(0,10) + "]"+ Arrays.toString(prarms)); throw e; } break; From 1b9cbd6f2515b30a101ed090e0e1106769593b5a Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Fri, 29 Dec 2023 15:30:23 +0800 Subject: [PATCH 30/32] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8A=A9=E6=88=98?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BC=82=E5=B8=B8bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/ljsd/jieling/util/CBean2Proto.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java index d76e044f5..5bb50eb20 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java @@ -253,12 +253,15 @@ public class CBean2Proto { List jewels = buildHelpFightEquip(helpHero.getJewels()); // 法相 List faxiang = buildHelpFightEquip(helpHero.getFaxiangs()); - Hero hero = helpHero.getHero(); // 装备详细信息 + Hero hero = helpHero.getHero(); List equips = new ArrayList<>(); hero.getEquipByPositionMap().values().forEach(v->equips.add(getEquipProto(v))); // 法宝 - CommonProto.Equip baublesProto = getBaublesProto(helpHero.getBaublesList(), helpHero.getBaubles()); + CommonProto.Equip.Builder baublesProto = null; + if (helpHero.getBaubles() != null){ + baublesProto = getBaublesProto(helpHero.getBaublesList(), helpHero.getBaubles()).toBuilder(); + } // 获取英雄信息 return CommonProto.HelpFightList.newBuilder() .setUid(otherUser.getId()) From 8c3ba7947107ac21a7c604fcf9e323adc84a4540 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Fri, 29 Dec 2023 15:44:41 +0800 Subject: [PATCH 31/32] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=8A=A9=E6=88=98?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BC=82=E5=B8=B8bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/ljsd/jieling/util/CBean2Proto.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java index 5bb50eb20..f1adf8b73 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/CBean2Proto.java @@ -258,7 +258,7 @@ public class CBean2Proto { List equips = new ArrayList<>(); hero.getEquipByPositionMap().values().forEach(v->equips.add(getEquipProto(v))); // 法宝 - CommonProto.Equip.Builder baublesProto = null; + CommonProto.Equip.Builder baublesProto = CommonProto.Equip.newBuilder(); if (helpHero.getBaubles() != null){ baublesProto = getBaublesProto(helpHero.getBaublesList(), helpHero.getBaubles()).toBuilder(); } From 4806c9d71e5d9a1f635ec0d92dab33b482e7b247 Mon Sep 17 00:00:00 2001 From: grimm <1769111741@qq.com> Date: Fri, 29 Dec 2023 17:39:49 +0800 Subject: [PATCH 32/32] =?UTF-8?q?=E6=B3=95=E5=AE=9D=E9=99=90=E5=88=B6?= =?UTF-8?q?=E7=AD=89=E7=BA=A7=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/gtw/GetWorldArenaInfoRequestHandler.java | 3 +++ .../java/com/ljsd/jieling/logic/GlobalDataManaager.java | 2 +- .../main/java/com/ljsd/jieling/logic/equip/EquipLogic.java | 7 ++++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java index 0a1094d28..da79ef302 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java @@ -52,6 +52,9 @@ public class GetWorldArenaInfoRequestHandler extends BaseHandler setting.getRestTime()[0] && diff < setting.getRestTime()[1]) { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java index 1b55d95ce..35fb0e766 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobalDataManaager.java @@ -98,7 +98,7 @@ public class GlobalDataManaager implements IManager { public TimeControllerOfFunction getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum functionIdEnum){ Map sGlobalSystemConfigMap = STableManager.getConfig(SGlobalSystemConfig.class); for(Map.Entry item : openTimeOfFuntionCache.entrySet()){ - SGlobalSystemConfig sGlobalSystemConfig = sGlobalSystemConfigMap.get(item.getKey()); + SGlobalSystemConfig sGlobalSystemConfig = sGlobalSystemConfigMap.get(item.getKey()); if(sGlobalSystemConfig.getIsIDdSame() == functionIdEnum.getFunctionType()){ return item.getValue(); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java index 1e073c92c..190c12869 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/equip/EquipLogic.java @@ -716,12 +716,13 @@ public class EquipLogic { int nowLv = baubles.getLevel(); int tgLv = nowLv + upLv; - Map talismanaMap = SEquipTalismana.equipTalismanaStarMap.get(baubles.getEquipId()); - SEquipTalismana equipTalismana = talismanaMap.get(tgLv); - if (equipTalismana == null){ + + int limit = SSpecialConfig.getIntegerValue("EquipTalismanaUpperLimit"); + if (tgLv > limit){ throw new ErrorCodeException(ErrorCode.LEVE_MAX, "法宝已到达最大等级:"+tgLv); } + Map talismanaMap = SEquipTalismana.equipTalismanaStarMap.get(baubles.getEquipId()); HashMap costItemMap = new HashMap<>(); int count = 0; for (int i = 0; i < upLv; i++) {