LimboManager/src/main/java/wtf/beatrice/limbomanager/LimboManager.java

63 lines
2.0 KiB
Java

package wtf.beatrice.limbomanager;
import org.bukkit.Bukkit;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import wtf.beatrice.limbomanager.listeners.CommandCanceller;
import wtf.beatrice.limbomanager.listeners.PlayerChecker;
import wtf.beatrice.limbomanager.listeners.PlayerTeleporter;
import wtf.beatrice.limbomanager.listeners.RiskyBlocksHandler;
import wtf.beatrice.limbomanager.objects.LocationCheckRunnable;
import java.io.File;
public class LimboManager extends JavaPlugin {
private PluginManager pluginManager;
private static String schematicsFolderPath;
private static LimboManager instance;
@Override
public void onEnable()
{
instance = this;
pluginManager = Bukkit.getServer().getPluginManager();
pluginManager.registerEvents(new PlayerChecker(), this);
pluginManager.registerEvents(new PlayerTeleporter(), this);
pluginManager.registerEvents(new CommandCanceller(), this);
pluginManager.registerEvents(new RiskyBlocksHandler(), this);
// no need to check if it exists, it will just skip creation.
getDataFolder().mkdirs();
schematicsFolderPath = getDataFolder().getAbsolutePath() + File.separator + "schematics";
getSchematicsFolder().mkdirs();
// start location check runnable
Cache.locationCheckRunnable = new LocationCheckRunnable();
Cache.locationCheckRunnable.task = Bukkit.getScheduler().runTaskTimerAsynchronously(this, Cache.locationCheckRunnable, 10L, 5L);
}
@Override
public void onDisable()
{
// cancel running tasks
if(Cache.locationCheckRunnable != null && Cache.locationCheckRunnable.task != null)
{
Bukkit.getScheduler().cancelTask(Cache.locationCheckRunnable.task.getTaskId());
}
}
public static LimboManager getInstance()
{
return instance;
}
public static File getSchematicsFolder() {
return new File(schematicsFolderPath);
}
}