十绝阵时间bug修改

back_recharge
lvxinran 2020-06-05 10:13:42 +08:00
parent ea7f866fbe
commit f60bca059e
1 changed files with 38 additions and 19 deletions

View File

@ -88,32 +88,51 @@ public class DeathPathLogic {
private void doCheck(){ private void doCheck(){
//初始化字段
int[] setting = SGuildSetting.sGuildSetting.getGuildWarOpenTime();
if(guildWarOpenTime==null) {
guildWarOpenTime = new int[8];
//判断开启类型
if(setting[0]==2){
for(int i = 1;i<setting.length;i++){
guildWarOpenTime[setting[i]]= 1;
if(setting[i]!=7){
guildWarOpenTime[setting[i]+1]= -1;
}else{
guildWarOpenTime[1] = -1;
}
}
} else {
for(int i = 0 ; i<guildWarOpenTime.length;i++){
guildWarOpenTime[i] = 1;
}
}
}
if(guildWarTime==null){
guildWarTime = SGuildSetting.sGuildSetting.getGuildWarTime();
}
TimeControllerOfFunction timeControllerOfFunction = GlobalDataManaager.getInstance().getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum.DeathPath); TimeControllerOfFunction timeControllerOfFunction = GlobalDataManaager.getInstance().getTimeControllerOfFunctionByFunctinoType(FunctionIdEnum.DeathPath);
if(timeControllerOfFunction==null){ if(timeControllerOfFunction==null){
status = -1; status = -1;
return; return;
} }
if(guildWarOpenTime==null){ //第一次开启时间判断
guildWarOpenTime = new int[8]; long firstStartTime = TimeUtils.getLastOrUnderHour(timeControllerOfFunction.getStartTime(), guildWarTime[0][0], guildWarTime[0][1], false);
int[] setting = SGuildSetting.sGuildSetting.getGuildWarOpenTime(); if(setting[0]==2&&guildWarOpenTime!=null) {
if(setting[0]==2){
for(int i = 1;i<setting.length;i++){ int dayOfWeek = TimeUtils.getDayOfWeek(firstStartTime);
guildWarOpenTime[setting[i]]= 1; while(guildWarOpenTime[dayOfWeek]==0){
if(setting[i]!=7){ if(dayOfWeek==0){
guildWarOpenTime[setting[i]+1]= -1; dayOfWeek=7;
}else{ }
guildWarOpenTime[1] = -1; firstStartTime+=firstStartTime+TimeUtils.DAY;
} }
}
} else {
for(int i = 0 ; i<guildWarOpenTime.length;i++){
guildWarOpenTime[i] = 1;
}
}
} }
if(guildWarTime==null){ if(TimeUtils.now()<firstStartTime){
guildWarTime = SGuildSetting.sGuildSetting.getGuildWarTime(); status = -1;
return;
} }
isOpen(); isOpen();
} }