mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-29 04:17:44 +01:00
Added registration of plugin commands on plugin load.
This commit is contained in:
parent
78cd77ef71
commit
7ea93a1105
@ -18,6 +18,7 @@ import org.bukkit.event.block.BlockRightClickEvent;
|
|||||||
import org.bukkit.event.player.PlayerChatEvent;
|
import org.bukkit.event.player.PlayerChatEvent;
|
||||||
import org.bukkit.event.player.PlayerItemEvent;
|
import org.bukkit.event.player.PlayerItemEvent;
|
||||||
import org.bukkit.event.player.PlayerMoveEvent;
|
import org.bukkit.event.player.PlayerMoveEvent;
|
||||||
|
import org.bukkit.plugin.Plugin;
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
|
|
||||||
public class NetServerHandler extends NetHandler implements ICommandListener {
|
public class NetServerHandler extends NetHandler implements ICommandListener {
|
||||||
@ -536,6 +537,11 @@ public class NetServerHandler extends NetHandler implements ICommandListener {
|
|||||||
|
|
||||||
private void c(String s) {
|
private void c(String s) {
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
|
boolean targetPluginFound = server.dispatchCommand(player, s);
|
||||||
|
if (targetPluginFound) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
PlayerChatEvent event = new PlayerChatEvent(Type.PLAYER_COMMAND, player, s);
|
PlayerChatEvent event = new PlayerChatEvent(Type.PLAYER_COMMAND, player, s);
|
||||||
server.getPluginManager().callEvent(event);
|
server.getPluginManager().callEvent(event);
|
||||||
if (event.isCancelled()) {
|
if (event.isCancelled()) {
|
||||||
|
@ -10,8 +10,10 @@ import net.minecraft.server.EntityPlayerMP;
|
|||||||
import net.minecraft.server.MinecraftServer;
|
import net.minecraft.server.MinecraftServer;
|
||||||
import net.minecraft.server.ServerConfigurationManager;
|
import net.minecraft.server.ServerConfigurationManager;
|
||||||
import org.bukkit.*;
|
import org.bukkit.*;
|
||||||
|
import org.bukkit.plugin.CommandManager;
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
import org.bukkit.plugin.PluginManager;
|
import org.bukkit.plugin.PluginManager;
|
||||||
|
import org.bukkit.plugin.SimpleCommandManager;
|
||||||
import org.bukkit.plugin.SimplePluginManager;
|
import org.bukkit.plugin.SimplePluginManager;
|
||||||
import org.bukkit.plugin.java.JavaPluginLoader;
|
import org.bukkit.plugin.java.JavaPluginLoader;
|
||||||
|
|
||||||
@ -19,6 +21,7 @@ public final class CraftServer implements Server {
|
|||||||
private final String serverName = "Craftbukkit";
|
private final String serverName = "Craftbukkit";
|
||||||
private final String serverVersion = "1.2_01";
|
private final String serverVersion = "1.2_01";
|
||||||
private final PluginManager pluginManager = new SimplePluginManager(this);
|
private final PluginManager pluginManager = new SimplePluginManager(this);
|
||||||
|
private final CommandManager commandManager = new SimpleCommandManager();
|
||||||
|
|
||||||
protected final MinecraftServer console;
|
protected final MinecraftServer console;
|
||||||
protected final ServerConfigurationManager server;
|
protected final ServerConfigurationManager server;
|
||||||
@ -38,7 +41,11 @@ public final class CraftServer implements Server {
|
|||||||
Plugin[] plugins = pluginManager.loadPlugins(pluginFolder);
|
Plugin[] plugins = pluginManager.loadPlugins(pluginFolder);
|
||||||
|
|
||||||
for (Plugin plugin : plugins) {
|
for (Plugin plugin : plugins) {
|
||||||
|
if (commandManager.registerCommands(plugin)) {
|
||||||
pluginManager.enablePlugin(plugin);
|
pluginManager.enablePlugin(plugin);
|
||||||
|
} else {
|
||||||
|
Logger.getLogger(CraftServer.class.getName()).log(Level.SEVERE, "Plugin " + plugin.getDescription().getName() + " failed to load. Reason: Requested commands already in use.");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} catch (Throwable ex) {
|
} catch (Throwable ex) {
|
||||||
Logger.getLogger(CraftServer.class.getName()).log(Level.SEVERE, ex.getMessage() + " (Is it up to date?)", ex);
|
Logger.getLogger(CraftServer.class.getName()).log(Level.SEVERE, ex.getMessage() + " (Is it up to date?)", ex);
|
||||||
@ -133,4 +140,8 @@ public final class CraftServer implements Server {
|
|||||||
public ServerConfigurationManager getHandle() {
|
public ServerConfigurationManager getHandle() {
|
||||||
return server;
|
return server;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean dispatchCommand(Player player, String cmd) {
|
||||||
|
return commandManager.dispatchCommand(player, cmd);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user