Better update for the User object player reference.

This commit is contained in:
ElgarL 2012-06-16 19:12:54 +01:00
parent 78d4987d5d
commit 5683ea35fc
2 changed files with 6 additions and 14 deletions

View file

@ -256,15 +256,10 @@ public class User extends DataUnit implements Cloneable {
} }
} }
public void clearPlayer() {
bukkitPlayer = null;
}
public User updatePlayer(Player player) { public User updatePlayer(Player player) {
if (player != null) {
bukkitPlayer = player; bukkitPlayer = player;
}
return this; return this;
} }

View file

@ -146,6 +146,11 @@ public class BukkitPermissions {
return; return;
} }
// Reset the User objects player reference.
User user = plugin.getWorldsHolder().getWorldData(player.getWorld().getName()).getUser(player.getName());
if (user != null)
user.updatePlayer(player);
PermissionAttachment attachment; PermissionAttachment attachment;
// Find the players current attachment, or add a new one. // Find the players current attachment, or add a new one.
@ -442,10 +447,6 @@ public class BukkitPermissions {
Player player = event.getPlayer(); Player player = event.getPlayer();
User user = plugin.getWorldsHolder().getWorldData(player.getWorld().getName()).getUser(player.getName());
if (user != null)
user.clearPlayer();
/* /*
* force remove any attachments as bukkit may not * force remove any attachments as bukkit may not
*/ */
@ -460,10 +461,6 @@ public class BukkitPermissions {
Player player = event.getPlayer(); Player player = event.getPlayer();
User user = plugin.getWorldsHolder().getWorldData(player.getWorld().getName()).getUser(player.getName());
if (user != null)
user.clearPlayer();
/* /*
* force remove any attachments as bukkit may not * force remove any attachments as bukkit may not
*/ */