diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/crossServer/CrossLingmaiSecretAreaBattleHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/crossServer/CrossLingmaiSecretAreaBattleHandler.java index c9b4db4bd..7eff9f92c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/crossServer/CrossLingmaiSecretAreaBattleHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/crossServer/CrossLingmaiSecretAreaBattleHandler.java @@ -125,10 +125,10 @@ public class CrossLingmaiSecretAreaBattleHandler extends BaseHandler60 ? 60 : ((TimeUtils.nowInt() - (int)myLingmai.getGetAwardTimeOrOccupyTime()) % 60); - myLingmai.setScore1(myLingmai.getScore1() + minute*config.getRewardList()[0][1]+(second*(config.getRewardList()[0][1]/60))); + myLingmai.setScore1(myLingmai.getScore1() + minute*config.getRewardList()[0][1]+(second*config.getRewardList()[0][1]/60)); //myLingmai.setGetAwardTimeOrOccupyTime(TimeUtils.nowInt()); LOGGER.info("uid:"+uid+"first occupy myLingmaiId: "+myLingmaiId+" minute:"+minute+"second:"+second); - int score = myLingmai.getScore1() + config.getRewardList()[0][1] * myLingmai.getOccupyTime(); + int score = myLingmai.getScore1() + config.getRewardList()[0][1] * myLingmai.getOccupyTime()/60; rank = RankContext.getRankEnum(RankEnum.CROSS_LINGMAI_RANK_PERSON.getType()); rank.addRank(user.getId(), String.valueOf(crossGroup) + RedisKey.Delimiter_colon + group, score); //清除已有灵脉数据 diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/CrossLingmaiLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/CrossLingmaiLogic.java index 9d76d2227..d193d7a64 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/CrossLingmaiLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/CrossLingmaiLogic.java @@ -192,6 +192,55 @@ public class CrossLingmaiLogic { } } + //TODO 之后删除 + public void fixBug(){ + //初始化数据 + int crossGroup = GlobleSystemLogic.getInstence().getCrossGroup(); + if (crossGroup == -1) { + return; + } + Map lingMaiMap1 = RedisUtil.getInstence().getMapValues(RedisKey.CROSS_LINGMAISECRET_INFO, crossGroup + RedisKey.Delimiter_colon + 1, String.class, LingMaiSecretArea.class); + Map lingMaiMap2 = RedisUtil.getInstence().getMapValues(RedisKey.CROSS_LINGMAISECRET_INFO, crossGroup + RedisKey.Delimiter_colon + 2, String.class, LingMaiSecretArea.class); + fixBugUpdateLingmaiData(lingMaiMap1,crossGroup,1); + fixBugUpdateLingmaiData(lingMaiMap2,crossGroup,2); + LOGGER.error("lingmaimijing1"); + //排行榜删除 + String rkey1 = RedisUtil.getInstence().getKey(RedisKey.CROSS_LINGMAI_RANK_PERSON, Integer.toString(crossGroup) + RedisKey.Delimiter_colon + "1"); + String rkey2 = RedisUtil.getInstence().getKey(RedisKey.CROSS_LINGMAI_RANK_PERSON, Integer.toString(crossGroup) + RedisKey.Delimiter_colon + "2"); + RedisUtil.getInstence().del(rkey1); + LOGGER.error("lingmaimijing2"+rkey1); + RedisUtil.getInstence().del(rkey2); + LOGGER.error("lingmaimijing3"+rkey2); + } + + public static void fixBugUpdateLingmaiData(Map lingMaiMap,int crossGroup,int group) { + for (Map.Entry map : lingMaiMap.entrySet()) { + try{ + User user = UserManager.getUser(map.getValue().getUid()); + if (user != null) { + SLodeConfig config = SLodeConfig.lodeConfig.get(map.getValue().getId()); + if(config !=null){ + map.getValue().setGetAwardTimeOrOccupyTime(TimeUtils.nowInt()); + map.getValue().setBeginOccupyTime(TimeUtils.nowInt()); + LOGGER.error("lingmaimijing1"); + map.getValue().setScore1(0); + map.getValue().setOccupyTime(0); + } + } + } catch (Exception e) { + e.printStackTrace(); + } + } + RedisUtil.getInstence().putMapEntrys(RedisKey.CROSS_LINGMAISECRET_INFO, crossGroup + RedisKey.Delimiter_colon + group, lingMaiMap); + } + + + + + + + + public static class Instance { public final static CrossLingmaiLogic instance = new CrossLingmaiLogic(); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java index 614483703..410c8e3c8 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/thread/task/MinuteTask.java @@ -335,7 +335,13 @@ public class MinuteTask extends Thread { CrossLingmaiLogic.getInstance().initData(); } + //bug 修复 + if(w==4){ + if(hour ==10 && minute ==20){ + LOGGER.error("lingmaimijing0 000000"); + CrossLingmaiLogic.getInstance().fixBug(); + } + } } - } }