From cbdc87a3efcf1a98d6f635fdd8259112410b90cb Mon Sep 17 00:00:00 2001 From: lvxinran Date: Thu, 22 Jul 2021 20:49:44 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=80=E6=AC=A1=E6=89=8B=E5=8A=A8?= =?UTF-8?q?=E5=88=86=E7=BB=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ljsd/GameLogicService.java | 3 +-- .../com/ljsd/jieling/kefu/Cmd_dosplit.java | 18 ++++++++++++++++++ .../ljsd/jieling/logic/GlobleSystemLogic.java | 5 ++++- 3 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_dosplit.java diff --git a/serverlogic/src/main/java/com/ljsd/GameLogicService.java b/serverlogic/src/main/java/com/ljsd/GameLogicService.java index 6a473cff8..69445f022 100644 --- a/serverlogic/src/main/java/com/ljsd/GameLogicService.java +++ b/serverlogic/src/main/java/com/ljsd/GameLogicService.java @@ -119,8 +119,7 @@ public class GameLogicService implements IService { if(resource!=null){ LOGGER.info(resource.getFile()); } - //跨服分一次组 - GlobleSystemLogic.getInstence().doSplit(); + Runtime.getRuntime().addShutdownHook(new Thread(() -> { diff --git a/serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_dosplit.java b/serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_dosplit.java new file mode 100644 index 000000000..b7badc6b5 --- /dev/null +++ b/serverlogic/src/main/java/com/ljsd/jieling/kefu/Cmd_dosplit.java @@ -0,0 +1,18 @@ +package com.ljsd.jieling.kefu; + +import com.ljsd.jieling.logic.GlobleSystemLogic; + +/** + * @author lvxinran + * @date 2021/7/22 + * @discribe + */ +public class Cmd_dosplit extends GmGlobleAbstract{ + @Override + public boolean exec(String[] args) throws Exception { + //跨服分一次组 + GlobleSystemLogic.getInstence().doSplit(); + System.out.println("gm手动分组成功"); + return true; + } +} diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobleSystemLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobleSystemLogic.java index 2fb77630b..66f9c0794 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobleSystemLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/GlobleSystemLogic.java @@ -231,7 +231,10 @@ public class GlobleSystemLogic implements IEventHandler { redisUtil.set(RedisKey.MATCHED_SPLIT_KEY,String.valueOf(1),expireTime-60); //提前两分钟结算 redisUtil.set(RedisKey.MATCHED_VERSION,TimeUtils.getTimeStampYMD(System.currentTimeMillis()),expireTime-120); - worldLevelMap.forEach((k,v)->redisUtil.zsetAddOne(RedisKey.SERVER_LEVEL_RANK,k,v)); + worldLevelMap.forEach((k,v)->{ + if(v>setting.getWorldLevel()){ + redisUtil.zsetAddOne(RedisKey.SERVER_LEVEL_RANK,k,v); + }}); Set> zsetRevRangeWithScore = redisUtil.getZsetreverseRangeByRangeWithScores(RedisKey.SERVER_LEVEL_RANK, setting.getWorldLevel(), 999); int index = 0;