Merge pull request #32 from D3v1s0m/entity-system-rewrite

Fixed Folia support
This commit is contained in:
Pyr 2023-04-30 14:36:26 +01:00 committed by GitHub
commit 4c594c1e9c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 22 additions and 9 deletions

@ -12,4 +12,6 @@ public abstract class TaskScheduler {
public abstract void runAsync(Runnable runnable); public abstract void runAsync(Runnable runnable);
public abstract void runLaterAsync(Runnable runnable, long ticks); public abstract void runLaterAsync(Runnable runnable, long ticks);
public abstract void runDelayedTimerAsync(Runnable runnable, long delay, long ticks);
} }

@ -19,4 +19,9 @@ public class FoliaScheduler extends TaskScheduler {
public void runLaterAsync(Runnable runnable, long ticks) { public void runLaterAsync(Runnable runnable, long ticks) {
Bukkit.getAsyncScheduler().runDelayed(plugin, task -> runnable.run(), ticks * 50, TimeUnit.MILLISECONDS); Bukkit.getAsyncScheduler().runDelayed(plugin, task -> runnable.run(), ticks * 50, TimeUnit.MILLISECONDS);
} }
@Override
public void runDelayedTimerAsync(Runnable runnable, long delay, long ticks) {
Bukkit.getAsyncScheduler().runAtFixedRate(plugin, task -> runnable.run(), delay * 50, ticks * 50, TimeUnit.MILLISECONDS);
}
} }

@ -124,9 +124,9 @@ public class ZNPCsPlus extends JavaPlugin {
Bukkit.getOnlinePlayers().forEach(User::get); Bukkit.getOnlinePlayers().forEach(User::get);
log(ChatColor.WHITE + " * Starting tasks..."); log(ChatColor.WHITE + " * Starting tasks...");
new NPCVisibilityTask(this); new NPCVisibilityTask();
new InventoryListener(this); new InventoryListener(this);
new SkinCacheCleanTask(this); new SkinCacheCleanTask();
new UserListener(this); new UserListener(this);
if (Configs.config().checkForUpdates()) new UpdateNotificationListener(this, new UpdateChecker(this)); if (Configs.config().checkForUpdates()) new UpdateNotificationListener(this, new UpdateChecker(this));

@ -17,4 +17,9 @@ public class SpigotScheduler extends TaskScheduler {
public void runLaterAsync(Runnable runnable, long ticks) { public void runLaterAsync(Runnable runnable, long ticks) {
Bukkit.getScheduler().runTaskLaterAsynchronously(plugin, runnable, ticks); Bukkit.getScheduler().runTaskLaterAsynchronously(plugin, runnable, ticks);
} }
@Override
public void runDelayedTimerAsync(Runnable runnable, long delay, long ticks) {
Bukkit.getScheduler().runTaskTimerAsynchronously(plugin, runnable, delay, ticks);
}
} }

@ -4,8 +4,8 @@ import lol.pyr.znpcsplus.ZNPCsPlus;
import org.bukkit.scheduler.BukkitRunnable; import org.bukkit.scheduler.BukkitRunnable;
public class SkinCacheCleanTask extends BukkitRunnable { public class SkinCacheCleanTask extends BukkitRunnable {
public SkinCacheCleanTask(ZNPCsPlus plugin) { public SkinCacheCleanTask() {
runTaskTimerAsynchronously(plugin, 1200, 1200); ZNPCsPlus.SCHEDULER.runDelayedTimerAsync(this, 1200, 1200);
} }
@Override @Override

@ -1,17 +1,17 @@
package lol.pyr.znpcsplus.tasks; package lol.pyr.znpcsplus.tasks;
import lol.pyr.znpcsplus.ZNPCsPlus;
import lol.pyr.znpcsplus.config.Configs; import lol.pyr.znpcsplus.config.Configs;
import lol.pyr.znpcsplus.npc.NPC; import lol.pyr.znpcsplus.npc.NPC;
import lol.pyr.znpcsplus.npc.NPCRegistry; import lol.pyr.znpcsplus.npc.NPCRegistry;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
import org.bukkit.scheduler.BukkitRunnable; import org.bukkit.scheduler.BukkitRunnable;
import org.bukkit.util.NumberConversions; import org.bukkit.util.NumberConversions;
public class NPCVisibilityTask extends BukkitRunnable { public class NPCVisibilityTask extends BukkitRunnable {
public NPCVisibilityTask(Plugin plugin) { public NPCVisibilityTask() {
runTaskTimerAsynchronously(plugin, 60L, 10L); ZNPCsPlus.SCHEDULER.runDelayedTimerAsync(this, 60L, 10L);
} }
public void run() { public void run() {

@ -18,7 +18,7 @@ public class UpdateChecker extends BukkitRunnable {
public UpdateChecker(ZNPCsPlus plugin) { public UpdateChecker(ZNPCsPlus plugin) {
this.plugin = plugin; this.plugin = plugin;
runTaskTimerAsynchronously(plugin, 5L, 6000L); ZNPCsPlus.SCHEDULER.runDelayedTimerAsync(this, 5L, 6000L);
} }
public void run() { public void run() {

@ -13,3 +13,4 @@ softdepend:
- ViaRewind - ViaRewind
- Geyser-Spigot - Geyser-Spigot
authors: [gonalez (g0b#3830), Pyr (Pyr#6969)] authors: [gonalez (g0b#3830), Pyr (Pyr#6969)]
folia-supported: true