package dev.tatsi.reloadmc.smp; import dev.tatsi.reloadmc.smp.command.DeathStatsCommand; import dev.tatsi.reloadmc.smp.listener.ExplosionBlockListener; import dev.tatsi.reloadmc.smp.listener.PlayerDeathListener; import dev.tatsi.reloadmc.smp.listener.PlayerJoinLeaveListener; import dev.tatsi.reloadmc.smp.listener.PrettyChatListener; import dev.tatsi.reloadmc.smp.listener.TabPingListener; import dev.tatsi.reloadmc.smp.manager.DeathCounterManager; import org.bukkit.plugin.java.JavaPlugin; public final class ReloadMC extends JavaPlugin { private DeathCounterManager deathCounterManager; @Override public void onEnable() { // Initialize death counter manager deathCounterManager = new DeathCounterManager(this); // Register event listeners getServer().getPluginManager().registerEvents(new PrettyChatListener(), this); getServer().getPluginManager().registerEvents(new PlayerDeathListener(deathCounterManager), this); getServer().getPluginManager().registerEvents(new PlayerJoinLeaveListener(), this); getServer().getPluginManager().registerEvents(new TabPingListener(this), this); getServer().getPluginManager().registerEvents(new ExplosionBlockListener(), this); // Register commands getCommand("deathstats").setExecutor(new DeathStatsCommand(deathCounterManager)); getLogger().info("ReloadMC SMP Plugin has been enabled!"); getLogger().info("Death counter system is now active."); } @Override public void onDisable() { // Save death counter data on shutdown if (deathCounterManager != null) { deathCounterManager.shutdown(); } getLogger().info("ReloadMC SMP Plugin has been disabled!"); } public DeathCounterManager getDeathCounterManager() { return deathCounterManager; } }