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 9c192956d..ed5a16140 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 @@ -1019,6 +1019,7 @@ public class ArenaLogic { NewArenaRank rank = (NewArenaRank) RankEnum.toRank(RankEnum.NEW_ARENA_RANK.getType()); int ranking = rank.getRanking(roomId, user.getId()); + String key = rank.getKey(roomId); int size = 4; HashMap result = new HashMap<>(size); @@ -1028,9 +1029,9 @@ public class ArenaLogic { // 读取配置走正常区间分配 for (int[] limit : interval) { // 获取匹配积分区间的最大值和最小值 - double high = score * limit[0] / 10000.0f + 1; - double low = score * limit[1] / 10000.0f - 1; - Set range = redisUtil.getZsetRangeOrigin(rank.getKey(roomId), low, high); + double low = score * limit[0] / 10000.0f - 1; + double high = score * limit[1] / 10000.0f + 1; + Set range = redisUtil.getZsetRangeOrigin(key, low, high); if (range == null || range.isEmpty()){ continue; } @@ -1050,7 +1051,7 @@ public class ArenaLogic { // 长度不足,走顺位排名 if (result.size() < size){ int end = ranking + size; - Set zset = redisUtil.getReverseZset(rank.getKey(roomId), ranking, end); + Set zset = redisUtil.getReverseZset(key, ranking, end); if (zset != null && !zset.isEmpty()){ for (String id : zset) { int uid = Integer.parseInt(id);