From 3a224266c44a1d3890ac397f20ef128641b82f3f Mon Sep 17 00:00:00 2001 From: sunkid Date: Sun, 2 Oct 2011 11:30:05 -0700 Subject: [PATCH] Fixed PlayerChangedWorld event. Moved the call of PlayerChangedWorldEvent to more appropriate location --- .../minecraft/server/ServerConfigurationManager.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/net/minecraft/server/ServerConfigurationManager.java b/src/main/java/net/minecraft/server/ServerConfigurationManager.java index e5e296d355..c87cba3d65 100644 --- a/src/main/java/net/minecraft/server/ServerConfigurationManager.java +++ b/src/main/java/net/minecraft/server/ServerConfigurationManager.java @@ -283,10 +283,6 @@ public class ServerConfigurationManager { entityplayer1.spawnIn(worldserver); entityplayer1.dead = false; entityplayer1.netServerHandler.teleport(new Location(worldserver.getWorld(), entityplayer1.locX, entityplayer1.locY, entityplayer1.locZ, entityplayer1.yaw, entityplayer1.pitch)); - - org.bukkit.event.player.PlayerChangedWorldEvent event = new org.bukkit.event.player.PlayerChangedWorldEvent((Player) entityplayer1.getBukkitEntity(), fromWorld); - Bukkit.getServer().getPluginManager().callEvent(event); - // CraftBukkit end this.a(entityplayer1, worldserver); this.getPlayerManager(entityplayer1.dimension).addPlayer(entityplayer1); @@ -294,6 +290,12 @@ public class ServerConfigurationManager { this.players.add(entityplayer1); this.updateClient(entityplayer1); // CraftBukkit entityplayer1.w(); + // CraftBukkit start - don't fire on respawn + if (fromWorld != location.getWorld()) { + org.bukkit.event.player.PlayerChangedWorldEvent event = new org.bukkit.event.player.PlayerChangedWorldEvent((Player) entityplayer1.getBukkitEntity(), fromWorld); + Bukkit.getServer().getPluginManager().callEvent(event); + } + // CraftBukkit end return entityplayer1; }