diff options
author | stevenh <steven.hartland@multiplay.co.uk> | 2011-05-22 20:24:44 +0100 |
---|---|---|
committer | stevenh <steven.hartland@multiplay.co.uk> | 2011-05-22 20:30:01 +0100 |
commit | 8b0924bbb449d1bf7d38d1d4743b383ba0ae0471 (patch) | |
tree | 2255e95b111a1f482a6268c54ec1c249f8a18aa3 /src/main/java/net/minecraft | |
parent | 6319a19073b10bc5f2d16ac7ce104b5ced267cdc (diff) | |
download | craftbukkit-8b0924bbb449d1bf7d38d1d4743b383ba0ae0471.tar craftbukkit-8b0924bbb449d1bf7d38d1d4743b383ba0ae0471.tar.gz craftbukkit-8b0924bbb449d1bf7d38d1d4743b383ba0ae0471.tar.lz craftbukkit-8b0924bbb449d1bf7d38d1d4743b383ba0ae0471.tar.xz craftbukkit-8b0924bbb449d1bf7d38d1d4743b383ba0ae0471.zip |
Fixed duplicate console and player messages when built in server commands where used or an unknown command was issued
Diffstat (limited to 'src/main/java/net/minecraft')
-rw-r--r-- | src/main/java/net/minecraft/server/ConsoleCommandHandler.java | 35 | ||||
-rw-r--r-- | src/main/java/net/minecraft/server/NetServerHandler.java | 14 |
2 files changed, 39 insertions, 10 deletions
diff --git a/src/main/java/net/minecraft/server/ConsoleCommandHandler.java b/src/main/java/net/minecraft/server/ConsoleCommandHandler.java index eb48f2d9..d6f3bfb3 100644 --- a/src/main/java/net/minecraft/server/ConsoleCommandHandler.java +++ b/src/main/java/net/minecraft/server/ConsoleCommandHandler.java @@ -3,6 +3,12 @@ package net.minecraft.server; import java.util.Iterator; import java.util.Set; import java.util.logging.Logger; +// Craftbukkit start +import java.util.List; +import org.bukkit.craftbukkit.command.ServerCommandListener; +import org.bukkit.craftbukkit.entity.CraftPlayer; +import org.bukkit.command.CommandSender; +// Craftbukkit end public class ConsoleCommandHandler { @@ -286,13 +292,38 @@ public class ConsoleCommandHandler { } private void print(String s, String s1) { - listener.sendMessage(s1); // CraftBukkit String s2 = s + ": " + s1; - this.server.serverConfigurationManager.j("\u00A77(" + s2 + ")"); + // CraftBukkit start + listener.sendMessage(s1); + informOps("\u00A77(" + s2 + ")"); + if (listener instanceof MinecraftServer) { + return; // Already logged so don't call a.info() + } + // CraftBukkit end a.info(s2); } + // CraftBukkit start + private void informOps(String msg) { + Packet3Chat packet3chat = new Packet3Chat(msg); + EntityPlayer sender = null; + if (listener instanceof ServerCommandListener) { + CommandSender commandSender = ((ServerCommandListener) listener).getSender(); + if (commandSender instanceof CraftPlayer) { + sender = ((CraftPlayer) commandSender).getHandle(); + } + } + List<EntityPlayer> players = server.serverConfigurationManager.players; + for (int i = 0; i < players.size(); ++i) { + EntityPlayer entityPlayer = (EntityPlayer) players.get(i); + if (sender != entityPlayer && server.serverConfigurationManager.isOp(entityPlayer.name)) { + entityPlayer.netServerHandler.sendPacket(packet3chat); + } + } + } + // CraftBukkit end + private int a(String s, int i) { try { return Integer.parseInt(s); diff --git a/src/main/java/net/minecraft/server/NetServerHandler.java b/src/main/java/net/minecraft/server/NetServerHandler.java index a63b4c97..98b6d29c 100644 --- a/src/main/java/net/minecraft/server/NetServerHandler.java +++ b/src/main/java/net/minecraft/server/NetServerHandler.java @@ -695,19 +695,15 @@ public class NetServerHandler extends NetHandler implements ICommandListener { return; } - boolean targetPluginFound = false; - try { - targetPluginFound = server.dispatchCommand(player, s.substring(1)); + if (server.dispatchCommand(player, s.substring(1))) { + return; + } } catch (CommandException ex) { player.sendMessage(ChatColor.RED + "An internal error occurred while attempting to perform this command"); Logger.getLogger(NetServerHandler.class.getName()).log(Level.SEVERE, null, ex); return; } - - if (targetPluginFound) { - return; - } // CraftBukkit end if (s.toLowerCase().startsWith("/me ")) { @@ -728,9 +724,10 @@ public class NetServerHandler extends NetHandler implements ICommandListener { this.sendPacket(new Packet3Chat("\u00A7cThere\'s no player by that name online.")); } } + + /* CraftBukkit start - No longer neaded as we have already handled it server.dispatchCommand above. } else { String s1; - if (this.minecraftServer.serverConfigurationManager.isOp(this.player.name)) { s1 = s.substring(1); a.info(this.player.name + " issued server command: " + s1); @@ -739,6 +736,7 @@ public class NetServerHandler extends NetHandler implements ICommandListener { s1 = s.substring(1); a.info(this.player.name + " tried command: " + s1); } + */ // CraftBukkit end } } |