PlayerUtils/src/main/java/com/alttd/playerutils/PlayerUtils.java

66 lines
2.3 KiB
Java
Raw Normal View History

2023-07-06 03:24:06 +00:00
package com.alttd.playerutils;
import com.alttd.playerutils.commands.PlayerUtilsCommand;
import com.alttd.playerutils.commands.playerutils_subcommands.GhastSpeed;
2023-07-08 04:26:01 +00:00
import com.alttd.playerutils.commands.playerutils_subcommands.RotateBlock;
2023-07-07 21:49:34 +00:00
import com.alttd.playerutils.config.Config;
import com.alttd.playerutils.config.KeyStorage;
2023-07-07 21:49:34 +00:00
import com.alttd.playerutils.config.Messages;
import com.alttd.playerutils.event_listeners.*;
import org.bukkit.Bukkit;
import org.bukkit.plugin.PluginManager;
2023-07-06 03:24:06 +00:00
import org.bukkit.plugin.java.JavaPlugin;
import java.util.concurrent.TimeUnit;
2023-07-06 03:24:06 +00:00
public final class PlayerUtils extends JavaPlugin {
2023-07-08 04:26:01 +00:00
private PlayerUtilsCommand playerUtilsCommand;
2023-07-06 03:24:06 +00:00
@Override
public void onEnable() {
registerCommands();
registerEvents();
2023-07-08 22:24:58 +00:00
reloadConfigs();
registerSchedulers();
2023-07-06 03:24:06 +00:00
}
@Override
public void onDisable() {
KeyStorage.STORAGE.save();
2023-07-06 03:24:06 +00:00
}
private void registerCommands() {
playerUtilsCommand = new PlayerUtilsCommand(this);
2023-07-06 03:24:06 +00:00
}
private void registerEvents() {
PluginManager pluginManager = getServer().getPluginManager();
pluginManager.registerEvents(new XpBottleEvent(this), this);
pluginManager.registerEvents(new TeleportEvent(), this);
pluginManager.registerEvents(new GoatHornEvent(), this);
pluginManager.registerEvents(new LimitArmorStands(this), this);
pluginManager.registerEvents(new BlockBlockUseEvent(), this);
pluginManager.registerEvents(new PlayerJoin(this), this);
2023-07-08 04:26:01 +00:00
RotateBlockEvent rotateBlockEvent = new RotateBlockEvent();
pluginManager.registerEvents(rotateBlockEvent, this);
2023-07-08 04:26:01 +00:00
playerUtilsCommand.addSubCommand(new RotateBlock(rotateBlockEvent));
GhastSpeedEvent ghastSpeedEvent = new GhastSpeedEvent();
pluginManager.registerEvents(ghastSpeedEvent, this);
playerUtilsCommand.addSubCommand(new GhastSpeed(ghastSpeedEvent));
2023-07-06 03:24:06 +00:00
}
2023-07-07 21:49:34 +00:00
public void reloadConfigs() {
Config.reload();
Messages.reload();
KeyStorage.reload();
}
private void registerSchedulers() {
Bukkit.getScheduler().runTaskTimerAsynchronously(this, KeyStorage.STORAGE::save,
TimeUnit.MINUTES.toSeconds(5) * 20, TimeUnit.MINUTES.toSeconds(5) * 20);
2023-07-07 21:49:34 +00:00
}
2023-07-06 03:24:06 +00:00
}