diff --git a/serverlogic/src/main/java/com/ljsd/jieling/core/function/CarDelayFunction.java b/serverlogic/src/main/java/com/ljsd/jieling/core/function/CarDelayFunction.java index 70c1f2959..99cb628e6 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/core/function/CarDelayFunction.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/core/function/CarDelayFunction.java @@ -44,9 +44,14 @@ public class CarDelayFunction implements FunctionManager { @Override public void closeAction() throws Exception { - Map> rewardByTypeAndRankMap = SWorldBossRewardConfig.rewardByTypeAndRankMap; + // 获取车迟斗法当前boss的索引id + int indexId = GuildFightLogic.carDelayProgressIndication.getBossIndexId(); + // 根据索引id取出当前的奖励配置 + Map> rewardByTypeAndRankMap = SWorldBossRewardConfig.rewardByBossIdMap.get(indexId); + TreeMap personRewardConfigTreeMap = rewardByTypeAndRankMap.get(2); TreeMap guildRewardConfigTreeMap = rewardByTypeAndRankMap.get(1); + Set> personRangeWithScores = RedisUtil.getInstence().getZsetreverseRangeWithScores(RedisKey.CAR_DEALY_RANK, "", 0, -1); int rank=0; String personTitle = SErrorCodeEerverConfig.getI18NMessage("family_fight_rank_personreward_title"); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/hotfix/HotfixUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/hotfix/HotfixUtil.java index b4f0299eb..8575d1294 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/hotfix/HotfixUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/hotfix/HotfixUtil.java @@ -41,7 +41,6 @@ public class HotfixUtil implements IEventHandler { @Override public void onEvent(IEvent event) throws Exception { doWork(SysUtil.getPath("conf/hotfix.json")); - } private void doWork(String pathName){ diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java index a2f3c3532..c6fdc37e8 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/ActivityLogic.java @@ -127,6 +127,7 @@ public class ActivityLogic implements IEventHandler{ } public void checkActiviyStatus() throws Exception { + long now = System.currentTimeMillis(); Map sGlobalActivityMap = SGlobalActivity.getsGlobalActivityMap(); @@ -181,7 +182,6 @@ public class ActivityLogic implements IEventHandler{ abstractActivity.onActivityStart(); openActivityIds.add(sGlobalActivity.getId()); } - //活动数据处理分发到角色线程 InnerMessageUtil.broadcastWithRandom(user1 -> { if(user1==null){ @@ -221,7 +221,6 @@ public class ActivityLogic implements IEventHandler{ }, new LinkedList<>(OnlineUserManager.sessionMap.keySet()),5); } - public void newPlayerOpenActivityMission(User user) throws Exception { checkActivityOfUser(user, null); ISession session = OnlineUserManager.getSessionByUid(user.getId()); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/Poster.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/Poster.java index 05063185a..0b37f1588 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/Poster.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/event/Poster.java @@ -57,6 +57,7 @@ public class Poster { try { eh.onEvent(e); }catch (Exception e1){ + e1.printStackTrace(); } } } 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 207ed8d86..7d254d865 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 @@ -72,6 +72,7 @@ public class MinuteTask extends Thread { STableManager.updateTablesWithTableNames(true); ActivityLogic.getInstance().checkSecretBoxSeason(); StoreLogic.checkGlobalStore(false); + try { MapLogic.getInstance().minuteCheckAndRemoveMapRank(); }catch (Exception e){ diff --git a/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java b/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java index a0f239593..775c184d0 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/util/MessageUtil.java @@ -37,8 +37,8 @@ public class MessageUtil { backMessage = new byte[0]; } else { backMessage = generatedMessage.toByteArray(); - if (backMessage.length != 0) - LOGGER.info("wrappedBuffer uid=>{}, generatedMessage=>{}", uid, JsonFormat.printToString(generatedMessage)); +// if (backMessage.length != 0) +// LOGGER.info("wrappedBuffer uid=>{}, generatedMessage=>{}", uid, JsonFormat.printToString(generatedMessage)); } return wrappedBuffer(uid, token, index, result, msgId, backMessage); diff --git a/tablemanager/src/main/java/config/SWorldBossRewardConfig.java b/tablemanager/src/main/java/config/SWorldBossRewardConfig.java index 213a7433c..8456952da 100644 --- a/tablemanager/src/main/java/config/SWorldBossRewardConfig.java +++ b/tablemanager/src/main/java/config/SWorldBossRewardConfig.java @@ -19,23 +19,36 @@ public class SWorldBossRewardConfig implements BaseConfig { private int type; - public static Map> rewardByTypeAndRankMap = new HashMap<>(); + private int bossId; + /** + * 类型,排名,奖励 + */ + public static Map> rewardByTypeAndRankMap = new HashMap<>(); + /** + * boss索引id,类型,排名,奖励 + */ + public static Map>> rewardByBossIdMap = new HashMap<>(); @Override public void init() throws Exception { Map config = STableManager.getConfig(SWorldBossRewardConfig.class); - Map> rewardByTypeAndRankMapTmp = new HashMap<>(); + Map> rewardByTypeAndRankMapTmp = new HashMap<>(); + Map>> rewardByBossIdMapTmp = new HashMap<>(); config.forEach((id,item)->{ rewardByTypeAndRankMapTmp.putIfAbsent(item.getType(),new TreeMap<>()); rewardByTypeAndRankMapTmp.get(item.getType()).put(item.getSection()[0], StringUtil.parseArrayToString(item.getReward())); - }); - rewardByTypeAndRankMap = rewardByTypeAndRankMapTmp; + rewardByBossIdMapTmp.putIfAbsent(item.getBossId(),new TreeMap<>()); + rewardByBossIdMapTmp.get(item.getBossId()).putIfAbsent(item.getType(),new TreeMap<>()); + rewardByBossIdMapTmp.get(item.getBossId()).get(item.getType()).put(item.getSection()[0], StringUtil.parseArrayToString(item.getReward())); + }); + + rewardByTypeAndRankMap = rewardByTypeAndRankMapTmp; + rewardByBossIdMap = rewardByBossIdMapTmp; } - - public int getId() { + public int getId() { return id; } @@ -50,4 +63,8 @@ public class SWorldBossRewardConfig implements BaseConfig { public int getType() { return type; } + + public int getBossId() { + return bossId; + } } \ No newline at end of file