From 979348dde13144d0d51f29e935e4bc22e605b43a Mon Sep 17 00:00:00 2001 From: lvxinran Date: Mon, 8 Jun 2020 15:41:23 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=81=E7=BB=9D=E9=98=B5=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E5=88=A4=E6=96=AD=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jieling/logic/family/DeathPathLogic.java | 53 ++++++++++++------- 1 file changed, 35 insertions(+), 18 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/DeathPathLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/DeathPathLogic.java index 1be31eea2..2994afd82 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/family/DeathPathLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/family/DeathPathLogic.java @@ -62,6 +62,9 @@ public class DeathPathLogic { private int overTime; + //第一次开启时间 + private long firstStartTime; + private static final Logger LOGGER = LoggerFactory.getLogger(DeathPathLogic.class); private Thread taskExecutor = null; @@ -111,29 +114,15 @@ public class DeathPathLogic { if(guildWarTime==null){ guildWarTime = SGuildSetting.sGuildSetting.getGuildWarTime(); } + //功能是否开启 TimeControllerOfFunction timeControllerOfFunction = GlobalDataManaager.getInstance().getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum.DeathPath); if(timeControllerOfFunction==null){ status = -1; return; } - //第一次开启时间判断 - long firstStartTime = TimeUtils.getLastOrUnderHour(timeControllerOfFunction.getStartTime(), guildWarTime[0][0], guildWarTime[0][1], false); - if(setting[0]==2&&guildWarOpenTime!=null) { - - int dayOfWeek = TimeUtils.getDayOfWeek(firstStartTime); - if(dayOfWeek==0){ - dayOfWeek=7; - } - //判断时间,防止死循环加入break - int tempDayOfWeek = dayOfWeek; - while(guildWarOpenTime[tempDayOfWeek]==0){ - //往后推移时间,计算下次开启 - tempDayOfWeek=tempDayOfWeek==7?1:tempDayOfWeek+1; - firstStartTime+=firstStartTime+TimeUtils.DAY; - if(tempDayOfWeek==dayOfWeek){ - break; - } - } + //如果为零计算一下第一次开启时间 + if(firstStartTime==0){ + calFirstStartTime(setting[0],timeControllerOfFunction); } if(TimeUtils.now()