2018-08-12 14:03:07 +00:00
|
|
|
package com.boydti.fawe.bukkit.util;
|
|
|
|
|
|
|
|
import com.boydti.fawe.util.TaskManager;
|
|
|
|
import org.apache.commons.lang.mutable.MutableInt;
|
|
|
|
import org.bukkit.Bukkit;
|
|
|
|
import org.bukkit.plugin.Plugin;
|
2019-05-29 03:23:51 +00:00
|
|
|
import org.jetbrains.annotations.NotNull;
|
2018-08-12 14:03:07 +00:00
|
|
|
|
|
|
|
public class BukkitTaskMan extends TaskManager {
|
|
|
|
|
|
|
|
private final Plugin plugin;
|
|
|
|
|
|
|
|
public BukkitTaskMan(final Plugin plugin) {
|
|
|
|
this.plugin = plugin;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2019-05-29 03:23:51 +00:00
|
|
|
public int repeat(@NotNull final Runnable runnable, final int interval) {
|
|
|
|
return this.plugin.getServer().getScheduler().scheduleSyncRepeatingTask(this.plugin, runnable, interval, interval);
|
2018-08-12 14:03:07 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2019-05-29 03:23:51 +00:00
|
|
|
public int repeatAsync(@NotNull final Runnable runnable, final int interval) {
|
|
|
|
return this.plugin.getServer().getScheduler().scheduleAsyncRepeatingTask(this.plugin, runnable, interval, interval);
|
2018-08-12 14:03:07 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
public MutableInt index = new MutableInt(0);
|
|
|
|
|
|
|
|
@Override
|
2019-05-29 03:23:51 +00:00
|
|
|
public void async(@NotNull final Runnable runnable) {
|
|
|
|
this.plugin.getServer().getScheduler().runTaskAsynchronously(this.plugin, runnable).getTaskId();
|
2018-08-12 14:03:07 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2019-05-29 03:23:51 +00:00
|
|
|
public void task(@NotNull final Runnable runnable) {
|
|
|
|
this.plugin.getServer().getScheduler().runTask(this.plugin, runnable).getTaskId();
|
2018-08-12 14:03:07 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2019-05-29 03:23:51 +00:00
|
|
|
public void later(@NotNull final Runnable runnable, final int delay) {
|
|
|
|
this.plugin.getServer().getScheduler().runTaskLater(this.plugin, runnable, delay).getTaskId();
|
2018-08-12 14:03:07 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2019-05-29 03:23:51 +00:00
|
|
|
public void laterAsync(@NotNull final Runnable runnable, final int delay) {
|
|
|
|
this.plugin.getServer().getScheduler().runTaskLaterAsynchronously(this.plugin, runnable, delay);
|
2018-08-12 14:03:07 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void cancel(final int task) {
|
|
|
|
if (task != -1) {
|
|
|
|
Bukkit.getScheduler().cancelTask(task);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|