diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EventType.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EventType.java index 08c864601..460415685 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EventType.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EventType.java @@ -76,6 +76,7 @@ public class EventType { public static final int monitorMissionAndMove = 19; public static final int destroyPointAnd = 20; + public static final int twentyFour = 24; public static final int twentyFive = 25; public static final int openAppointMission = 26; public static final int openNotDoMission = 27; 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 1416949a2..9aba0d6d3 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 @@ -104,9 +104,9 @@ public class MapLogic { if (scMap == null) { return; } - if (mapId > mapManager.getCurMapId()) { - return; - } +// if (mapId > mapManager.getMaxMapId()) { +// return; +// } // SCMapConfig scMapConfig = SCMapConfig.getsCMapSize().get(mapId); // if (energy < scMapConfig.getEnergyConfused()) { // LOGGER.info("enterMap() uid=>{} energy=>{} need=>{} energy not enough ", uid, energy, scMapConfig.getEnergyConfused()); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/TwentyFourBehavior.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/TwentyFourBehavior.java new file mode 100644 index 000000000..4b6ececf8 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/behavior/TwentyFourBehavior.java @@ -0,0 +1,28 @@ +package com.ljsd.jieling.handler.map.behavior; + +import com.ljsd.jieling.handler.map.Cell; +import com.ljsd.jieling.handler.map.EventType; +import com.ljsd.jieling.logic.dao.root.User; +import com.ljsd.jieling.protocols.MapInfoProto; +import org.springframework.stereotype.Component; + +import java.util.Map; + +@Component +public class TwentyFourBehavior extends BaseBehavior { + @Override + public int getBehaviorType() { + return EventType.twentyFour; + } + + @Override + public boolean process(User user, int[][] behaviorTypeValues, MapInfoProto.EventUpdateResponse.Builder eventUpdateResponse) throws Exception { + Map mapInfos = user.getMapManager().getMapInfo(); + for (Cell cell : mapInfos.values()) { + if (cell.getPointId() == behaviorTypeValues[0][0]) { + cell.setEventId(behaviorTypeValues[0][1]); + } + } + return true; + } +}