From 9a4e721ba7ea08d3aa68dce7c3ce620a45f73023 Mon Sep 17 00:00:00 2001 From: zhangshanxue Date: Wed, 4 Nov 2020 00:26:44 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=88=B7=E6=96=B0=E5=92=8C?= =?UTF-8?q?=E5=A4=A7=E9=97=B9=E5=A4=A9=E5=AE=AB=E8=AF=95=E7=82=BC=E8=8A=82?= =?UTF-8?q?=E7=82=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ljsd/jieling/db/redis/RedisKey.java | 3 +- .../EndExpeditionBattleRequest.java | 3 ++ .../logic/championship/ChampionshipLogic.java | 40 +++++++++++++++++-- 3 files changed, 41 insertions(+), 5 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/db/redis/RedisKey.java b/serverlogic/src/main/java/com/ljsd/jieling/db/redis/RedisKey.java index 96eaaed24..96d260d22 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/db/redis/RedisKey.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/db/redis/RedisKey.java @@ -217,12 +217,13 @@ public class RedisKey { public final static String CHAMPION_CHOSE_TEAM_INFO = "CHAMPION_CHOSE_TEAM_INFO"; public final static String CHAMPION_FINAL_TEAM_INFO = "CHAMPION_FINAL_TEAM_INFO"; public final static String CHAMPION_BET_MINE = "CHAMPION_BET_MINE"; // 我的竞猜 selectIdForRedis value: winUid - public final static String CHAMPION_BET_DETAIL = "CHAMPION_BET_DETAIL"; // 我的竞猜 selectUid + ":" +winUid + public final static String CHAMPION_BET_DETAIL = "CHAMPION_BET_DETAIL"; // 我的竞猜 selectUid + ":" +winUid 本次比赛竞猜当前玩家的的 所有玩家及竞猜道具信息 public final static String CHAMPION_BET_ALL = "CHAMPION_BET_ALL"; // 竞猜信息 selectUid + ":" +winUid public final static String CHAMPION_FINAL_RECODED_IDS = "CHAMPION_FINAL_RECODED_IDS"; // 巅峰赛決賽信息 //没发现什么用 public final static String CHAMPION_GUESSS_UIDS = "CHAMPION_GUESSS_UIDS"; // 巅峰赛发送竞猜币信息 public final static String CHAMPION_ARENA_RECORD_THREE = "CHAMPION_ARENA_RECORD_THREE";//三局两胜缓存 + public final static String CHAMPION_SCHEDULE = "CHAMPION_SCHEDULE";//赛程 public final static String PIDGIDTEMP = "PIDGIDTEMP"; public final static String GUILDBOSS_ARENA_RECORD = "GUILDBOSS_ARENA_RECORD"; diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/Expedition/EndExpeditionBattleRequest.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/Expedition/EndExpeditionBattleRequest.java index fd60ac05d..6c10a4e60 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/Expedition/EndExpeditionBattleRequest.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/Expedition/EndExpeditionBattleRequest.java @@ -282,6 +282,9 @@ public class EndExpeditionBattleRequest extends BaseHandler { delKeys.add(RedisUtil.getInstence().getKey(RedisKey.CHAMPION_MY_BATTLLE_IDS, Integer.toString(uid))); @@ -876,6 +897,13 @@ public class ChampionshipLogic { /** * 1.选出参战人员 人永远是进攻方 + * + * arenaRecordMap 所有战斗双方记录对象 + * CHAMPION_ARENA_RECORD 当前所有战斗双方记录 + * CHAMPION_CUR_JOIN_IDS 当前所有战斗双方记录的id + * CHAMPION_JOIN 参加的成员 + * + * */ public static void selectToBattle() { RedisUtil.getInstence().del(RedisUtil.getInstence().getKey(RedisKey.CHAMPION_CUR_JOIN_IDS, "")); @@ -969,6 +997,7 @@ public class ChampionshipLogic { arenaRecordIds.addAll(arenaRecordMap.keySet()); RedisUtil.getInstence().lSet(RedisKey.CHAMPION_CUR_JOIN_IDS, "", arenaRecordIds); if (schedule == 2) { + //记录4强 8强的人 方便索引 if (arenaRecordIds.size() >= 4) { RedisUtil.getInstence().lSet(RedisKey.CHAMPION_FINAL32_JOIN_IDS, "", arenaRecordIds); LOGGER.info("the rountTimes={},the size={}", roundTimes, arenaRecordIds.size()); @@ -1000,6 +1029,9 @@ public class ChampionshipLogic { return RedisUtil.getInstence().getMapEntrys(RedisKey.CHAMPION_ARENA_RECORD, "", ids, ArenaRecord.class); } + /** + * 获取本次竞猜id + */ public static String getSelectIdForRedis() { String key = RedisUtil.getInstence().getKey(RedisKey.CHAMPION_CUR_BETID, ""); Object result = RedisUtil.getInstence().get(key); @@ -1207,7 +1239,7 @@ public class ChampionshipLogic { // //竞猜阶段取消,改成直接战斗 fix 又改回来了 // progressState = progressState==1?2:progressState; progressTmp = 100 + roundTimes * 10 + progressState; - schedule = 1; + setSchedule(1); fightTime=2; if (progressTmp == progress) { return; @@ -1215,7 +1247,7 @@ public class ChampionshipLogic { } else {//决赛 if (realTimes>5) { - schedule = 2; + setSchedule(2); if (progress != -2) { progress = -2; ChampionshipLogic.close(); @@ -1229,7 +1261,7 @@ public class ChampionshipLogic { scoreToRedis(); realTimes=1; fightTime=0; - schedule = 2; + setSchedule(2); selectToJoinFinal(); }