Fix NPE of DisableTick (Issue #9)
Some worlds may not be loaded when loading world cache on enable. (With plugins like Multiverse-Core)
This commit is contained in:
parent
0e216bd724
commit
d6dfa48c17
|
@ -4,6 +4,7 @@ import java.lang.reflect.Field;
|
|||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import net.minemora.entitytrackerfixer.v1_14_R1.entityTick.EntityTickWorldCache;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.craftbukkit.v1_14_R1.CraftWorld;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
|
@ -53,6 +54,14 @@ public class UntrackerTask extends BukkitRunnable {
|
|||
if(Bukkit.getWorld(worldName) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
if(ConfigMain.isDisableTickUntracked()){
|
||||
if(!EntityTickManager.getInstance().getCache().containsKey(worldName)){
|
||||
EntityTickManager.getInstance().getCache().put(worldName,
|
||||
new EntityTickWorldCache(((CraftWorld)Bukkit.getWorld(worldName)).getHandle()));
|
||||
}
|
||||
}
|
||||
|
||||
//Set<net.minecraft.server.v1_14_R1.Entity> toRemove = new HashSet<>();
|
||||
Set<Integer> toRemove = new HashSet<>();
|
||||
int removed = 0;
|
||||
|
|
|
@ -4,6 +4,7 @@ import java.lang.reflect.Field;
|
|||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import net.minemora.entitytrackerfixer.v1_15_R1.entityTick.EntityTickWorldCache;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.craftbukkit.v1_15_R1.CraftWorld;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
|
@ -51,6 +52,14 @@ public class UntrackerTask extends BukkitRunnable {
|
|||
if(Bukkit.getWorld(worldName) == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
if(ConfigMain.isDisableTickUntracked()){
|
||||
if(!EntityTickManager.getInstance().getCache().containsKey(worldName)){
|
||||
EntityTickManager.getInstance().getCache().put(worldName,
|
||||
new EntityTickWorldCache(((CraftWorld)Bukkit.getWorld(worldName)).getHandle()));
|
||||
}
|
||||
}
|
||||
|
||||
//Set<net.minecraft.server.v1_14_R1.Entity> toRemove = new HashSet<>();
|
||||
Set<Integer> toRemove = new HashSet<>();
|
||||
int removed = 0;
|
||||
|
|
Loading…
Reference in New Issue