From 30aa24c0d3b450a707ffa971b6a18fd39fe93c5e Mon Sep 17 00:00:00 2001 From: MrBretze Date: Sat, 28 Sep 2019 16:12:36 +0200 Subject: [PATCH] Make Compatible with CraftBukkit --- .../entitytrackerfixer/UntrackerTask.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/EntityTrackerFixer/src/net/minemora/entitytrackerfixer/UntrackerTask.java b/EntityTrackerFixer/src/net/minemora/entitytrackerfixer/UntrackerTask.java index acdadd2..8386c5b 100644 --- a/EntityTrackerFixer/src/net/minemora/entitytrackerfixer/UntrackerTask.java +++ b/EntityTrackerFixer/src/net/minemora/entitytrackerfixer/UntrackerTask.java @@ -4,14 +4,11 @@ import java.util.HashSet; import java.util.Set; +import net.minecraft.server.v1_14_R1.*; import org.bukkit.Bukkit; import org.bukkit.craftbukkit.v1_14_R1.CraftWorld; import org.bukkit.scheduler.BukkitRunnable; -import net.minecraft.server.v1_14_R1.ChunkProviderServer; -import net.minecraft.server.v1_14_R1.EntityPlayer; -import net.minecraft.server.v1_14_R1.MinecraftServer; -import net.minecraft.server.v1_14_R1.WorldServer; import net.minecraft.server.v1_14_R1.PlayerChunkMap.EntityTracker; import net.minemora.entitytrackerfixer.config.ConfigMain; import net.minemora.entitytrackerfixer.util.ReflectionUtils; @@ -21,6 +18,7 @@ public class UntrackerTask extends BukkitRunnable { private static boolean running = false; private static Field trackerField; + private static MinecraftServer server = MinecraftServer.getServer(); static { try { @@ -33,7 +31,7 @@ public class UntrackerTask extends BukkitRunnable { @SuppressWarnings("deprecation") @Override public void run() { - if(MinecraftServer.getServer().recentTps[0] > ConfigMain.getMinTps()) { + if(getCurrentTPS() > ConfigMain.getMinTps()) { //String tps = String.format("%.2f", MinecraftServer.getServer().recentTps[0]); //EntityTrackerFixer.plugin.getLogger().info("Not untraking because tps = " + tps); return; @@ -112,4 +110,12 @@ public static boolean isRunning() { return running; } + public double getCurrentTPS() + { + return Math.min(1000 / getCurrentDurationTime(), 20); + } + + public static double getCurrentDurationTime() { + return MathHelper.a(server.f) * 1.0E-6D; + } }