diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EndlessMapInfo.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EndlessMapInfo.java index 36b1ab850..46cbd9257 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EndlessMapInfo.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/EndlessMapInfo.java @@ -26,6 +26,8 @@ public class EndlessMapInfo { private Map mapInfo = new HashMap<>(); + private int skipFight; + private int season; @@ -126,4 +128,12 @@ public class EndlessMapInfo { public void setSeason(int season) { this.season = season; } + + public int getSkipFight() { + return skipFight; + } + + public void setSkipFight(int skipFight) { + this.skipFight = skipFight; + } } 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 37b5af192..8088f794f 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 @@ -3128,7 +3128,7 @@ public class MapLogic { // // user.getTeamPosManager().updateTeamPosByTeamId(401,team); // } - + response.setSkipFight(endlessMapInfo.getSkipFight()); MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); } @@ -3387,4 +3387,14 @@ public class MapLogic { } } + /** + * 设置无尽副本是否跳过战斗 + * @param session + * @param type + * @param messageType + */ + public void setEndlessSkipType(ISession session, int type, MessageTypeProto.MessageType messageType) throws Exception { + UserManager.getUser(session.getUid()).getMapManager().updateEndlessSkipFight(type); + MessageUtil.sendMessage(session,1,messageType.getNumber(),null,true); + } } 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 976a31156..01eb1e989 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 @@ -780,6 +780,10 @@ public class MapManager extends MongoBase { endlessMapInfo.setSeason(season); updateString("endlessMapInfo.season",season); } + public void updateEndlessSkipFight(int type){ + endlessMapInfo.setSkipFight(type); + updateString("endlessMapInfo.skipFight",type); + } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/map/mapHandler/EndlessSetSkipFightHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/mapHandler/EndlessSetSkipFightHandler.java new file mode 100644 index 000000000..7e939cf03 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/map/mapHandler/EndlessSetSkipFightHandler.java @@ -0,0 +1,22 @@ +package com.ljsd.jieling.handler.map.mapHandler; + +import com.ljsd.jieling.handler.BaseHandler; +import com.ljsd.jieling.handler.map.MapLogic; +import com.ljsd.jieling.netty.cocdex.PacketNetData; +import com.ljsd.jieling.network.session.ISession; +import com.ljsd.jieling.protocols.MapInfoProto; +import com.ljsd.jieling.protocols.MessageTypeProto; +import org.springframework.stereotype.Component; + +@Component +public class EndlessSetSkipFightHandler extends BaseHandler { + @Override + public MessageTypeProto.MessageType getMessageCode() { + return MessageTypeProto.MessageType.ENDLESS_SET_SKIPFIGHT_REQUEST; + } + + @Override + public void processWithProto(ISession iSession, MapInfoProto.EndlessSetSkipRequest proto) throws Exception { + MapLogic.getInstance().setEndlessSkipType(iSession,proto.getType(), MessageTypeProto.MessageType.ENDLESS_SET_SKIPFIGHT_RESPONSE); + } +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/blood/BloodLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/blood/BloodLogic.java index 3d5dbcc04..6e17c3819 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/blood/BloodLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/blood/BloodLogic.java @@ -135,7 +135,7 @@ public class BloodLogic { .build(); response.addInfos(info); } - int myRank= RedisUtil.getInstence().getZSetreverseRank(RedisKey.BLOODY_RANK,"",Integer.toString(session.getUid())).intValue(); + int myRank= RedisUtil.getInstence().getZSetreverseRank(RedisKey.BLOODY_RANK,"1",Integer.toString(session.getUid())).intValue(); response.setMyRank(myRank); MessageUtil.sendMessage(session,1,messageType.getNumber(),response.build(),true); } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/WorkShopLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/WorkShopLogic.java index 0409a7a29..613a87491 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/item/WorkShopLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/item/WorkShopLogic.java @@ -54,8 +54,9 @@ public class WorkShopLogic { return; } int limits = sWorkShopTechnology.getLimits(); - int workShopLevel = workShopController.getWorkShopLevel(); - if(workShopLevel