Spigot Plugin
ZgloszeniaGUI
plugin Polski o zgloszeniu w gui gracz po wpisaniu /zglos (nick gracza samo daje nicki) wyswietla sie gui na ekranie i jest do wybrania opcja cheaty brak kultury promowanie i gracz wybiera i admin z permisja ktora ma byc zgloszenia psitulasek wyswietli sie na chat wiadomosc jest jedno aktywne zgloszenie sprawdz i po wpisaniu /zgloszenia daje mu gui z zgloszonymi greaczami oraz opcja i nickiem zgloszonego
src/main/java/eu/codexe/zgloszeniagui/ZgloszeniaGUIPlugin.java
package eu.codexe.zgloszeniagui;
import eu.codexe.zgloszeniagui.commands.ReportAdminCommand;
import eu.codexe.zgloszeniagui.commands.ReportCommand;
import eu.codexe.zgloszeniagui.gui.AdminReportsGui;
import eu.codexe.zgloszeniagui.gui.ReportReasonGui;
import eu.codexe.zgloszeniagui.listeners.InventoryClickListener;
import eu.codexe.zgloszeniagui.listeners.PlayerQuitListener;
import eu.codexe.zgloszeniagui.managers.ReportManager;
import eu.codexe.zgloszeniagui.utils.ConfigManager;
import eu.codexe.zgloszeniagui.utils.MessageUtil;
import org.bukkit.command.PluginCommand;
import org.bukkit.plugin.java.JavaPlugin;
import java.util.Objects;
public final class ZgloszeniaGUIPlugin extends JavaPlugin {
private ConfigManager configManager;
private MessageUtil messageUtil;
private ReportManager reportManager;
private ReportReasonGui reportReasonGui;
private AdminReportsGui adminReportsGui;
@Override
public void onEnable() {
saveDefaultConfig();
this.configManager = new ConfigManager(this);
this.messageUtil = new MessageUtil(this, configManager);
this.reportManager = new ReportManager(this, configManager, messageUtil);
this.reportReasonGui = new ReportReasonGui(this, configManager, messageUtil, reportManager);
this.adminReportsGui = new AdminReportsGui(this, configManager, messageUtil, reportManager);
registerCommands();
registerListeners();
getLogger().info("ZgloszeniaGUI zostal wlaczony.");
}
@Override
public void onDisable() {
if (reportManager != null) {
reportManager.shutdown();
}
}
private void registerCommands() {
PluginCommand report = Objects.requireNonNull(getCommand("zglos"), "Brak komendy zglos w plugin.yml");
ReportCommand reportCommand = new ReportCommand(this, configManager, messageUtil, reportReasonGui);
report.setExecutor(reportCommand);
report.setTabCompleter(reportCommand);
PluginCommand reports = Objects.requireNonNull(getCommand("zgloszenia"), "Brak komendy zgloszenia w plugin.yml");
ReportAdminCommand adminCommand = new ReportAdminCommand(this, configManager, messageUtil, adminReportsGui);
reports.setExecutor(adminCommand);
reports.setTabCompleter(adminCommand);
}
private void registerListeners() {