Make sure in vault map is populated and queried with UUIDs, not names.

Resolves #116
This commit is contained in:
drtshock
2015-09-15 14:16:13 -05:00
parent 403f2bd75a
commit 32e7caf958
3 changed files with 5 additions and 5 deletions
@@ -24,7 +24,7 @@ public class VaultCommand implements CommandExecutor {
if (sender instanceof Player) { if (sender instanceof Player) {
Player player = (Player) sender; Player player = (Player) sender;
if (PlayerVaults.getInstance().getInVault().containsKey(player.getName())) { if (PlayerVaults.getInstance().getInVault().containsKey(player.getUniqueId().toString())) {
// don't let them open another vault. // don't let them open another vault.
return true; return true;
} }
@@ -102,7 +102,7 @@ public class Listeners implements Listener {
public void onInteractEntity(PlayerInteractEntityEvent event) { public void onInteractEntity(PlayerInteractEntityEvent event) {
Player player = event.getPlayer(); Player player = event.getPlayer();
EntityType type = event.getRightClicked().getType(); EntityType type = event.getRightClicked().getType();
if ((type == EntityType.VILLAGER || type == EntityType.MINECART) && PlayerVaults.getInstance().getInVault().containsKey(player.getName())) { if ((type == EntityType.VILLAGER || type == EntityType.MINECART) && PlayerVaults.getInstance().getInVault().containsKey(player.getUniqueId().toString())) {
event.setCancelled(true); event.setCancelled(true);
} }
} }
@@ -34,7 +34,7 @@ public class SignListener implements Listener {
public void onInteract(PlayerInteractEvent event) { public void onInteract(PlayerInteractEvent event) {
Player player = event.getPlayer(); Player player = event.getPlayer();
if (event.getAction() == Action.RIGHT_CLICK_BLOCK) { if (event.getAction() == Action.RIGHT_CLICK_BLOCK) {
if (PlayerVaults.getInstance().getInVault().containsKey(player.getName())) { if (PlayerVaults.getInstance().getInVault().containsKey(player.getUniqueId().toString())) {
Block block = event.getClickedBlock(); Block block = event.getClickedBlock();
// Different inventories that we don't want the player to open. // Different inventories that we don't want the player to open.
if (block.getType() == Material.CHEST || block.getType() == Material.TRAPPED_CHEST || block.getType() == Material.ENDER_CHEST || block.getType() == Material.FURNACE || block.getType() == Material.BURNING_FURNACE || block.getType() == Material.BREWING_STAND || block.getType() == Material.ENCHANTMENT_TABLE || block.getType() == Material.BEACON) { if (block.getType() == Material.CHEST || block.getType() == Material.TRAPPED_CHEST || block.getType() == Material.ENDER_CHEST || block.getType() == Material.FURNACE || block.getType() == Material.BURNING_FURNACE || block.getType() == Material.BREWING_STAND || block.getType() == Material.ENCHANTMENT_TABLE || block.getType() == Material.BEACON) {
@@ -107,9 +107,9 @@ public class SignListener implements Listener {
player.openInventory(inv); player.openInventory(inv);
} }
} }
PlayerVaults.getInstance().getInVault().put(player.getUniqueId().toString(), new VaultViewInfo((self) ? player.getName() : owner, num)); PlayerVaults.getInstance().getInVault().put(player.getUniqueId().toString(), new VaultViewInfo(self ? player.getUniqueId() : offlinePlayer.getUniqueId(), num));
event.setCancelled(true); event.setCancelled(true);
player.sendMessage(Lang.TITLE.toString() + Lang.OPEN_WITH_SIGN.toString().replace("%v", String.valueOf(num)).replace("%p", (self) ? player.getName() : owner)); player.sendMessage(Lang.TITLE.toString() + Lang.OPEN_WITH_SIGN.toString().replace("%v", String.valueOf(num)).replace("%p", owner));
} else { } else {
player.sendMessage(Lang.TITLE.toString() + Lang.NO_PERMS); player.sendMessage(Lang.TITLE.toString() + Lang.NO_PERMS);
} }