diff --git a/bukkit/src/main/java/me/lucko/luckperms/users/BukkitUser.java b/bukkit/src/main/java/me/lucko/luckperms/users/BukkitUser.java index 5f1edd884..377a8d784 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/users/BukkitUser.java +++ b/bukkit/src/main/java/me/lucko/luckperms/users/BukkitUser.java @@ -72,7 +72,14 @@ public class BukkitUser extends User { } // Calculate the permissions that should be applied. This is done async, who cares about how long it takes or how often it's done. - Map toApply = getLocalPermissions(getPlugin().getConfiguration().getServer(), plugin.getUserManager().getWorldCache().get(getUuid()), null); + Map toApply = exportNodes( + getPlugin().getConfiguration().getServer(), + plugin.getUserManager().getWorldCache().get(getUuid()), + null, + plugin.getConfiguration().getIncludeGlobalPerms(), + true, + plugin.getPossiblePermissions() + ); try { // The map in the LP PermissionAttachment is a ConcurrentHashMap. We can modify it's contents async. diff --git a/common/src/main/java/me/lucko/luckperms/core/PermissionHolder.java b/common/src/main/java/me/lucko/luckperms/core/PermissionHolder.java index d3c02c13b..39bbc5ba9 100644 --- a/common/src/main/java/me/lucko/luckperms/core/PermissionHolder.java +++ b/common/src/main/java/me/lucko/luckperms/core/PermissionHolder.java @@ -228,8 +228,8 @@ public abstract class PermissionHolder { Map perms = new HashMap<>(); for (Node node : getAllNodesFiltered(server, world, extraContext, includeGlobal, applyGroups)) { - if (plugin.getConfiguration().getApplyWildcards()) { - if (node.getPermission().equals("*") || node.getPermission().equals("'*'")) { + if (node.getPermission().equals("*") || node.getPermission().equals("'*'")) { + if (possibleNodes != null && plugin.getConfiguration().getApplyWildcards()) { possibleNodes.forEach(n -> perms.put(n, true)); continue; }