diff options
author | Dinnerbone <dinnerbone@dinnerbone.com> | 2010-12-30 05:35:30 +0000 |
---|---|---|
committer | Dinnerbone <dinnerbone@dinnerbone.com> | 2010-12-30 05:35:30 +0000 |
commit | a06303621022b97cbf19d3fb2754781c18152d1a (patch) | |
tree | ce155e0fa4f858a56317e258d757f8a4ea794a3c /src/net | |
parent | bd53a823d2213af917a0065e64e20901b5974d80 (diff) | |
download | craftbukkit-a06303621022b97cbf19d3fb2754781c18152d1a.tar craftbukkit-a06303621022b97cbf19d3fb2754781c18152d1a.tar.gz craftbukkit-a06303621022b97cbf19d3fb2754781c18152d1a.tar.lz craftbukkit-a06303621022b97cbf19d3fb2754781c18152d1a.tar.xz craftbukkit-a06303621022b97cbf19d3fb2754781c18152d1a.zip |
Fixed player handle being reset on death or disconnection
Diffstat (limited to 'src/net')
-rw-r--r-- | src/net/minecraft/server/NetServerHandler.java | 22 | ||||
-rw-r--r-- | src/net/minecraft/server/ServerConfigurationManager.java | 3 |
2 files changed, 18 insertions, 7 deletions
diff --git a/src/net/minecraft/server/NetServerHandler.java b/src/net/minecraft/server/NetServerHandler.java index a745b030..02ac31d7 100644 --- a/src/net/minecraft/server/NetServerHandler.java +++ b/src/net/minecraft/server/NetServerHandler.java @@ -27,7 +27,10 @@ public class NetServerHandler extends NetHandler private double i; private boolean j; private Map k; - private final CraftServer server; // CraftBukkit + + // CraftBukkit - next 2 lines + private final CraftServer server; + private final CraftPlayer player; public NetServerHandler(MinecraftServer minecraftserver, NetworkManager networkmanager, EntityPlayerMP entityplayermp) { c = false; @@ -39,8 +42,17 @@ public class NetServerHandler extends NetHandler networkmanager.a(this); e = entityplayermp; entityplayermp.a = this; - server = minecraftserver.server; // CraftBukkit + + // CraftBukkit - next 2 lines + server = minecraftserver.server; + player = new CraftPlayer(server, e); + } + + // CraftBukkit start + public CraftPlayer getPlayer() { + return player; } + // CraftBukkit end public void a() { b.a(); @@ -67,7 +79,6 @@ public class NetServerHandler extends NetHandler } // CraftBukkit start - Player player = server.getPlayer(e); Location from = new Location(player.getWorld(), g, h, i, e.v, e.w); Location to = player.getLocation(); PlayerMoveEvent event = new PlayerMoveEvent(Type.PLAYER_MOVE, player, from, to); @@ -194,7 +205,6 @@ public class NetServerHandler extends NetHandler float f2) { // CraftBukkit start - Player player = server.getPlayer(e); Location from = player.getLocation(); Location to = new Location(player.getWorld(), d1, d2, d3, f1, f2); PlayerMoveEvent event = new PlayerMoveEvent(Type.PLAYER_TELEPORT, player, from, to); @@ -378,7 +388,7 @@ public class NetServerHandler extends NetHandler c(s); } else { // CraftBukkit start - PlayerChatEvent event = new PlayerChatEvent(Type.PLAYER_CHAT, server.getPlayer(e), s); + PlayerChatEvent event = new PlayerChatEvent(Type.PLAYER_CHAT, player, s); server.getPluginManager().callEvent(event); s = (new StringBuilder()).append("<").append(event.getPlayer().getName()).append("> ").append(event.getMessage()).toString(); // CraftBukkit stop @@ -390,7 +400,7 @@ public class NetServerHandler extends NetHandler private void c(String s) { // CraftBukkit start - PlayerChatEvent event = new PlayerChatEvent(Type.PLAYER_COMMAND, server.getPlayer(e), s); + PlayerChatEvent event = new PlayerChatEvent(Type.PLAYER_COMMAND, player, s); server.getPluginManager().callEvent(event); if (event.isCancelled()) return; s = event.getMessage(); diff --git a/src/net/minecraft/server/ServerConfigurationManager.java b/src/net/minecraft/server/ServerConfigurationManager.java index e841da97..dac524b8 100644 --- a/src/net/minecraft/server/ServerConfigurationManager.java +++ b/src/net/minecraft/server/ServerConfigurationManager.java @@ -3,6 +3,7 @@ package net.minecraft.server; import java.io.*; import java.util.*; import java.util.logging.Logger; +import org.bukkit.craftbukkit.CraftPlayer; import org.bukkit.craftbukkit.CraftServer; import org.bukkit.event.Event.Type; @@ -90,7 +91,7 @@ public class ServerConfigurationManager { // depending on the outcome. EntityPlayerMP entity = new EntityPlayerMP(c, c.e, s, new ItemInWorldManager(c.e)); - PlayerLoginEvent event = new PlayerLoginEvent(Type.PLAYER_LOGIN, server.getPlayer(entity)); + PlayerLoginEvent event = new PlayerLoginEvent(Type.PLAYER_LOGIN, new CraftPlayer(server, entity)); String s2 = netloginhandler.b.b().toString(); s2 = s2.substring(s2.indexOf("/") + 1); |