【逐胜之巅优化】功能改为在开服指定天数后开启

back_recharge
xuexinpeng 2021-07-31 10:56:29 +08:00
parent a552dabd2c
commit 744a0d4e5b
2 changed files with 49 additions and 22 deletions

View File

@ -44,6 +44,7 @@ import com.ljsd.jieling.netty.cocdex.Tea;
import com.ljsd.jieling.network.server.ProtocolsManager;
import com.ljsd.jieling.network.session.ISession;
import com.ljsd.jieling.thread.task.RPCWorldServerTask;
import config.SSpecialConfig;
import rpc.protocols.CommonProto;
import rpc.protocols.MessageTypeProto;
import rpc.protocols.PlayerInfoProto;
@ -118,14 +119,16 @@ public class GlobalDataManaager implements IManager {
continue;
}
//开服几天后开启
int[]limitDay = sGlobalSystemConfig.getIfOpen();
if(limitDay.length>0 && limitDay != null){
if( limitDay[0] == 2 ){
//此时是开服第几天
long day = TimeUtils.getGapDaysByTwoTime(GameApplication.serverConfig.getOpenTime(),TimeUtils.getTimeStamp2(TimeUtils.now()))+1;
if(day < limitDay[1]){
closeList.add(id);
continue;
if(getServerOpenTimeCompareSpecialTimeResult()){
int[]limitDay = sGlobalSystemConfig.getIfOpen();
if(limitDay.length>0 && limitDay != null){
if( limitDay[0] == 2 ){
//此时是开服第几天
long day = TimeUtils.getGapDaysByTwoTime(GameApplication.serverConfig.getOpenTime(),TimeUtils.getTimeStamp2(TimeUtils.now()))+1;
if(day < limitDay[1]){
closeList.add(id);
continue;
}
}
}
}
@ -149,13 +152,14 @@ public class GlobalDataManaager implements IManager {
long mod = passTims % (diffTime + seasonInterval); // 每个周期的时间+间隔时间
if(mod < diffTime ){//新的周期开启 一轮周期的时间
//开服几天后开启
int[]limitDay = sGlobalSystemConfig.getIfOpen();
if(limitDay.length>0 && limitDay != null){
if( limitDay[0] == 2 ){
//此时是开服第几天
long day = TimeUtils.getGapDaysByTwoTime(GameApplication.serverConfig.getOpenTime(),TimeUtils.getTimeStamp2(TimeUtils.now()))+1;
if(day < limitDay[1]){
continue;
if(getServerOpenTimeCompareSpecialTimeResult()){
int[]limitDay = sGlobalSystemConfig.getIfOpen();
if(limitDay.length>0 && limitDay != null){
if( limitDay[0] == 2 ){
long day = TimeUtils.getGapDaysByTwoTime(GameApplication.serverConfig.getOpenTime(),TimeUtils.getTimeStamp2(TimeUtils.now()))+1;
if(day < limitDay[1]){
continue;
}
}
}
}
@ -326,13 +330,15 @@ public class GlobalDataManaager implements IManager {
long passTims = now - seasonOpenLong;
if(passTims>0){
//开服几天后开启
int[]limitDay = sGlobalSystemConfig.getIfOpen();
if(limitDay.length>0 && limitDay != null){
if( limitDay[0] == 2 ){
//此时是开服第几天
long day = TimeUtils.getGapDaysByTwoTime(GameApplication.serverConfig.getOpenTime(),TimeUtils.getTimeStamp2(TimeUtils.now()))+1;
if(day < limitDay[1]){
continue;
if(getServerOpenTimeCompareSpecialTimeResult()){
int[]limitDay = sGlobalSystemConfig.getIfOpen();
if(limitDay.length>0 && limitDay != null){
if( limitDay[0] == 2 ){
//此时是开服第几天
long day = TimeUtils.getGapDaysByTwoTime(GameApplication.serverConfig.getOpenTime(),TimeUtils.getTimeStamp2(TimeUtils.now()))+1;
if(day < limitDay[1]){
continue;
}
}
}
}
@ -344,6 +350,8 @@ public class GlobalDataManaager implements IManager {
long addTim = turns * (diffTime + seasonInterval);
timeOpenOfThis =seasonOpenLong+addTim;
timeCloseOfThis =seasonEndLong+addTim;
}else{
continue;
}
}
@ -489,4 +497,22 @@ public class GlobalDataManaager implements IManager {
}
return null;
}
/**
*
* @return
*/
public boolean getServerOpenTimeCompareSpecialTimeResult(){
// 开服时间
long serverOpenTime = TimeUtils.stringToTimeLong2(GameApplication.serverConfig.getOpenTime());
// 根据格式获取时间戳 例子 20210720
int value = SSpecialConfig.getIntegerValue(SSpecialConfig.DATA_OF_UNLOCK_THE_EVEREST);
long time = TimeUtils.stringToTimeLong(String.valueOf(value), "yyyyMMdd");
// 规定时间之前开服的返回0
if (serverOpenTime < time){
return false;
}else {
return true;
}
}
}

View File

@ -110,6 +110,7 @@ public class SSpecialConfig implements BaseConfig {
public static final String LING_LONG_COST = "LingLongCost";//玲珑宝镜消耗道具ID
public static final String Data_Of_Unlock_All_Wish_Hero = "DataOfUnlockAllWishHero";//在这个日期前开服的服务器默认解锁所有卡池内神将作为心愿不走hero表加入心愿时长的判断
public static final String DATA_OF_UNLOCK_THE_EVEREST = "DataOfUnlockTheEverest";
@Override
public void init() throws Exception {