Spigot Plugin
InventoryViewerPlugin
maak een plugin /invsee (speler) dat ik zijn inventory dan kan zien met een command, het command mag alleen ops kunnen
src/main/java/eu/codexe/inventoryviewer/InventoryViewerPlugin.java
package eu.codexe.inventoryviewer;
import eu.codexe.inventoryviewer.commands.InvseeCommand;
import eu.codexe.inventoryviewer.listeners.InventoryViewListener;
import eu.codexe.inventoryviewer.managers.InventoryViewManager;
import eu.codexe.inventoryviewer.utils.ConfigManager;
import org.bukkit.command.PluginCommand;
import org.bukkit.plugin.java.JavaPlugin;
public final class InventoryViewerPlugin extends JavaPlugin {
private ConfigManager configManager;
private InventoryViewManager inventoryViewManager;
@Override
public void onEnable() {
saveDefaultConfig();
this.configManager = new ConfigManager(this);
this.inventoryViewManager = new InventoryViewManager(this, configManager);
InvseeCommand invseeCommand = new InvseeCommand(this, inventoryViewManager, configManager);
PluginCommand command = getCommand("invsee");
if (command == null) {
getLogger().severe("Command 'invsee' staat niet in plugin.yml.");
getServer().getPluginManager().disablePlugin(this);
return;
}
command.setExecutor(invseeCommand);
command.setTabCompleter(invseeCommand);
getServer().getPluginManager().registerEvents(
new InventoryViewListener(inventoryViewManager, configManager),
this
);
getLogger().info("InventoryViewerPlugin is ingeschakeld.");
}
@Override
public void onDisable() {
if (inventoryViewManager != null) {
inventoryViewManager.closeTrackedInventories();
}
getLogger().info("InventoryViewerPlugin is uitgeschakeld.");
}
public ConfigManager getConfigManager() {
return configManager;
}
public InventoryViewManager getInventoryViewManager() {
return inventoryViewManager;
}
}