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 d0f5527be..ce02a3ba7 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/GetPlayerInfoHandler.java @@ -161,6 +161,7 @@ public class GetPlayerInfoHandler extends BaseHandler{ .setPlayerBindPhone(playerBindPhone) .setQuestionState(questState) .setSoulEquipPool(equipPool) + .addAllPlayedMapTypes(mapManager.getPlayedMapType()) .build(); try { MessageUtil.sendMessage(iSession, 1, MessageTypeProto.MessageType.GET_PLAYERINFO_RESPONSE_VALUE, getPlayerInfoResponse, true); 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 fe5b6b831..127bad531 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 @@ -120,6 +120,9 @@ public class MapLogic { SChallengeConfig sChallengeConfig = SChallengeConfig.sChallengeConfigs.get(mapId); int type = sChallengeConfig.getType(); if (mapManager.getCurMapId() == 0) { + if(!mapManager.getPlayedMapType().contains(type)){ + mapManager.addPlayedMapType(type); + } SChallengeMapConfig sChallengeMapConfig = STableManager.getConfig(SChallengeMapConfig.class).get(mapId); mapEnterResponse.setCurXY(CellUtil.xy2Pos(sChallengeMapConfig.getPosition()[0],sChallengeMapConfig.getPosition()[1])); Map scMap = SCMap.sCMap.get(mapId); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapManager.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapManager.java index 769cad6c3..56a75a8bf 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/MapManager.java @@ -17,10 +17,7 @@ import config.SVipLevelConfig; import manager.STableManager; import util.TimeUtils; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.Set; +import java.util.*; public class MapManager extends MongoBase { @@ -120,6 +117,8 @@ public class MapManager extends MongoBase { private int lastMonsterAttack =1;//兽潮来袭波数 + private Set playedMapType; + public MapManager() { this.setRootCollection(User._COLLECTION_NAME); } @@ -792,6 +791,15 @@ public class MapManager extends MongoBase { endlessMapInfo.setSkipFight(type); updateString("endlessMapInfo.skipFight",type); } + + public Set getPlayedMapType() { + return playedMapType; + } + + public void addPlayedMapType(int type){ + playedMapType.add(type); + updateString("playedMapType",playedMapType); + } }