From 84ce7b9a1b1f61296b4778168f0b65576e8885da Mon Sep 17 00:00:00 2001 From: xuexinpeng Date: Thu, 17 Jun 2021 15:00:08 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B1=B1=E6=B2=B3=E7=A4=BE=E7=A8=B7=E8=AF=A5?= =?UTF-8?q?=E8=A1=A8=E5=AE=B9=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../logic/hardStage/HardStageLogic.java | 34 ++++++++++++++----- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageLogic.java index 8148b07b1..14e4b5eaf 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/hardStage/HardStageLogic.java @@ -9,10 +9,8 @@ import com.ljsd.jieling.logic.dao.root.User; import com.ljsd.jieling.logic.fight.specialparm.SpecialForTeamBuildEnum; import com.ljsd.jieling.logic.hero.HeroLogic; import com.ljsd.jieling.network.session.ISession; -import com.ljsd.jieling.util.ItemMap; import com.ljsd.jieling.util.ItemUtil; import com.ljsd.jieling.util.MessageUtil; -import com.sun.codemodel.internal.JForEach; import config.*; import org.assertj.core.util.Lists; import org.slf4j.Logger; @@ -22,12 +20,8 @@ import rpc.protocols.MessageTypeProto; import rpc.protocols.PlayerInfoProto; import util.StringUtil; -import javax.swing.text.StyledEditorKit; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Arrays; -import java.util.stream.Stream; +import java.util.*; +import java.util.stream.Collectors; public class HardStageLogic { @@ -47,6 +41,30 @@ public class HardStageLogic { CommonProto.HardStageInfo.Builder builder = CommonProto.HardStageInfo.newBuilder(); int needSaveChapterId = 0; int needSaveStarNum = 0; + //对策划改表的容错 + //int maxChapter = map.keySet().stream().mapToInt(Integer::intValue).max().getAsInt(); + OptionalInt maxChapter = map.keySet().stream().mapToInt(Integer::intValue).max(); + if(maxChapter.isPresent()){ + if(map.containsKey(maxChapter.getAsInt())){ + int maxId = map.get(maxChapter.getAsInt()).getNodeList().stream().mapToInt(n->n.getId()).max().getAsInt(); + + if(map.get(maxChapter.getAsInt()).getNodeList().stream().filter(n -> n.getId()== maxId&& n.isHasPass()==true).collect(Collectors.toList()).size()>0){ + SHardStage config = SHardStage.getConfigMap().get(maxId); + if(config != null){ + if (SHardStage.getPreList(config.getId()) != null) { + SHardStage.getPreList(config.getId()).stream().forEach(n -> { + if (n != null) { + if(user.getHardStageManager().openNewNode(user.getPlayerInfoManager().getLevel(), n)){ + user.getHardStageManager().updateString("chapterMap." + maxChapter.getAsInt(), map.get(maxChapter.getAsInt())); + } + } + }); + } + } + } + } + } + for (Map.Entry entry : map.entrySet()) { //章节信息 CommonProto.HardStageChapter.Builder chapterBuilder = CommonProto.HardStageChapter.newBuilder();