# MinecraftPluginUtils ## Usage ### Maven ```xml lunadeer-repo https://ssl.lunadeer.cn:14454/repository/maven-snapshots/ cn.lunadeer MinecraftPluginUtils 1.3.4-SNAPSHOT ``` ### Gradle ```groovy repositories { maven { url 'https://ssl.lunadeer.cn:14454/repository/maven-snapshots/' } } dependencies { implementation 'cn.lunadeer:MinecraftPluginUtils:1.3.0-SNAPSHOT' } ``` ```kotlin import cn.lunadeer.MinecraftPluginUtils ``` ## Example ### Logger ```java import cn.lunadeer.minecraftpluginutils.XLogger; public final class YourPlugin extends JavaPlugin { @Override public void onEnable() { new XLogger(this); // Initialize the logger with the plugin instance once XLogger.setDebug(true); // Enable debug mode if needed XLogger.info("Hello, world!"); // Call the static method XLogger.warn("This is a %s", "warning"); // Call the static method with format } } ``` ### Notification ```java import cn.lunadeer.minecraftpluginutils.Notification; public final class YourPlugin extends JavaPlugin { @Override public void onEnable() { new Notification(this); // Initialize the notification with the plugin instance once Bukkit.getPluginManager().registerEvents(new PlayerEvents(), this); } public class PlayerEvents implements Listener { @EventHandler public void onPlayerJoin(PlayerJoinEvent event) { Notification.info(event.getPlayer(), "Welcome to the server!"); // Send a notification to the player Notification.all("Greetings from %s!", event.getPlayer().getName()); // Send a notification to all players } } } ``` ### Scheduler ```java import cn.lunadeer.minecraftpluginutils.Scheduler; public final class YourPlugin extends JavaPlugin { @Override public void onEnable() { new Scheduler(this); // Initialize the scheduler with the plugin instance once Scheduler.runTaskLater(() -> { XLogger.info("Hello, world!"); // Call the static method }, 20L); // Delay 20 ticks } @Override public void onDisable() { Scheduler.cancelAll(); // Cancel all tasks to prevent memory leaks } } ```