diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java index c54555e2a..cbc71c370 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java @@ -604,6 +604,7 @@ public class ArenaLogic { title = SErrorCodeEerverConfig.getI18NMessage("arena_season_reward_title"); } Set> arenaRankInfo = RedisUtil.getInstence().getZsetreverseRangeWithScores(RedisKey.ARENA_RANK,Integer.toString(curSeason), 0, -1); + int nextSeason = curSeason + 1; if(type == GlobalsDef.ARENA_SEASON_REWARD){ curSeason=0; } @@ -617,7 +618,6 @@ public class ArenaLogic { continue; } if(type == GlobalsDef.ARENA_DAILY_REWARD){ - MissionEventDistributor.requestStart(); user.getUserMissionManager().onGameEvent(user,GameEvent.ARENA_UPDATE_RANK,rank); ISession sessionByUid = OnlineUserManager.getSessionByUid(uid); @@ -633,12 +633,16 @@ public class ArenaLogic { user.getPlayerInfoManager().removeRed(GlobalsDef.ARENA_CHALLENGE_TYPE); String key = RedisUtil.getInstence().getKey(RedisKey.ARENA_RRECORD, Integer.toString(uid)); RedisUtil.getInstence().del(key); + } String rewardByRank = getRewardByRank(rank++, type); if(!"".equals(rewardByRank)){ MailLogic.getInstance().sendMail(user.getId(),title,content,rewardByRank,nowTime, Global.MAIL_EFFECTIVE_TIME); } } + if(type == GlobalsDef.ARENA_SEASON_REWARD){ + RedisUtil.getInstence().updateZsetScores(RedisKey.ARENA_RANK,Integer.toString(nextSeason),arenaRankInfo); + } MongoUtil.getInstence().lastUpdate(); }