跨服十绝阵暂时关闭

back_recharge
duhui 2021-07-30 15:11:53 +08:00
parent 931db8e069
commit 1bdb4587d7
1 changed files with 25 additions and 17 deletions

View File

@ -74,7 +74,15 @@ public class DeathPathLogic {
/** /**
* *
*/ */
private int groupId; private int groupId = -1;
public int getGroupId() {
return groupId;
}
public void setGroupId(int groupId) {
this.groupId = -1;
}
private BlockingQueue<DeathPathTask> tasks = new BlockingUniqueQueue<>(); private BlockingQueue<DeathPathTask> tasks = new BlockingUniqueQueue<>();
@ -190,9 +198,9 @@ public class DeathPathLogic {
if(dayStats==-1){ if(dayStats==-1){
//领奖阶段 //领奖阶段
currStatus = 2; currStatus = 2;
if(groupId==0 && isOpenCrossDeathPath()){ if(getGroupId()==0 && isOpenCrossDeathPath()){
groupId = GlobleSystemLogic.getInstence().getCrossGroup(); setGroupId(GlobleSystemLogic.getInstence().getCrossGroup());
LOGGER.info("========================跨服十绝阵开启:{}",groupId); LOGGER.info("========================跨服十绝阵开启:{}",getGroupId());
} }
}else if (dayStats==1){ }else if (dayStats==1){
Calendar calendar = Calendar.getInstance(); Calendar calendar = Calendar.getInstance();
@ -221,8 +229,8 @@ public class DeathPathLogic {
case 0: case 0:
try { try {
deleteDeathPathInfo(); deleteDeathPathInfo();
groupId = 0; setGroupId(0);
LOGGER.info("========================跨服十绝阵关闭:{}",groupId); LOGGER.info("========================跨服十绝阵关闭:{}",getGroupId());
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
@ -236,8 +244,8 @@ public class DeathPathLogic {
taskExecutor.start(); taskExecutor.start();
} }
if(isOpenCrossDeathPath()){ if(isOpenCrossDeathPath()){
groupId = GlobleSystemLogic.getInstence().getCrossGroup(); setGroupId(GlobleSystemLogic.getInstence().getCrossGroup());
LOGGER.info("========================跨服十绝阵开启:{}",groupId); LOGGER.info("========================跨服十绝阵开启:{}",getGroupId());
} }
break; break;
case 2: case 2:
@ -306,7 +314,7 @@ public class DeathPathLogic {
String key; String key;
// 是否是跨服 // 是否是跨服
Set<ZSetOperations.TypedTuple<String>> zSetReverseRangeWithScores; Set<ZSetOperations.TypedTuple<String>> zSetReverseRangeWithScores;
if (groupId > 0) { if (getGroupId() > 0) {
key = guildRank.getCrossRedisKey(); key = guildRank.getCrossRedisKey();
zSetReverseRangeWithScores = RedisUtil.getInstence().getZsetreverseRangeWithScores(key, String.valueOf(i), 0, 0,false); zSetReverseRangeWithScores = RedisUtil.getInstence().getZsetreverseRangeWithScores(key, String.valueOf(i), 0, 0,false);
LOGGER.info("========================获取十绝阵内部信息,跨服:{}",uid); LOGGER.info("========================获取十绝阵内部信息,跨服:{}",uid);
@ -365,7 +373,7 @@ public class DeathPathLogic {
FightRecordLogic.getInstance().addRecordMap(user,fightData); FightRecordLogic.getInstance().addRecordMap(user,fightData);
//更新排行榜数据 //更新排行榜数据
tasks.offer(new DeathPathTask(uid,guildId,damage,pathId,groupId)); tasks.offer(new DeathPathTask(uid,guildId,damage,pathId,getGroupId()));
//挑战次数记录 //挑战次数记录
RedisUtil.getInstence().increment(RedisKey.getKey(RedisKey.DEATH_PATH_CHALLENGE_COUNT,String.valueOf(uid),false)); RedisUtil.getInstence().increment(RedisKey.getKey(RedisKey.DEATH_PATH_CHALLENGE_COUNT,String.valueOf(uid),false));
GuildInfo guildInfo = GuilidManager.guildInfoMap.get(guildId); GuildInfo guildInfo = GuilidManager.guildInfoMap.get(guildId);
@ -553,14 +561,14 @@ public class DeathPathLogic {
//根据排名进行随机奖励 //根据排名进行随机奖励
int rank; int rank;
AbstractRank rankEnum = RankContext.getRankEnum(RankEnum.DEATH_PATH_TOTAL_GUILD_RANK.getType()); AbstractRank rankEnum = RankContext.getRankEnum(RankEnum.DEATH_PATH_TOTAL_GUILD_RANK.getType());
if(groupId>0){ if(getGroupId()>0){
String key = rankEnum.getCrossRedisKey(); String key = rankEnum.getCrossRedisKey();
rank = RedisUtil.getInstence().getZSetreverseRank(key, "", String.valueOf(user.getPlayerInfoManager().getGuildId()),false).intValue(); rank = RedisUtil.getInstence().getZSetreverseRank(key, "", String.valueOf(user.getPlayerInfoManager().getGuildId()),false).intValue();
LOGGER.info("==================获取十绝阵奖励,跨服,分组:{},玩家:{}",groupId,uid); LOGGER.info("==================获取十绝阵奖励,跨服,分组:{},玩家:{}",getGroupId(),uid);
}else { }else {
String key = rankEnum.getRedisKey(); String key = rankEnum.getRedisKey();
rank = RedisUtil.getInstence().getZSetreverseRank(key, "", String.valueOf(user.getPlayerInfoManager().getGuildId()),true).intValue(); rank = RedisUtil.getInstence().getZSetreverseRank(key, "", String.valueOf(user.getPlayerInfoManager().getGuildId()),true).intValue();
LOGGER.info("==================获取十绝阵奖励,本地,分组:{},玩家:{}",groupId,uid); LOGGER.info("==================获取十绝阵奖励,本地,分组:{},玩家:{}",getGroupId(),uid);
} }
if(rank==-1||rank==0){ if(rank==-1||rank==0){
throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE); throw new ErrorCodeException(ErrorCode.SERVER_SELF_DEFINE);
@ -607,10 +615,10 @@ public class DeathPathLogic {
String mailContent = SErrorCodeEerverConfig.getI18NMessage("guildwar_reward_txt"); String mailContent = SErrorCodeEerverConfig.getI18NMessage("guildwar_reward_txt");
// 本服id // 本服id
int serverId = GameApplication.serverId; int serverId = GameApplication.serverId;
if(groupId > 0){ if(getGroupId() > 0){
//是否跨服 //是否跨服
LOGGER.info("===================跨服十绝阵排行榜结束处理,分组:{},区服:{}",groupId,serverId); LOGGER.info("===================跨服十绝阵排行榜结束处理,分组:{},区服:{}",getGroupId(),serverId);
Map<Integer, Integer> map = CrossDeathPathLogic.getInstance().crossDeathPathReward(groupId, serverId); Map<Integer, Integer> map = CrossDeathPathLogic.getInstance().crossDeathPathReward(getGroupId(), serverId);
if(map.isEmpty()){ if(map.isEmpty()){
LOGGER.error("===================无跨服十绝阵排行信息"); LOGGER.error("===================无跨服十绝阵排行信息");
return; return;
@ -628,7 +636,7 @@ public class DeathPathLogic {
} }
} }
}else { }else {
LOGGER.info("===================本地十绝阵排行榜结束处理,分组:{},区服:{}",groupId,serverId); LOGGER.info("===================本地十绝阵排行榜结束处理,分组:{},区服:{}",getGroupId(),serverId);
//本服发奖 //本服发奖
AbstractRank guildRank = RankContext.getRankEnum(RankEnum.DEATH_PATH_TOTAL_GUILD_RANK.getType()); AbstractRank guildRank = RankContext.getRankEnum(RankEnum.DEATH_PATH_TOTAL_GUILD_RANK.getType());
AbstractRank personRank = RankContext.getRankEnum(RankEnum.DEATH_PATH_TOTAL_PERSON_RANK.getType()); AbstractRank personRank = RankContext.getRankEnum(RankEnum.DEATH_PATH_TOTAL_PERSON_RANK.getType());