diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java index 78f5e14b0..43589d0e4 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaInfoRequestHandler.java @@ -44,24 +44,34 @@ public class GetWorldArenaInfoRequestHandler extends BaseHandler setting.getRestTime()[0] && diff < setting.getRestTime()[1]) { + //多加1分钟 周期间隔后 client再发起请求 + builder.setEndTime((int)(timeControllerOfFunction.getStartTime()/1000+setting.getRestTime()[1])+61); + } else if (diff > setting.getBattleTime()[0] && diff < setting.getBattleTime()[1]) { + builder.setEndTime((int)(timeControllerOfFunction.getStartTime()/1000+setting.getBattleTime()[1])+10); + } else { + MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.GetWorldArenaInfoResponse.getNumber(),builder.build(),true); + return; + } + long before = TimeUtils.stringToTimeLong2(GameApplication.serverConfig.getOpenTime()); long week = TimeUtils.AfterTimeByWeek(before, TimeUtils.now()); builder.setIsStart((int) week); + SGlobalSystemConfig sGlobalSystemConfig = STableManager.getConfig(SGlobalSystemConfig.class).get(FunctionIdEnum.World_Arena.getFunctionType()); if (!GlobleSystemLogic.checkOpen(UserManager.getUser(iSession.getUid()),sGlobalSystemConfig)) { MessageUtil.sendMessage(iSession,1, MessageTypeProto.MessageType.GetWorldArenaInfoResponse.getNumber(),builder.build(),true); return; } - TimeControllerOfFunction timeControllerOfFunction = GlobalDataManaager.getInstance().getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum.World_Arena); - long diff = (System.currentTimeMillis() - timeControllerOfFunction.getStartTime())/1000; if(diff>setting.getRestTime()[0]&&diff setting.getRestTime()[0] && diff < setting.getRestTime()[1]) { - //多加1分钟 周期间隔后 client再发起请求 - builder.setEndTime((int)(timeControllerOfFunction.getStartTime()/1000+setting.getRestTime()[1])+61); - } else if (diff > setting.getBattleTime()[0] && diff < setting.getBattleTime()[1]) { - builder.setEndTime((int)(timeControllerOfFunction.getStartTime()/1000+setting.getBattleTime()[1])+10); - } else { - throw new ErrorCodeException(ErrorCode.ACTIVITY_NOT_OPEN); - } if (!ArenaWorldLogic.checkJoin(String.valueOf(iSession.getUid()))) { builder.setEnterable(-1); }