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 385e46206..570e790f7 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 @@ -171,6 +171,14 @@ public class StartHardStageRequestHandler extends BaseHandler0 ){ + user.getUserMissionManager().onGameEvent(user, GameEvent.HARSTAGE_NODE,bigStageNumber); + } + } } } //排行榜章节 @@ -186,7 +194,6 @@ public class StartHardStageRequestHandler extends BaseHandler configMap; private static Map> preConfigMap; private static Map> chapterNodeMapConfig;//<章节id,<节点id,数据>> + private static Map bigMap;//<表id,第几个大关卡> @@ -52,6 +55,7 @@ public class SHardStage implements BaseConfig { Map tempConfig = STableManager.getConfig(SHardStage.class); Map> tempPreConfigMap = new HashMap<>(); Map> chapterNodeMap = new HashMap>(); + Map bmap = new HashMap<>(); for (SHardStage stage : tempConfig.values()) { if (stage.getNextLevel() > 0) { if (tempPreConfigMap.containsKey(stage.getNextLevel())) { @@ -66,11 +70,16 @@ public class SHardStage implements BaseConfig { Map chapterMap = chapterNodeMap.computeIfAbsent(stage.getChapter(),k-> new HashMap()); chapterMap.computeIfAbsent(stage.getSection(),k ->stage); + if(!bmap.containsKey(stage.getId())&& stage.getBigStageNumber()!=0){ + bmap.put(stage.getId(),stage.getBigStageNumber()); + } + } if (null == configMap) { configMap = tempConfig; preConfigMap = tempPreConfigMap; chapterNodeMapConfig = chapterNodeMap; + bigMap = bmap; } } @@ -148,7 +157,15 @@ public class SHardStage implements BaseConfig { return preConfigMap.get(id); } - public static int getStageIdByChapterAndSection(int chapter,int section){ + public int getBigStageNumber() { + return bigStageNumber; + } + + public void setBigStageNumber(int bigStageNumber) { + this.bigStageNumber = bigStageNumber; + } + + public static int getStageIdByChapterAndSection(int chapter, int section){ if(chapterNodeMapConfig.containsKey(chapter)){ if(chapterNodeMapConfig.get(chapter).containsKey(section)){ return chapterNodeMapConfig.get(chapter).get(section).getId(); @@ -156,4 +173,10 @@ public class SHardStage implements BaseConfig { } return 0; } + public static int getBigStageNumberById(int id){ + if(bigMap.containsKey(id)){ + return bigMap.get(id); + } + return 0; + } } \ No newline at end of file