New option to enable all worlds

This commit is contained in:
Esmorall 2020-07-02 16:47:59 -03:00
parent 6c072de7ec
commit 2ed1068aed
9 changed files with 86 additions and 21 deletions

View File

@ -16,6 +16,11 @@ log-to-console: true
# - Default value(s): true
disable-tick-for-untracked-entities: true
# Should the plugin perform tasks on all worlds?
# Note: if this is set to true, the option "worlds" will be ignored
# - Default value(s): false
enable-on-all-worlds: false
# How often (in ticks) should we check for "lingering" entities?
# - Default value(s): 400
untrack-ticks: 400

View File

@ -1,6 +1,6 @@
name: EntityTrackerFixer
main: net.minemora.entitytrackerfixer.EntityTrackerFixer
version: 1.3
version: 1.3.1
softdepend: [Vault]
api-version: 1.14
author: Esmorall

View File

@ -17,6 +17,7 @@ public final class ConfigMain extends Config {
private static double minTps;
private static boolean logToConsole = true;
private static boolean disableTickUntracked = true;
private static boolean enableOnAllWorlds = false;
private static List<String> worlds = new ArrayList<>();
private ConfigMain() {
@ -33,9 +34,13 @@ public final class ConfigMain extends Config {
EntityTrackerFixer.plugin.getLogger().info("Setting tracking range to: " + trackingRange);
minTps = getConfig().getDouble("tps-limit", 18.5);
EntityTrackerFixer.plugin.getLogger().info("Setting minmun TPS to: " + minTps);
enableOnAllWorlds = getConfig().getBoolean("enable-on-all-worlds", false);
EntityTrackerFixer.plugin.getLogger().info("Setting enable on all worlds to: " + enableOnAllWorlds);
worlds = getConfig().getStringList("worlds");
for(String world : worlds) {
EntityTrackerFixer.plugin.getLogger().info("Adding world: " + world);
if(!enableOnAllWorlds) {
for(String world : worlds) {
EntityTrackerFixer.plugin.getLogger().info("Adding world: " + world);
}
}
logToConsole = getConfig().getBoolean("log-to-console", true);
EntityTrackerFixer.plugin.getLogger().info("Setting log to console to: " + logToConsole);
@ -86,4 +91,8 @@ public final class ConfigMain extends Config {
public static boolean isDisableTickUntracked() {
return disableTickUntracked;
}
public static boolean isEnableOnAllWorlds() {
return enableOnAllWorlds;
}
}

View File

@ -4,6 +4,7 @@ import java.util.HashSet;
import java.util.Set;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.craftbukkit.v1_14_R1.CraftWorld;
import org.bukkit.craftbukkit.v1_14_R1.entity.CraftEntity;
import org.bukkit.entity.Entity;
@ -22,11 +23,18 @@ public class CheckTask extends BukkitRunnable {
if(UntrackerTask.isRunning()) {
return;
}
for(String worldName : ConfigMain.getWorlds()) {
if(Bukkit.getWorld(worldName) == null) {
continue;
if(ConfigMain.isEnableOnAllWorlds()) {
for(World world : Bukkit.getWorlds()) {
checkWorld(world.getName());
}
}
else {
for(String worldName : ConfigMain.getWorlds()) {
if(Bukkit.getWorld(worldName) == null) {
continue;
}
checkWorld(worldName);
}
checkWorld(worldName);
}
}

View File

@ -5,6 +5,7 @@ import java.util.HashSet;
import java.util.Set;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.craftbukkit.v1_14_R1.CraftWorld;
import org.bukkit.scheduler.BukkitRunnable;
@ -41,9 +42,17 @@ public class UntrackerTask extends BukkitRunnable {
return;
}
running = true;
for(String worldName : ConfigMain.getWorlds()) {
untrackProcess(worldName);
if(ConfigMain.isEnableOnAllWorlds()) {
for(World world : Bukkit.getWorlds()) {
untrackProcess(world.getName());
}
}
else {
for(String worldName : ConfigMain.getWorlds()) {
untrackProcess(worldName);
}
}
running = false;
}

View File

@ -4,6 +4,7 @@ import java.util.HashSet;
import java.util.Set;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.craftbukkit.v1_15_R1.CraftWorld;
import org.bukkit.craftbukkit.v1_15_R1.entity.CraftEntity;
import org.bukkit.entity.Entity;
@ -22,11 +23,18 @@ public class CheckTask extends BukkitRunnable {
if(UntrackerTask.isRunning()) {
return;
}
for(String worldName : ConfigMain.getWorlds()) {
if(Bukkit.getWorld(worldName) == null) {
continue;
if(ConfigMain.isEnableOnAllWorlds()) {
for(World world : Bukkit.getWorlds()) {
checkWorld(world.getName());
}
}
else {
for(String worldName : ConfigMain.getWorlds()) {
if(Bukkit.getWorld(worldName) == null) {
continue;
}
checkWorld(worldName);
}
checkWorld(worldName);
}
}

View File

@ -5,6 +5,7 @@ import java.util.HashSet;
import java.util.Set;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.craftbukkit.v1_15_R1.CraftWorld;
import org.bukkit.scheduler.BukkitRunnable;
@ -41,9 +42,17 @@ public class UntrackerTask extends BukkitRunnable {
return;
}
running = true;
for(String worldName : ConfigMain.getWorlds()) {
untrackProcess(worldName);
if(ConfigMain.isEnableOnAllWorlds()) {
for(World world : Bukkit.getWorlds()) {
untrackProcess(world.getName());
}
}
else {
for(String worldName : ConfigMain.getWorlds()) {
untrackProcess(worldName);
}
}
running = false;
}

View File

@ -4,6 +4,7 @@ import java.util.HashSet;
import java.util.Set;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.craftbukkit.v1_16_R1.CraftWorld;
import org.bukkit.craftbukkit.v1_16_R1.entity.CraftEntity;
import org.bukkit.entity.Entity;
@ -23,11 +24,18 @@ public class CheckTask extends BukkitRunnable {
if(UntrackerTask.isRunning()) {
return;
}
for(String worldName : ConfigMain.getWorlds()) {
if(Bukkit.getWorld(worldName) == null) {
continue;
if(ConfigMain.isEnableOnAllWorlds()) {
for(World world : Bukkit.getWorlds()) {
checkWorld(world.getName());
}
}
else {
for(String worldName : ConfigMain.getWorlds()) {
if(Bukkit.getWorld(worldName) == null) {
continue;
}
checkWorld(worldName);
}
checkWorld(worldName);
}
}

View File

@ -5,6 +5,7 @@ import java.util.HashSet;
import java.util.Set;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.craftbukkit.v1_16_R1.CraftWorld;
import org.bukkit.scheduler.BukkitRunnable;
@ -42,9 +43,17 @@ public class UntrackerTask extends BukkitRunnable {
return;
}
running = true;
for(String worldName : ConfigMain.getWorlds()) {
untrackProcess(worldName);
if(ConfigMain.isEnableOnAllWorlds()) {
for(World world : Bukkit.getWorlds()) {
untrackProcess(world.getName());
}
}
else {
for(String worldName : ConfigMain.getWorlds()) {
untrackProcess(worldName);
}
}
running = false;
}