From d978fcab50ad25783a013b772d6826efa3b56ddd Mon Sep 17 00:00:00 2001 From: zhangyuheng Date: Sun, 3 Mar 2024 21:09:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=E5=89=A9=E4=BD=99?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E4=BC=B0=E8=AE=A1=E5=A4=B1=E6=95=88=E9=97=AE?= =?UTF-8?q?=E9=A2=98=20=E5=A2=9E=E5=BC=BA=EF=BC=9A=E6=94=BE=E7=BD=AE?= =?UTF-8?q?=E5=8F=AF=E5=9C=A8=E6=B5=81=E4=BD=93=E6=96=B9=E5=9D=97=E6=94=BE?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../deercloud/liteworldedit/Jobs/Place.java | 4 ++-- .../liteworldedit/Managers/JobQueue.java | 20 +++++++++++++------ 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/pom.xml b/pom.xml index 09aab82..c109d0b 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ site.deercloud LiteWorldEdit - 2.3.5.2 + 2.3.5.6 jar LiteWorldEdit diff --git a/src/main/java/site/deercloud/liteworldedit/Jobs/Place.java b/src/main/java/site/deercloud/liteworldedit/Jobs/Place.java index 3b4485f..b16b583 100644 --- a/src/main/java/site/deercloud/liteworldedit/Jobs/Place.java +++ b/src/main/java/site/deercloud/liteworldedit/Jobs/Place.java @@ -35,8 +35,8 @@ public class Place extends Job { } // 跳过非空气方块 Block raw_block = _world.getBlockAt(_location); - if (!raw_block.isEmpty()) { - LoggerX.debug("目标方块不是空气!"); + if (!raw_block.isEmpty() && !raw_block.isLiquid()) { + LoggerX.debug("目标方块不是空气或流体!"); return JobErrCode.NOT_AIR_BLOCK; } // 获取到玩家物品中材料的第一个堆叠 diff --git a/src/main/java/site/deercloud/liteworldedit/Managers/JobQueue.java b/src/main/java/site/deercloud/liteworldedit/Managers/JobQueue.java index 3755973..7cd58d0 100644 --- a/src/main/java/site/deercloud/liteworldedit/Managers/JobQueue.java +++ b/src/main/java/site/deercloud/liteworldedit/Managers/JobQueue.java @@ -20,6 +20,10 @@ public class JobQueue { int total = 0; int ms_last_pop; + int time_remain_count = 0; + + int time_s_remaining = 0; + int time_m_remaining = 0; Player player; @@ -44,7 +48,6 @@ public class JobQueue { } Job job = queue.pop(); updateBarProgressBar(); - ms_last_pop = (int) System.currentTimeMillis(); return job; } @@ -76,11 +79,16 @@ public class JobQueue { private void updateBarProgressBar() { bar.setProgress((total - queue.size()) * 1.0 / total); - int delta_time_ms = (int) System.currentTimeMillis() - ms_last_pop; - int time_s_remaining = queue.size() * delta_time_ms / 1000; - int time_m_remaining = time_s_remaining / 60; - int time_s_remaining_mod = time_s_remaining % 60; - bar.setTitle("§a§lLiteWorldEdit [正在运行] 剩余任务: " + queue.size() + " 预计剩余时间: " + time_m_remaining + "分" + time_s_remaining_mod + "秒"); + time_remain_count++; + if (time_remain_count >= 100) { + time_remain_count = 0; + int delta_time_ms = (int) System.currentTimeMillis() - ms_last_pop; + time_s_remaining = queue.size() * delta_time_ms / 100 / 1000; + time_m_remaining = time_s_remaining / 60; + time_s_remaining = time_s_remaining % 60; + ms_last_pop = (int) System.currentTimeMillis(); + } + bar.setTitle("§a§lLiteWorldEdit [正在运行] 剩余任务: " + queue.size() + " 预计剩余时间: " + time_m_remaining + "分" + time_s_remaining + "秒"); bar.setVisible(queue.size() != 0); }