1.0.0
This commit is contained in:
104
src/main/java/com/playerblocklife/PlayerBlockLife.java
Normal file
104
src/main/java/com/playerblocklife/PlayerBlockLife.java
Normal file
@@ -0,0 +1,104 @@
|
||||
package com.playerblocklife;
|
||||
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
import java.util.logging.Level;
|
||||
|
||||
public class PlayerBlockLife extends JavaPlugin {
|
||||
private static PlayerBlockLife instance;
|
||||
private PlayerBlockManager blockManager;
|
||||
private SkinManager skinManager;
|
||||
private LifeSystem lifeSystem;
|
||||
private ConfigManager configManager;
|
||||
|
||||
// 在 PlayerBlockLife.java 中添加:
|
||||
|
||||
@Override
|
||||
public void reloadConfig() {
|
||||
super.reloadConfig();
|
||||
configManager.reloadConfig();
|
||||
getLogger().info("配置已重新加载");
|
||||
}
|
||||
@Override
|
||||
public void onEnable() {
|
||||
instance = this;
|
||||
saveDefaultConfig();
|
||||
|
||||
this.configManager = new ConfigManager(this);
|
||||
this.skinManager = new SkinManager(this);
|
||||
this.blockManager = new PlayerBlockManager(this, skinManager);
|
||||
this.lifeSystem = new LifeSystem(this);
|
||||
|
||||
getServer().getPluginManager().registerEvents(new BlockBreakListener(this), this);
|
||||
getServer().getPluginManager().registerEvents(new PlayerJoinListener(this), this);
|
||||
getServer().getPluginManager().registerEvents(new PlayerQuitListener(this), this);
|
||||
|
||||
getCommand("setlifeblocks").setExecutor(new SetLifeBlocksCommand(this));
|
||||
getCommand("checklifeblocks").setExecutor(new CheckLifeBlocksCommand(this));
|
||||
getCommand("pblreload").setExecutor(new AdminCommands(this));
|
||||
getCommand("pbldelete").setExecutor(new AdminCommands(this));
|
||||
|
||||
blockManager.loadData();
|
||||
skinManager.loadAllSkins();
|
||||
|
||||
startScheduler();
|
||||
|
||||
getLogger().info("§a========================================");
|
||||
getLogger().info("§ePlayerBlockLife v" + getDescription().getVersion() + " 已启用");
|
||||
getLogger().info("§e作者: " + getDescription().getAuthors());
|
||||
getLogger().info("§a========================================");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDisable() {
|
||||
if (blockManager != null) {
|
||||
blockManager.saveData();
|
||||
}
|
||||
if (skinManager != null) {
|
||||
skinManager.saveSkinData();
|
||||
}
|
||||
getLogger().info("§cPlayerBlockLife 插件已禁用");
|
||||
}
|
||||
|
||||
private void startScheduler() {
|
||||
getServer().getScheduler().runTaskTimerAsynchronously(this, () -> {
|
||||
blockManager.saveData();
|
||||
skinManager.saveSkinData();
|
||||
}, 6000L, 6000L);
|
||||
|
||||
getServer().getScheduler().runTaskTimer(this, () -> {
|
||||
lifeSystem.checkAllPlayers();
|
||||
}, 200L, 200L);
|
||||
}
|
||||
|
||||
public static PlayerBlockLife getInstance() {
|
||||
return instance;
|
||||
}
|
||||
|
||||
public PlayerBlockManager getBlockManager() {
|
||||
return blockManager;
|
||||
}
|
||||
|
||||
public SkinManager getSkinManager() {
|
||||
return skinManager;
|
||||
}
|
||||
|
||||
public LifeSystem getLifeSystem() {
|
||||
return lifeSystem;
|
||||
}
|
||||
|
||||
public ConfigManager getConfigManager() {
|
||||
return configManager;
|
||||
}
|
||||
|
||||
public void logInfo(String message) {
|
||||
getLogger().info(message);
|
||||
}
|
||||
|
||||
public void logWarning(String message) {
|
||||
getLogger().warning(message);
|
||||
}
|
||||
|
||||
public void logError(String message, Throwable throwable) {
|
||||
getLogger().log(Level.SEVERE, message, throwable);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user