From 0d13709c18276721fa86759aa143f31f22404724 Mon Sep 17 00:00:00 2001 From: xuexinpeng Date: Thu, 5 May 2022 17:31:42 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=B1=B1=E6=B2=B3=E7=A4=BE=E7=A8=B7?= =?UTF-8?q?=E5=9B=BE=E5=88=86=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/handler/GameGM/GMRequestHandler.java | 2 +- .../hardStage/HardStageInfoRequestHandler.java | 11 ++++++++++- .../hardStage/StartHardStageRequestHandler.java | 3 ++- .../ljsd/jieling/logic/GlobalDataManaager.java | 2 +- .../jieling/logic/hardStage/HardStageLogic.java | 15 ++++++++------- 5 files changed, 22 insertions(+), 11 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/GameGM/GMRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/GameGM/GMRequestHandler.java index 038e226d6..8f63c3150 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GameGM/GMRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GameGM/GMRequestHandler.java @@ -469,7 +469,7 @@ public class GMRequestHandler extends BaseHandler{ //通关山河社稷图特定关卡的之前所有关卡 int id = prarm1; HardStageLogic.test(cUser,id); - HardStageLogic.sendHardStageIndication(cUser); + HardStageLogic.sendHardStageIndication(cUser,1); break; case GlobalGm.FOUR_SPIRITS: //四灵试炼跳关 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/HardStageInfoRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/HardStageInfoRequestHandler.java index dfc49719f..f3a2f7b50 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/HardStageInfoRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/HardStageInfoRequestHandler.java @@ -3,6 +3,7 @@ package com.ljsd.jieling.handler.hardStage; import com.ljsd.jieling.handler.BaseHandler; import com.ljsd.jieling.logic.dao.UserManager; import com.ljsd.jieling.logic.dao.root.User; +import com.ljsd.jieling.logic.hardStage.HardStageChapter; import com.ljsd.jieling.logic.hardStage.HardStageLogic; import com.ljsd.jieling.network.session.ISession; import com.ljsd.jieling.util.MessageUtil; @@ -11,6 +12,9 @@ import rpc.protocols.CommonProto; import rpc.protocols.MessageTypeProto; import rpc.protocols.PlayerInfoProto; +import java.util.Comparator; +import java.util.Map; + @Component public class HardStageInfoRequestHandler extends BaseHandler { @@ -21,11 +25,16 @@ public class HardStageInfoRequestHandler extends BaseHandler map = user.getHardStageManager().getChapterMap(user); + int maxChapter = map.keySet().stream().max(Comparator.comparing(Integer::intValue)).orElse(0); + int page = maxChapter%10 == 0? maxChapter/10:maxChapter/10+1; + response.setIsEnd(proto.getPage()>=page?1:0); MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.HARD_STAGE_INFO_RESPONSE.getNumber(), response.build(), true); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/StartHardStageRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/StartHardStageRequestHandler.java index ddd636535..b93c7b9fa 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/StartHardStageRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/hardStage/StartHardStageRequestHandler.java @@ -59,6 +59,7 @@ public class StartHardStageRequestHandler extends BaseHandler dropList = new ArrayList(); SHardStage nodeConfig = SHardStage.getConfigMap().get(nodeId); + int page = nodeConfig.getChapter()%10 == 0? nodeConfig.getChapter()/10:nodeConfig.getChapter()/10+1; Map chapterMap = user.getHardStageManager().getChapterMap(user); if (!chapterMap.containsKey(nodeConfig.getChapter()) ||chapterMap.get(nodeConfig.getChapter()).getNode(nodeId) == null) { //上一个节点 @@ -244,7 +245,7 @@ public class StartHardStageRequestHandler extends BaseHandler()); // 道具刷新 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 36d2755c9..1d55dd859 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 @@ -45,7 +45,7 @@ public class HardStageLogic { /** * 获取山河社稷图信息 */ - public static CommonProto.HardStageInfo.Builder getInfo(User user) throws Exception { + public static CommonProto.HardStageInfo.Builder getInfo(User user,int page) throws Exception { Map map = user.getHardStageManager().getChapterMap(user); CommonProto.HardStageInfo.Builder builder = CommonProto.HardStageInfo.newBuilder(); int needSaveChapterId = 0; @@ -73,8 +73,8 @@ public class HardStageLogic { } } } - - for (Map.Entry entry : map.entrySet()) { + int start = (page - 1) * 10, end = page * 10 ; + for (Map.Entry entry : map.entrySet().stream().filter(n->n.getKey()> start&&n.getKey()<=end).collect(Collectors.toList())) { //章节信息 CommonProto.HardStageChapter.Builder chapterBuilder = CommonProto.HardStageChapter.newBuilder(); int starNums =0;//章节星星数检测 章节星星总数和所有小节的星星累加的总数 比较 @@ -303,7 +303,8 @@ public class HardStageLogic { } } - sendHardStageIndication(user); + //int page = nodeConfig.getChapter()%10 == 0? nodeConfig.getChapter()/10:nodeConfig.getChapter()/10+1; + //sendHardStageIndication(user,page); return star; } public static void updateChapterAndNodeLevel(User user, SHardStage nodeConfig ){ @@ -352,8 +353,8 @@ public class HardStageLogic { return false; } - public static void sendHardStageIndication(User user) throws Exception { - CommonProto.HardStageInfo.Builder info = getInfo(user); + public static void sendHardStageIndication(User user,int page) throws Exception { + CommonProto.HardStageInfo.Builder info = getInfo(user,page); PlayerInfoProto.HardStageResponse.Builder response = PlayerInfoProto.HardStageResponse.newBuilder(); response.setInfo(info); response.setIsTake(user.getHardStageManager().isTakeReward()); @@ -393,7 +394,7 @@ public class HardStageLogic { user.getHardStageManager().setNoOpenId(noOpenId); needDel.clear(); } - sendHardStageIndication(user); + //sendHardStageIndication(user); } /** From e7659a1b08611c2819d3875148b4c8d85e88a453 Mon Sep 17 00:00:00 2001 From: duhui Date: Sat, 7 May 2022 13:31:13 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E7=88=B1=E7=8E=A9=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E4=B8=8A=E6=8A=A5=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ljsd/jieling/logic/AiWanPlayerInfoUpload.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/AiWanPlayerInfoUpload.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/AiWanPlayerInfoUpload.java index c807e4f29..14a00dbd7 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/AiWanPlayerInfoUpload.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/AiWanPlayerInfoUpload.java @@ -55,7 +55,7 @@ public class AiWanPlayerInfoUpload { return; } PlayerManager playerInfoManager = user.getPlayerInfoManager(); - int force = HeroLogic.getInstance().calTeamTotalForce(user, TeamEnum.FORMATION_NORMAL.getTeamId(), false); + int force = user.getTeamPosManager().getTeamForceMap().getOrDefault(TeamEnum.FORMATION_NORMAL.getTeamId(),0L).intValue(); int nowInt = TimeUtils.nowInt(); SortedMap extMap = new TreeMap<>(); extMap.put("power",force);