diff options
Diffstat (limited to 'src/main/kotlin/io/dico/parcels2/util/PluginScheduler.kt')
-rw-r--r-- | src/main/kotlin/io/dico/parcels2/util/PluginScheduler.kt | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/main/kotlin/io/dico/parcels2/util/PluginScheduler.kt b/src/main/kotlin/io/dico/parcels2/util/PluginScheduler.kt new file mode 100644 index 0000000..f29ba2b --- /dev/null +++ b/src/main/kotlin/io/dico/parcels2/util/PluginScheduler.kt @@ -0,0 +1,20 @@ +package io.dico.parcels2.util + +import org.bukkit.plugin.Plugin +import org.bukkit.scheduler.BukkitTask + +interface PluginScheduler { + val plugin: Plugin + + fun schedule(delay: Int, task: () -> Unit): BukkitTask { + return plugin.server.scheduler.runTaskLater(plugin, task, delay.toLong()) + } + + fun scheduleRepeating(delay: Int, interval: Int, task: () -> Unit): BukkitTask { + return plugin.server.scheduler.runTaskTimer(plugin, task, delay.toLong(), interval.toLong()) + } +} + +@Suppress("NOTHING_TO_INLINE") +inline fun PluginScheduler.schedule(noinline task: () -> Unit) = schedule(0, task) + |